Professional Documents
Culture Documents
vMetode Akses
Sequential Access File Direct Access File Lain-lain
Konsep File
v File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage v Tipe: Data (character, numeric, binary) Program
Atribut File
vNama vTipe vLokasi vUkuran vWaktu pembuatan dan identitas pembuat vProteksi vInformasi lain tentang file
Tipe File
Struktur File
v
Sistem operasi membutuhkan struktur file tertentu untuk menjalankan/ mengakses suatu file. Semua sistem operasi diharuskan mampu mengenal sedikitnya satu jenis struktur file. Jika sistem operasi mengenal semakin banyak struktur file, maka semakin luas aplikasi yang dapat dijalankan namun ukuran sistem operasi semakin membengkak. Sebaliknya, jika semakin sedikit struktur file, maka sistem operasi hanya dapat menjalankan aplikasi dalam jumlah yang sedikit pula.
Metode Akses
vSequential Access
read next write next reset no read after last write (rewrite)
vDirect Access
read n write n position to n read next write next rewrite n
n = relative block number
Sangat berguna untuk pengaksesan langsung informasi dalam jumlah besar. Contoh : database File dilihat sebagai sederetan blok yang berindeks Relative block number digunakan agar memungkinkan sistem operasi untuk memutuskan dimana suatu file dapat ditempatkan, dan mencegah user untuk mengakses sebagian dari sistem file yang bukan merupakan bagian dari file miliknya
Metode akses lainnya dibangun/ dikembangkan berdasarkan direct access method. Biasanya melibatkan proses pembuatan indeks dari file. Untuk mencari suatu bagian dari file, pertama-tama cari indeksnya, kemudian dengan pointer tersebut kita mengakses file secara langsung, lalu mencari bagian dari file yang diinginkan.
Konsep Direktori
v Operasi pada Direktori v Struktur Direktori Single-Level Directory Two-Level Directory Tree-Structured Directory Acyclic-Graph Directory General-Graph Directory
Single-Level Directory
v Semua file terdapat dalam direktori yang sama v Tiap file memiliki nama yang unik
Sumber: Tanenbaum. Modern Operating System
Acyclic-Graph Directory
v Satu file dapat memiliki banyak absolut path yang berbeda v Masalah : Penghapusan dangling pointer v Solusi : Backpointers, agar kita dapat menghapus semua pointer. Backpointers menggunakan struktur daisy chain. Solusi entry-hold-count.
Mount Point
Proteksi
vFungsi:
Menjaga aman dari kerusakan fisik (reliability). Menjaga dari akses yang tidak diijinkan (protection).
Tipe Akses
vBaca vTulis vEksekusi vMenambah vHapus vDaftar
Contoh Implementasi
19 rw-rwxr-- john staff 100 Oct 20 22:12 journal
v Skema UNIX sistem kontrol. v Terbagi dalam 3 fields masing-masing terdiri dari 3 bits. v r mengontrol akses baca, w mengontrol akses tulis, dan x mengontrol akses eksekusi.
vImplementasi Direktori
Linear List Hash Table
v Cooked (berisi file system) v Sebuah bisa memiliki beberapa partisi yang masingmasing mengandung file system dan sistem operasi yang berbeda
Asumsi
vStandar ini menggunakan fitur-fitur dasar yang ditemukan pada sebagian besar UNIX file system.
Struktur Direktori
v "/ direktori root v /bin perintah binari esensial v /boot file statis dari boot loader v /dev device files v /etc konfigurasi sistem host-specific v /lib shared libraries essential dan modul kernel v /mnt mount point untuk me-mount suatu file system sementara v /opt tambahan paket aplikasi piranti lunak v /sbin sistem binari esensial v /tmpfile sementara v /usr secondary hierarchy v /var data variabel
/bin (1)
v /bin mengandung perintah-perintah yang dapat digunakan baik itu oleh sistem administrasi dan oleh users. Dapat juga mengandung perintah-perintah yang dipakai secara tidak langsung oleh scripts. v Tidak boleh ada sub-direktori di /bin
/bin (2)
vBerikut merupakan perintah dalam /bin
cat chgrp chmod chown group cp date dd df dmesg echo perintah untuk mengkonkatenasi file perintah untuk mengubah kepemilikan file group perintah untuk mengubah ijin akses file perintah untuk mengubah kepemilikan file dan perintah untuk mengcopy file dan direktori perintah untuk mencetak waktu sistem perintah untuk men-convert dan meng-copy file perintah untuk melaporkan penggunaan ruang disk perintah untuk mencetak pesan kernel perintah untuk menampilkan sebaris teks
v/bin (3)
kill perintah untuk mengirim signal ke process login perintah untuk memulai masuk ke dalam sistem ls perintah untuk mendaftar isi direktori mkdir perintah untuk membuat direktori baru more perintah untuk melihat halaman per halaman mount perintah untuk mount file system mv perintah untuk memindahkan/rename file pwd perintah untuk mencetak nama direktori yg sedang aktif rm perintah untuk menghapus file atau direktori rmdir perintah untuk menghapus direktori kosong su perintah untuk berganti user ID umount perintah untuk unmount filesystem uname perintah untuk mencetak informasi sistem
/boot
v Direktori ini mengandung semua yang diperlukan untuk proses boot kecuali konfigurasi file dan map installer. /boot menyimpan data yang digunakan sebelum kernel mulai mengeksekusi program user-mode. /boot juga berisi sektor saved master boot, sektor map files, dan data lain yang tidak di-edit langsung dengan tangan.
/dev
v/dev adalah lokasi dari suatu file khusus piranti keras.
/etc
v/etc mengandung konfigurasi file dan direktori yang spesifik ke current system vTidak ada binari yang bolah diletakkan di bawah /etc
/home
v/home adalah suatu konsep standar, tetapi juga merupakan site-specific file system.
/lib
v /lib adalah direktori yang mengandung shared library image yang diperlukan untuk mem-boot sistem dan menjalankan perintah dalam root file system, contoh: dengan binari dalam /bin dan /sbin
/mnt
v Direktori ini disediakan agar sistem administrasi bisa secara sementara me-mount filesystem sesuai dengan yang dibutuhkan. Isi dari direktori ini adalah isu lokal dan tidak boleh mempengaruhi manner dimana program sedang berjalan. v Direktori ini tidak boleh digunakan untuk instalasi program: direktori sementara yang tepat, yang sedang tidak digunakan oleh sistem, harus digunakan.
/opt
v /opt disediakan untuk instalasi dari tambahan untuk paket aplikasi piranti lunak. v Paket yang akan diinstalasi di /opt harus menempatkan file statis di direktori tree /opt/<paket> yang berbeda, dimana <paket> adalah nama yang mendeskripsikan paket piranti lunak.
/sbin
v Utilitas yang digunakan untuk sistem administrasi (dan perintah root-only yang lain) disimpan di /sbin/, /usr/sbin, dan /usr/local/sbin. /sbin mengandung binari esensial untuk boot, meyimpan kembali, mengembalikan seperti semula, dan/atau membetulkan sistem dalam penambahan ke binari dalam /bin.
/tmp
v Direktori /tmp harus dibuat siap pakai untuk program yang membutuhkan file sementara. v Program tidak boleh berasumsi bahwa file atau direktori dalam /tmp disediakan diantara invokasi dari program.
/usr (1)
v /usr adalah second major section file system. /usr adalah data read-only yang dapat digunakan bersama-sama. Hal ini menandakan bahwa /usr harus bisa dipakai bersamasama oleh various FHS-compliant hosts dan tidak boleh ditimpa. Informasi yang host-specific atau bervariasi dengan waktu disimpan dimana saja. v Paket piranti lunak besar tidak boleh menggunakan subdirektori langsung di bawah hierarki /usr.
/usr (2)
vDirektori di bawah ini atau penghubung simbolik direktori, diperlukan di /usr.
"/usr Hierarki kedua" bin perintah yang paling sering digunakan user include header files termasuk dalam program berbasis C lib perpustakaan local hierarki lokal (kosong setelah instalasi awal) sbin sistem binari yang non-vital share data architecture-independent
/var (1)
v /var berisi variabel file data. Variabel file data ini mengandung direktori spool dan file, administratif dan logging data, dan file sementara. v Beberapa bagian dari /var tidak bisa digunakan bersama antara sistem yang berbeda. Contohnya, /var/log, /var/lock, dan /var/run. Bagian lain mungkin ada yang bisa dipakai bersama-sama, yang dapat dilihat /var/mail, /var/cache/man, /var/cache/fonts, dan /var/spool/news. v /var dispesifikasi agar memungkinkan untuk me-mount user read-only. Semuanya yang mula-mula dimasukkan ke dalam /usr yang ditulis selama sistem operasi (kebalikan dari instalasi dan pemeliharaan piranti lunak) harus terletak di /var.
/var (2)
vDirektori berikut ini, atau penghubung simbolik ke direktori, diperlukan di /var
"/var cache lib local lock log opt run spool tmp "Variabel data" aplikasi data cache variable status informasi variabel data untuk /usr/local mengunci file log file dan direktori Variabel data untuk /opt data yang relevan dengan proses yang berjalan aplikasi data spool file sementara
Metode Alokasi
v Untuk mengalokasikan file agar dapat diakses dengan cepat dan disk dapat dimanfaatkan secara efektif v Metode yang sering digunakan ialah: Contiguous allocation Linked allocation Indexed allocation
Contiguous Allocation
v Sebuah file didefinisikan oleh alamat disk (mendefinisikan urutan linier dari disk) dan panjangnya (dalam satuan blok) dari blok pertama v Contiguous allocation mendukung pengaksesan secara sekuensial dan juga pengaksesan secara langsung
Linked Allocation
v Direktori mengandung sebuah pointer untuk blok pertama dan blok terakhir dari sebuah file v Setiap blok mengandung sebuah pointer untuk ke blok selanjutnya (tidak dapat di buat oleh user) v External fragmentation tidak terjadi di metode ini v Efektif saat file diakses secara sequential
Indexed Allocation
v Pointer digabungkan didalam suatu blok yang dinamakan blok indeks v Setiap file memiliki blok indeks masing-masing v Direktori mengandung alamat dari blok indeks
Linked Scheme
v Mekanisme ini dapat menghubungkan beberapa blok indeks v Jika pointer tidak muat dalam satu blok indeks, maka pointer terakhir dari blok indeks ini menunjukkan blok indeks yang memuat pointer selanjutnya v Jika pointer hanya membutuhkan satu blok indeks saja, maka pointer terakhir dari blok indeks ini adalah null
Multilevel Index
v Blok indeks pada level pertama akan menunjukkan blokblok indeks pada level kedua yang akan menunjuk ke alamat data v Ini dapat diteruskan ke level ketiga atau level keempat tergantung dari jumlah data yang dibutuhkan
Manajemen Ruang-Kosong
vBit Vector vLinked List vGrouping vCounting
Bit Vector
v Daftar ruang kosong diimplementasikan sebagai bit map atau bit vector v Setiap bit merepresentasikan 1 blok. Jika bit tersebut bernilai 1 maka blok tersebut kosong. Dan bernilai 0 untuk sebaliknya. v Bit pertama untuk blok pertama, bit kedua untuk blok kedua, dst
Grouping
v Metode ini hampir sama dengan mekanisme linked scheme dari metode indexed allocation, tapi pointer-nya menunjukkan alamat blok yang kosong dan pointer terakhir akan menunjukkan ke blok selanjutnya yang mengandung pointer
Counting
v Metode ini mempunyai direktori yang menyimpan awal dan panjang seperti contiguous allocation untuk file-file yang masih kosong
Recovery (Pemulihan)
v Pemeliharaan harus dijalankan untuk memastikan kegagalan sistem tidak akan terjadi saat kehilangan data atau saat data tidak konsisten v Ada 2 jenis pemulihan: Pengecekan yang kontinu Backup and Restore
NFS
v NFS adalah implementasi dan spesifikasi dari sistem perangkat lunak untuk mengakses files remote melalui LANs Overview Mount Protocol NFS Protocol Path-Name Translation Remote Operations
Overview
v NFS memperlihatkan suatu set interconnected workstations sebagai suatu set dari mesin yang berdiri sendiri dengan file system yang berdiri sendiri v Tujuannya untuk mengikuti beberapa tingkatan dari pembagian antara file-file sistem dengan cara yang transparan
Mount Protocol
vMount Protocol membuat hubungan inisial yang logic antara suatu server dan pengguna
NFS Protocol
v NFS Protocol menyediakan suatu set dari RPCs untuk operasi remote file v Prosedur mendukung operasi-operasi ini: Mencari file di dalam direktori Membaca suatu set direktori entri Memanipulasi links dan direktori Mengakses atribut file Membaca dan menulis files
Path-Name Translation
v Ini dapat diselesaikan dengan memecah jejak ke namanama komponen dan menunjukkan NFS lookup call yang terpisah untuk setiap pasang nama komponen dan vnode direktori