Implementasi Sistem
Berkas
Struktur Sistem
Berkas
Disk
yang
merupakan tempat terdapatnya sistem berkas menyediakan sebagian besar tempat
penyimpanan dimana sistem berkas akan dikelola. Disk memiliki dua
karakteristik penting yang menjadikan disk sebagai media yang tepat
untuk menyimpan berbagai
macam berkas,
yaitu:
· Data dapat
ditulis ulang di disk tersebut, hal ini memungkinkan untuk membaca,
memodifikasi,
dan menulis di disk tersebut.
· Dapat diakses
langsung ke setiap blok di disk. Hal ini memudahkan untuk
mengakses setiap
berkas baik secara berurut maupun tidak berurut, dan berpindah
dari satu berkas
ke berkas lain dengan hanya mengangkat head disk dan
menunggu disk
berputar.
Disk
Organization
Untuk
meningkatkan efisiensi I/O, pengiriman data antara memori dan disk dilakukan
dalam setiap blok. Setiap blok merupakan satu atau lebih sektor. Setiap disk
memiliki ukuran yang berbeda-beda, biasanya berukuran 512 bytes.
Sistem operasi
menyediakan sistem berkas agar data mudah disimpan, diletakkan dan diambil
kembali dengan mudah. Terdapat dua masalah desain dalam membangun suatu sistem
berkas. Masalah pertama adalah definisi dari sistem berkas. Hal ini mencakup definisi
berkas dan atributnya, operasi ke berkas, dan struktur direktori dalam mengorganisasikan
berkas-berkas. Masalah kedua adalah membuat algoritma dan struktur data yang
memetakan struktur logikal sistem berkas ke tempat penyimpanan sekunder.
Sistem berkas
dari sistem operasi yang sudah modern diimplementasikan dengan
menggunakan
struktur berlapis. Keuntungan struktur berlapis ini adalah fleksibilitas yang dimilikinya.
Penggunaan dari struktur berlapis ini memungkinkan adanya implementasi yang
lebih dari satu secara bersamaan, terutama pada I/O Control dan
tingkatan
organisasi
berkas. Hal ini memungkinkan untuk mendukung lebih dari satu implementasi sistem
berkas.
Lapisan struktur
sistem berkas menghubungkan antara perangkat keras dengan aplikasi program yang
ada, yaitu (dari yang terendah):
· I/O control, terdiri atas driver
device dan interrupt handler. Driver device adalah
perantara
komunikasi antara sistem operasi dengan perangkat keras. Input
didalamnya
berisikan perintah tingkat tinggi seperti "ambil blok 133", sedangkan
output-nya adalah
perintah tingkat rendah, instruksi spesifik perangkat keras yang
digunakan oleh controller
perangkat keras.
· Basic file
system,
diperlukan untuk mengeluarkan perintah generic ke device
driver untuk read dan
write pada suatu blok dalam disk.
· File-organization
module,
informasi tentang alamat logika dan alamat fisik dari
berkas tersebut.
Modul ini juga mengatur sisa disk dengan melacak alamat yang
belum
dialokasikan dan menyediakan alamat tersebut saat pengguna ingin
menulis berkas
ke dalam disk. Di dalam File-organization module juga terdapat
free- space
manager.
· Logical
file-system,
tingkat ini berisi informasi tentang simbol nama berkas,
struktur dari
direktori, dan proteksi dan sekuriti dari berkas tersebut. Sebuah File
Control Block (FCB) menyimpan
informasi tentang berkas, termasuk
kepemilikan, izin
dan lokasi isi berkas.
Di bawah ini
merupakan contoh dari kerja struktur berlapis ini ketika suatu program mau
membaca
informasi dari disk. Urutan langkahnya:
1. Application
program memanggil sistem berkas dengan system call.
Contoh:
read (fd, input, 1024) akan membaca section sebesar 1 Kb dari disk
dan menempatkannya ke variabel input.
2. Diteruskan ke
system call interface.
System
call merupakan software interrupt. Jadi, interrupt handler sistem
operasi akan memeriksa apakah system call yang menginterupsi. Interrupt
handler ini akan memutuskan bagian dari sistem operasi yang bertanggung
jawab untuk
menangani system
call. Interrupt handler akan meneruskan system call.
3. Diteruskan ke
logical file system.
Memasuki
lapisan sistem berkas. Lapisan ini menyediakan system call, operasi
yang akan
dilakukan dan jenis berkas. Yang perlu ditentukan selanjutnya adalah
file
organization module yang
akan meneruskan permintaan ini. File organization
module yang akan
digunakan tergantung dari jenis sistem berkas dari berkas yang
diminta.
Contoh: Misalkan
kita menggunakan LINUX dan berkas yang diminta ada di
Windows 95.
Lapisan logical file system akan meneruskan permintaan ke file
organization
module dari
Windows 95.
4. Diteruskan ke
file organization module.
File
organization module yang
mengetahui pengaturan (organisasi) direktori dan berkas pada disk.
Sistem berkas yang berbeda memiliki organisasi yang berbeda. Windows 95 menggunakan VFAT-32.
Windows NT menggunakan format NTFS. Linux menggunakan EXT2. Sistem operasi yang
paling modern memiliki beberapa file organization module sehingga
dapat membaca format yang berbeda.
Pada contoh di
atas, logical file system telah meneruskan permintaan ke file
organization
module VFAT32.
Modul ini menterjemahkan nama berkas yang
ingin dibaca ke
lokasi fisik yang biasanya terdiri dari disk antarmuka, disk drive,
surface, cylinder,
track, sector.
5. Diteruskan ke
basic file system.
Dengan
adanya lokasi fisik, kita dapat memberikan perintah ke piranti keras yang dibutuhkan.
Hal ini merupakan tanggungjawab basic file system. Basic file system
ini juga memiliki kemampuan tambahan seperti buffering dan caching.
Contoh: Sektor
tertentu yang dipakai untuk memenuhi permintaan mungkin saja
berada dalam buffers
atau caches yang diatur oleh basic file system. Jika terjadi
hal seperti ini,
maka informasi akan didapatkan secara otomatis tanpa perlu
membaca lagi
dari disk.
6. I/O
Control
Tingkatan
yang paling rendah ini yang memiliki cara untuk
memerintah/memberitahu
piranti keras yang diperlukan.
Tidak ada komentar:
Posting Komentar