IMPLEMENTASI DIREKTORI
Implementasi
direktori menggunakan daftar nama file linier dengan pointer ke blok data.
Hal ini berdampak pada pemrograman yang mudah tetapi memerlukan waktu yang
lama untuk eksekusi. Untuk mempercepat waktu eksekusi digunakan Tabel Hash
berupa daftar linier dengan struktur data hash. Dengan struktur data hash
akan mengurangi waktu pencarian direktori. Tetapi struktur hash mempunyai
resiko bertabrakan apabila terjadi situasi dimana dua nama file hash yang
berbeda berada pada lokasi yang sama. Struktur hash berukuran tetap.
METODE
ALOKASI
Metode
alokasi berhubungan dengan bagaimana blok-blok pada disk dialokasikan
untuk file. Terdapat beberapa metode alokasi antara lain alokasi
berurutan (contiguous allocation), alokasi berhubungan (linked
allocation) dan alokasi berindeks (indexed allocation).
Alokasi
Berurutan (Contiguous Allocation)
Pada alokasi berurutan, setiap file menempati
sekumpulan blok yang berurutan pada disk. Model ini sangat sederhana
karena hanya membutuhkan lokasi awal (block #) dan panjang (jumlah blok).
Akses pada blok disk dilakukan secara random dan memakan banyak ruang
(permasalahan dynamic storage allocation). File yang disimpan secara
berurutan tidak dapat berkembang.
Beberapa
sistem file yang baru (misalnya Veritas File System) menggunakan skema
alokasi berurutan yang dimodifikasi. File sistem Extent-based
mengalokasikan blok pada disk secara berkembang (extent). Extent
adalah blok berurutan pada disk. Extent dialokasikan untuk
alokasi file. Sebuah file terdiri dari satu atau lebih extent.
Alokasi
Berhubungan (Linked Allocation)
Pada alokasi berhubungan, setiap file adalah sebuah linked list dari blok-blok terpisah pada disk. Pada setiap blok terdapat satu pointer yang menunjuk ke blok lain.
block =
Pada alokasi berhubungan, setiap file adalah sebuah linked list dari blok-blok terpisah pada disk. Pada setiap blok terdapat satu pointer yang menunjuk ke blok lain.
block =
Alokasi
berhubungan mempunyai bentuk yang sederhana, hanya memerlukan alamat awal.
Sistem manajemen ruang bebas pada alokasi berhubungan tidak memakan banyak
ruang. Model ini tidak menggunakan random access. Blok yang diakses
adalah blok ke-Q pada rantai link dari blok pada file. Perpindahan
ke blok = R + 1. Contoh sistem file yang menggunakan alokasi
berhubungan adalah file allocation table (FAT) yang digunakan MS-DOS dan
OS/2. Bentuk file allocation tabel
Alokasi
Berindeks (Indexed Allocation)
Pada alokasi berindeks, terdapat satu blok yang berisi
pointer ke blok-blok file. Alokasi berindeks berupa bentuk logika.
Pada alokasi
berindeks, memerlukan tabel indeks yang membawa pointer ke blok-blok file
yang lain. Akses dilakukan secara random. Merupakan akses dinamis tanpa
fragmentasi eksternal, tetapi mempunyai blok indeks yang berlebih.
Pemetaan dari logika ke fisik dalam file ukuran maksimum 256K word dan
ukuran blok 512 word hanya memerlukan 1 blok untuk tabel
indeks. Apabila pemetaan dari logika ke fisik dalam sebuah file dari
ukuran tak hingga (ukuran blok adalah 512 word) maka digunakan skema menghubungkan
blok link dari tabel indeks (ukuran tak terbatas). Untuk ukuran file
maksimum 5123 digunakan skema two-level indeks (Gambar 10-8). Pada skema
two-level indeks terdapat tabel indeks luar dan dalam. Indeks dipetakan ke
tabel indeks luar kemudian dipetakan ke tabel indeks dalam setelah itu
mengakses blok file yang dimaksud. Sistem operasi UNIX mengimplementasikan
kombinasi alokasi berurutan dan alokasi berindeks
Keunggulan
dari file system UNIX dan WINDOWS :
- Sistem berkas UNIX lebih hebat dan mudah diatur daripada Windows (DOS).
- Pada system Windows, nama diubah menjadi nama yang lebih mudah bagi para pengguna. Contohnya nama folder dalam adalah perubahan dari directory yang masih digunakan oleh UNIX. Penggunaan back slash (\) digunakan untuk memisahkan direktori – diretori dalam Windows. Sedangkan pada UNIX menggunakan case sensitive, yang artinya nama suatu berkas yang sama jika dibaca, tetapi penulisan namanya berbeda dalam hal ada satu file yang menggunakan huruf kapital dalam penamaan dan satu tidak akan berbeda dalam UNIX. Contohnya ada berkas bernama berkasdaku.txt dan berkasDaku.txt. Jika dibaca nama berkasnya sama tetapi dalam UNIX ini merupakan dua berkas yang jauh berbeda. Jika berkas – berkas ini berada dalam system Windows, mereka menunjuk ke berkas yang sama. Ini berarti Windows tidak case sensitive.
- UNIX tidak menggunakan drive letter seperti C:, D: dalam Windows. Tetapi semua partisi dan drive ekstra di mount di dalam sub-direktori di bawah diretori root. Ini tidak membuat penguna bingung menentukan letak berkas yang berada di drive letter mana.
REFERENSI