Sistem file menyediakan mekanisme untuk menyimpan dan mengakses informasi dalam bentuk file yang terstruktur secara hirarkis dalam direktori. File merupakan kumpulan informasi terkait yang dipetakan ke penyimpanan sekunder oleh sistem file, yang menyediakan konsep file yang logis dan independen dari perangkat keras.
1. • 1 File Systems
• 12.1 PENDAHULUAN
• Disk digunakan sebagai media penyimpanan utama untuk
informasi. Sistem file menyediakan mekanisme yang mudah
digunakan
• untuk menyimpan dan mengambil data dan program dari media ini.
Padahal, file tersebut digunakan sebagai koleksi yang terkait
• informasi, arti yang didefinisikan oleh penciptanya. File-file ini
dipetakan ke disk atau lainnya
• media penyimpanan oleh OS. File sendiri diatur dalam bentuk
direktori. Bab ini membahas
• file dan konsep sistem file, beserta rincian tentang struktur internal
file dan direktori
Oleh : Herdi Ariyudi
2. 12.2 FILES DAN SISTEM FILE
File adalah hal yang paling jelas digunakan di komputer. Melalui
Penggunaan file, lingkungan yang nyaman dibuat yang memungkinkannya
untuk menulis, membaca, menyimpan, dan mengambil program dan data apapun
jenis media penyimpanan Selain itu, konsep file ini independen
jenis perangkat Dengan kata lain, pengguna atau programmer tidak perlu
khawatir tentang kerumitan hardware perangkat sementara
menulis sebuah program atau data dalam sebuah file. Sebuah file, dengan demikian, adalah kumpulan
informasi terkait yang dipetakan ke penyimpanan sekunder.
Informasi yang tersimpan dalam file ada dalam bit, bytes, lines, atau records,
dan seterusnya. Makna konten ditentukan oleh penciptanya.
Namun, sebagai konsep logis, file tidak disimpan di permanent media Oleh karena itu, setelah menyimpan semua pekerjaan,
diperlukan sebuah file dipetakan ke perangkat penyimpanan. Ini adalah latar belakang kerja
yang tidak dilihat oleh pengguna. Pengguna hanya melihat tampilan logis dari
file. Sistem memandang semua pekerjaan yang dibutuhkan untuk memetakan logis
file ke penyimpanan sekunder Dengan kata lain, sebuah file digunakan untuk menyimpan
program dan data pada secondary storage. Manfaat storFile ing pada secondary storage adalah fasilitas yang disediakan oleh file
sistem: membuat, menyimpan, dan mengambil informasi dalam bentuk file OS abstrak penyimpanan aktual program dan data
dari pengguna, dan menyediakan konsep file yang logis dan nyaman. Seorang pengguna mungkin ingin beberapa file bisa dibagikan
di antara anggota dari sebuah kelompok Sistem file juga menyediakan sharing file secara eksplisit kapan pengguna mau File bisa
diatur menurut cara mereka diakses, misalnya berurutan, langsung, dan sebagainya. Bahkan
mereka mungkin terstruktur secara hirarkis. Dengan demikian, file organisasi dan struktur juga
konstituen dari sistem file. Berikut ini adalah unsur utama dari sebuah sistem berkas:
• Manajemen file
Ini mengatur bagaimana file disimpan, dirujuk, dibagi, dan diamankan.
• Alokasi File
Ini menyediakan metode untuk mengalokasikan file pada ruang disk.
• Metode Akses File
Ini menyediakan metode untuk mengakses file yang tersimpan.
3. 12.3 STRUKTUR FILE
Elemen dasar data, field, adalah item bernilai tunggal, misalnya nama, tanggal, ID
karyawan, dan seterusnya. Jelas, ini ditandai dengan panjang dan tipe data. Saat
beberapa bidang berada dikombinasikan untuk membentuk koleksi yang berarti, itu
dikenal sebagai catatan. Misalnya, murid informasi (lihat Gambar 12.1) bisa menjadi satu
catatan, terdiri dari bidang seperti nomor gulungan, nama,kualifikasi, dan sebagainya.
Saat rekaman serupa dikumpulkan, file tersebut dikenal sebagai file. File telah
juga nama yang mirip dengan field atau record. Dengan demikian, file diperlakukan
sebagai satu kesatuan yang bisa digunakan oleh programmer atau aplikasi
File juga bisa rata dalam bentuk urutan byte yang tidak terstruktur, yaitu strukturnya
tidak ada bidang atau catatan Jadi, sebuah file, yang terdiri dari byte, tidak memiliki
bidang atau catatan, dan dipandang sebagai urutan byte oleh program yang
menggunakannya. UNIX dan Windows menggunakan jenis struktur file ini.
Kendati demikian, OS harus mendukung struktur yang dibutuhkan untuk jenis file
tertentu. Sebagai contoh, sebuah file eksekusi harus memiliki struktur yang ditentukan,
sehingga OS dapat menentukan lokasi dalam memori untuk memuat file dan menemukan
instruksi pertama yang akan dieksekusi. Beberapa dukungan OS struktur file tunggal, tapi
mungkin juga memilih beberapa struktur file. Dalam kasus terakhir, ukurannya dari OS
meningkat, karena perlu mendukung beberapa struktur file.
Oleh : Herdi Ariyudi
4. 12.3.1 Struktur Internal dan Pemblokiran Catatan
Menemukan offset dalam file logis mungkin sulit dilakukan pada sebuah OS. Karena file
logisnya akan dipetakan ke penyimpanan sekunder, lebih baik mendefinisikan struktur
internal file secara istilah dari unit penyimpanan sekunder. Secara umum, disk
digunakan untuk penyimpanan sekunder dan karenanya, blok adalah unit yang diambil
untuk penyimpanan. Unit blok perlu dipetakan ke struktur file logis demikian juga.
Sebagai contoh, file dianggap sebagai aliran byte di UNIX. Setiap byte dalam file dapat
ditemukan memiliki alamat awal file. Perhatikan ukuran record yang logis sebagai 1
byte. Sekarang, asumsikan pengepakan beberapa byte atau catatan dalam file ke dalam
blok disk. Misalnya, Kelompok 512 byte ini dikemas dalam satu blok disk. Dengan cara
ini, sebuah file dapat dianggap sebagai urutan blok, dan oleh karena itu, semua fungsi
dasar I / O dilakukan dalam bentuk blok. Ini dikenal sebagai record blocking. Semakin
besar ukuran blok, semakin banyak jumlah record dipetakan ke blok disk. Pada
gilirannya, jumlah byte yang lebih besar akan ditransfer dalam satu I / O operasi. Ini
lebih menguntungkan, jika file dicari secara berurutan, dengan demikian mengurangi
jumlah operasi I / O juga.
Masalah lain tentang pemblokiran catatan adalah apakah blok harus berukuran tetap
atau variabel.
Berdasarkan masalah ini, ada tiga metode pemblokiran (lihat Gambar 12.2):
Oleh : Herdi Ariyudi
5. Pemblokiran tetap
Dalam pemblokiran ini, rekaman berukuran tetap digunakan. Oleh karena itu, mungkin ada
ketidakcocokan antara ukuran rekaman dan blok, membiarkan beberapa tidak terpakai
ruang di blok terakhir Hal ini menyebabkan fragmentasi internal. Pada Gambar 12.2 (a),
R1, R2, dan R3 sesuai dengan blok tetap namun R4 tidak, sehingga menyisakan beberapa ruang
blok terakhir Ruang boleh dibiarkan tidak terpakai, jika tidak ada cukup ruang
untuk mengalokasikan blok di akhir trek ruang disk, seperti yang ditunjukkan pada
angka. Metode ini menguntungkan bila file berurutan digunakan
Pemblokiran Spasi Panjang Variabel
Dalam pemblokiran ini, catatan panjang variabel dapat dianggap sebagai pengganti ukuran tetap. Karena itu,
beberapa
catatan bisa lebih dari satu blok dalam kelanjutannya. Itu terjadi ketika satu blok lebih kecil
ukurannya dibandingkan dengan ukuran record. Dalam kasus ini, catatan, setelah mengkonsumsi blok ini, mungkin
lanjutkan di blok lain Sebagai contoh, R3 mencakup dua blok berukuran variabel pada Gambar 12.2 (b). Ini
Metode pemblokiran tidak akan menyebabkan fragmentasi.
Pemblokiran tak berujung panjang tanpa batas
Dalam pemblokiran ini, catatan panjang variabel digunakan, namun pembentang tidak dipertimbangkan dalam
kasus
dari blok ukuran kecil. Blok berukuran kecil tidak digunakan, menyebabkan pemborosan ruang memori,
dan catatan dialokasikan ke blok yang lebih besar. Pada Gambar 12.2 (c), R3 tidak sesuai dengan yang kecil
blok dan oleh karena itu, dialokasikan ke blok berikutnya, yang lebih besar. Ini menyebabkan pemborosan
ruang blok
Oleh : Herdi Ariyudi
6. 12.4 FILE NAMING DAN FILE JENIS
File perlu diberi nama, sehingga pengguna dapat menyimpan dan mengambil informasi dari
penyimpanan
alat. Melalui nama sebuah file, pekerjaan yang tersimpan di disk, bisa dikenali
dan diambil dengan mudah, tanpa mengetahui rincian penyimpanan sebenarnya pada perangkat
keras. Ada
aturan untuk menamai file, yang mungkin berbeda dari satu sistem ke sistem lainnya. Beberapa sistem
membedakan
antara huruf besar dan huruf kecil, sementara beberapa tidak. Beberapa sistem mendukung
panjangnya
nama file selama 255 karakter Dalam beberapa konvensi penamaan file, beberapa karakter khusus
juga diperbolehkan
Secara umum, nama file memiliki dua bagian, dipisahkan oleh sebuah periode (.). Bagian pertama
adalah nama
file, yang ditentukan oleh pengguna, dan bagian kedua dikenal sebagai ekstensi. Bagian ekstensi
biasanya menunjukkan jenis file yang telah dibuat. Beberapa ekstensi telah ditunjukkan
pada Tabel 12.2. Bagian ekstensi umumnya terdiri dari tiga huruf, seperti pada MS-DOS. Terkadang
Mungkin ada dua atau lebih ekstensi dalam nama file seperti di UNIX.
OS harus mengenali jenis file, karena operasi yang dilakukan bergantung padanya
jenisnya Misalnya, file zip tidak bisa dicetak. Berdasarkan perpanjangan nama file, disana
adalah beberapa jenis file, seperti berikut ini:
Oleh : Herdi Ariyudi
7. • File kode sumber
Ini digunakan untuk menulis sebuah program dalam bahasa yang dipilih. Misalnya, program
bahasa C akan
dituliskan dalam sebuah file dengan nama filename.c, dimana nama filenya adalah nama
yang diberikan ke file tersebut oleh
user, tapi intinya dengan ekstensi sebagai .c. Hal ini diakui sebagai file program sumber,
hanya jika itu
memiliki ekstensi .c dalam nama filenya.
• File objek
Ini adalah format file berbasis kompilasi atau mesin berbasis file ketika file kode sumber telah
ada
berhasil dikompilasi Perpanjangannya mungkin .obj atau .o.
• File executable
Bila file objek telah terhubung dengan benar dan siap dijalankan, ini dikenal sebagai
executable
mengajukan. Ekstensinya mungkin .exe, .com, .bin, dll.
• File teks
Sebuah dokumen tingkat teks format umum dikenal sebagai file teks. Ekstensinya adalah .txt
atau .doc.
• Batch file
• Ini adalah file yang terdiri dari beberapa perintah yang akan dieksekusi dan diberikan
kepada juru bahasa perintah.
Ekstensinya adalah .bat.
8. • Arsipkan arsip
Ketika sekelompok file dikompres dalam satu file, file tersebut dikenal sebagai file arsip. Ini ekstensi
mungkin .zip, .rar, dan seterusnya.
• File multimedia
Ini adalah file yang berisi informasi audio atau video. Ekstensinya mungkin .mpeg, .mov, .mp3,
.jpg, dll.
Banyak jenis file lain mungkin juga ada saat ini, tergantung pada kebutuhan dan dukungannya
disediakan oleh OS. Tapi secara umum, file adalah dari jenis berikut:
• Reguler
File biasa berisi informasi pengguna. Struktur internal dari tipe file mungkin dari
tipe apapun, seperti yang kita diskusikan dalam struktur file. File biasa bisa berupa ASCII atau biner
mengetik. Keuntungan dari format ASCII adalah mereka dapat ditampilkan dan dicetak seperti apa adanya
bisa diedit, menggunakan text editor apapun. Di sisi lain, file biner harus memiliki internal
struktur, jika tidak, mereka tidak dapat ditampilkan atau dicetak dalam bentuknya yang benar.
• Direktori
Direktori adalah jenis file yang digunakan untuk mengatur daftar file dalam grup, yaitu mengatur file
file dalam sebuah hirarki File direktori adalah file biasa yang bisa dibaca oleh pengguna manapun, tapi tulislah
operasi hanya diperbolehkan dalam sistem file. File yang dibuat dimasukkan dalam direktori.
• Khusus
File khusus tidak berisi data namun menyediakan mekanisme yang memetakan perangkat fisik
nama file, yaitu, ini digunakan untuk mengakses perangkat I / O. Ada dua jenis file spesial
yaitu, karakter file khusus untuk memetakan perangkat serial I / O seperti terminal, printer, dan sebagainya,
dan blok perangkat khusus untuk memodelkan perangkat seperti disk.
Oleh : Herdi Ariyudi
9. 12.5 FILE ATTRIBUTES
Selain nama dan data, file memiliki atribut lain juga. Atribut ini juga berbeda dari sistem
ke sistem Tetapi beberapa atribut sangat umum di setiap sistem, misalnya data dan
waktu pembuatan sebuah file Beberapa tipe atribut adalah sebagai berikut:
• Informasi Umum
Beberapa atribut dari sebuah file bersifat umum misalnya. nama, jenis, lokasi, ukuran, waktu, dan tanggal
dari penciptaan.
• Atribut yang berhubungan dengan perlindungan
File mungkin diaktifkan dengan perlindungan akses. Pengguna tidak dapat mengaksesnya dengan cara mereka sendiri.
Sebelum mengakses, mereka harus mengetahui hak aksesnya, misalnya membaca, menulis, dan mengeksekusi
izin. Password dari file dan pencipta / pemilik file juga berkontribusi terhadap perlindungan
atribut.
• Bendera
Beberapa bendera mengendalikan atau mengaktifkan beberapa properti spesifik dari file. Beberapa dari mereka
adalah:
i) Flag read-only: Digunakan untuk membuat file read-only. Ini adalah 0 untuk dibaca / tulis dan 1 untuk dibaca.
ii) Bendera tersembunyi: Ini digunakan untuk menyembunyikan file dalam daftar file. Sudah diatur untuk
menyembunyikan file tersebut,
Jika tidak, file akan ditampilkan.
iii) Bendera sistem: Digunakan untuk menunjuk file sebagai file sistem. Sudah diatur untuk membuat file sebuah
sistem
file, jika tidak, file tersebut adalah file yang normal.
iv) Arsip bendera: Ini digunakan untuk melacak apakah file telah didukung atau tidak. OS
set setiap kali sebuah file diubah Bendera adalah 0, ketika file yang telah diubah telah dicadangkan.
v) Access flag: Digunakan untuk menyampaikan bagaimana file diakses. Sudah diatur saat file diakses
Secara acak, jika tidak, file tersebut diakses secara berurutan.
• Waktu perubahan terakhir dan akses terakhir
Hal ini digunakan untuk memberikan informasi tentang kapan file tersebut terakhir diubah, dan kapan itu
terakhir diakses
10. 12.6 OPERASI FILE
Karena file adalah tipe data abstrak, jenis operasi yang bisa dilakukan di atasnya harus
dikenal. OS menyediakan sistem panggilan untuk setiap operasi yang akan diimplementasikan pada file. Itu
Berikut adalah beberapa operasi yang dilakukan pada sebuah file:
• Buat sebuah file
Ini adalah operasi pembuatan file. OS harus mencari ruang yang dibutuhkan untuk membuat file, dan
atribut terkait ditetapkan atau dibuat.
• Tulis sebuah file
Operasi tulis memerlukan nama file, dimana datanya harus ditulis. OS harus
memiliki pointer dalam file untuk membaca atau menulis. Ini dikenal sebagai pointer posisi saat ini. Jika
pointer ada di akhir file, ukuran file akan bertambah. Jika pointer berada di antara,
isi file tersebut ditimpa dengan data yang akan ditulis.
• Menyimpan file
Isi file harus disimpan pada disk. Untuk ini, OS harus mencari ruang
disk, lalu simpan. Entri yang sesuai di dalam direktori, tempat file dibuat, adalah
juga dilakukan
• Menghapus sebuah file
Bila file tidak dibutuhkan, maka file tersebut bisa terhapus. Sekarang, OS memiliki beberapa ruang kosong setelah
menghapusnya.
Entri dalam direktori juga dihapus.
Oleh : Herdi Ariyudi
11. • Buka file
Sebelum sebuah proses menggunakan file untuk operasi apapun, file tersebut harus dibuka terlebih dahulu. OS
menjemput
atribut dan daftar alamat disk ke memori utama untuk akses cepat untuk membuka file.
• Tutup sebuah file
File, bila tidak diperlukan, untuk akses apapun dapat ditutup. Operasi yang dekat membebaskan ingatan
ruang untuk atribut dan alamat disk, dan file diupdate pada disk. Tapi menutup sebuah file
tidak berarti menghapusnya, karena file belum dihapus dari disk. Sebuah proses
dapat membuka banyak file sekaligus, memakan ruang dalam memori. Oleh karena itu, batasnya ditaruh
sebuah proses untuk membuka beberapa file.
• Membaca sebuah file
Operasi baca juga membutuhkan nama file dan pointer, dari mana byte akan
dibaca. Penunjuk posisi saat ini dipertahankan untuk operasi ini juga. Setelah membaca
Data, pointer diupdate ke posisi dimana terakhir selesai dibaca.
• Tambahkan file
Ini adalah versi lain dari operasi menulis. Satu-satunya perbedaan di sini adalah bahwa menulis
operasi hanya dilakukan di akhir file. OS menempatkan akhir file, menggunakan
pointer, dan kemudian menambahkan data yang akan ditulis dalam file.
Sistem Berkas 403
• Reposisi posisi saat ini pointer
Penunjuk posisi saat ini digunakan untuk membaca dan menulis dalam file dapat direposisi ulang ke sembarang
posisi yang diinginkan. Sistem umum yang dipanggil untuk operasi ini adalah mencari di beberapa OS. Karena itu,
Hal ini juga dikenal sebagai operasi pencarian.
• Dapatkan / Setel atribut
Atribut sebuah file bisa dibaca, atau bahkan diubah oleh pengguna, jika perlu. Seorang pengguna mungkin perlu
untuk melihat kapan file itu terakhir diubah atau dibuat. Demikian pula, pengguna mungkin ingin mengubahnya
akses izin dari sebuah file Sistem panggilan dari OS membantu untuk mendapatkan / mengatur atribut dari sebuah
file.
12. 12.6.1 Implementasi Operasi File
Meski penerapan sistem berkas akan dibahas di bab selanjutnya, mari kita pergi saja
melalui dasar-dasarnya. Untuk melakukan operasi apapun pada file, file tersebut perlu dibuka. Pengikut
Struktur data digunakan untuk membuka file:
Buka File Table
Karena operasi terbuka mengambil atribut file yang akan dibuka, OS menggunakan data
struktur yang dikenal sebagai open file table (OFT), untuk menyimpan informasi dari file yang dibuka. Bila a
operasi perlu dilakukan pada file, itu ditentukan melalui indeks ke dalam tabel ini, dan karena itu,
itu tidak perlu dicari dalam entri direktori setiap waktu. OFT dipertahankan per proses
dasar, yaitu, ia memelihara detail dari setiap file yang dibuka oleh sebuah proses. OFT menyimpan atributnya
dari file yang dibuka Dengan demikian, setiap proses memiliki OFT untuk tujuan ini. OFT, per proses, mungkin
membantu di lingkungan, dimana beberapa proses membuka file secara bersamaan. OFT mempertahankan
sebuah counter yang dikenal sebagai open_count yang menyimpan hitungan file yang terbuka. Setiap
penambahan operasi terbuka
counter ini, dan sama-sama setiap operasi yang mendekati decrements counter ini. Ketika
counter mencapai nol, file tidak lagi digunakan, dan ditutup.
File Terbuka Sistem Terbuka
System-wide open file table (SOFT) adalah struktur data lain, yang digunakan untuk mempertahankan status
buka file, tapi berdasarkan sistem daripada prosesnya. Status file yang terbuka sekarang dihitung
untuk sistem Entri OFT menunjuk ke SOFT, di mana informasi proses-independen
tentang file yang terbuka dipertahankan, misalnya lokasi file pada disk, ukuran file, dan sebagainya. Demikian,
Begitu proses membuka file, file akan masuk ke OFT dan SOFT.
Alamat File pada Disk
Alamat file, di mana ia berada pada disk, mungkin diperlukan setiap kali file dibuka.
Oleh karena itu, untuk menghindari membaca alamat dari disk lagi dan lagi, alamatnya disimpan di
ingatan
13. 12.7 AKSES FILE
File yang tersimpan di disk harus diambil oleh pengguna. Tapi ada banyak cara
untuk mengakses file Akses file tergantung pada strategi pemblokiran pada disk dan logis
penataan catatan Berikut adalah beberapa metode akses file:
Akses File berurutan
File diakses secara berurutan, yaitu informasi dalam file diakses sesuai urutannya
disimpan dalam file Ini adalah metode akses yang sederhana dan umum digunakan. Akses sekuensial
hanya mungkin bila ada catatan panjang tetap yang terdiri dari rangkaian bidang tetap dalam
urutan tertentu. Ada bidang kunci, biasanya bidang pertama dalam catatan, yang sekuensial
ketertiban dipertahankan (lihat Gambar 12.3). Untuk membaca atau menulis di file seperti itu, sebuah
file pointer dipertahankan.
Kapan pun ada permintaan untuk membaca atau menulis operasi, posisi saat ini dari pointer file
terlihat, dan maju ke posisi berikutnya setelah membaca atau menulis operasi. Pointer bisa
reset ke awal file dengan menetapkan nilai nol padanya.
Akses berurutan dari sebuah file tidak sesuai untuk semua jenis aplikasi. Jika aplikasinya a
tipe batch dan perlu mengolah semua record, maka akses sekuensial adalah pilihan yang baik, seperti
itu
akan bermanfaat untuk proses batch. Di sisi lain, jika aplikasi bersifat interaktif
tipe, maka akses dan penambahan mungkin sulit. Akses file sekuensial memerlukan kecocokan yang
tepat
bidang kunci di setiap record, sehingga menghasilkan waktu dan delay yang cukup banyak, terutama
Bila ukuran file berurutan besar. File berurutan paling sesuai untuk akses sekuensial
perangkat, seperti kaset.
14. Indexed Sequential File Access
Pendekatan lain untuk mengakses file berurutan terindeks. Pada tipe ini, bidang kunci dipertahankan
Sama seperti akses file sekuensial, yaitu, catatan disusun secara berurutan, berdasarkan
bidang kunci Alih-alih menemukan rekaman secara berurutan, pendekatan akses acak diikuti di sini
dengan memasukkan sebuah indeks. Indeks menyimpan field kunci dan sebuah pointer pada file utama (lihat
Gbr.
12.4). Untuk menemukan bidang tertentu, indeks mencari nilai kunci tertinggi, sama dengan atau kurang
dari nilai yang diinginkan Pencarian dilanjutkan di file utama, setelah mendapatkan pointer dari
indeks. Dengan cara ini, indeks mengambil pointer ke sekitar record yang diinginkan, dan mengurangi
jumlah pencarian di file utama. Panjang pencarian rata-rata dapat dikurangi dari jutaan
sampai ribuan. Keuntungan dari akses sekuensial yang diindeks adalah sifat sekuensial
dari sebuah file tidak dimodifikasi File yang disimpan masih berurutan, dan dengan metode akses ini,
waktunya untuk
cari catatan sangat berkurang Jika file indeks terlalu besar untuk file utama, maka akan lebih baik
untuk memiliki file indeks tingkat kedua. Indeks level kedua akan memiliki pointer ke level pertama
indeks, dan indeks level pertama akan memiliki pointer ke record aktual pada file utama.
Contoh 12.1
Sebuah file, yang terdiri dari catatan siswa, masing-masing menempati 16 byte, disimpan di disk. Blok
Ukuran pada disk adalah 512 byte. Karena itu, tiap blok bisa memiliki 32 record. File berukuran 80.000 record
akan menempati 2.500 blok. Jika rekaman tertentu diambil pada file akses berurutan,
ribuan catatan perlu dicari. Alih-alih ini, sebuah indeks dapat didefinisikan, terdiri dari
nama belakang siswa (masing-masing 10 byte), dan nomor catatan logis, sebagai penunjuk ke berbagai
blok di file Indeks akan diurutkan berdasarkan nama belakang. Untuk mencari catatan siswa,
indeks dengan nama belakang, bisa dicari file pointer. Penunjuk akan menunjuk ke arah
Blok yang dibutuhkan dan blok bisa dicari secara berurutan.
Oleh : Herdi Ariyudi
15. Indexed File Access
Tidak perlu menyimpan data dalam file secara berurutan dan untuk mencari catatan dengan bidang
utamanya.
Mungkin ada atribut lain yang memungkinkan pengguna menemukan rekaman. Jadi, kapan berurutan
alam dan bidang kunci tunggal untuk pencarian tidak diperlukan, sekuensial berurutan dan terindeks
akses tidak ditemukan sesuai Untuk tujuan ini, akses file terindeks dipertimbangkan. Ide
berikut adalah untuk mempersiapkan beberapa indeks, masing-masing untuk sebuah atribut, dimana
pengguna ingin mencari a
rekam di file utama Tidak ada batasan untuk menempatkan catatan secara berurutan dan mereka dapat
melakukannya
dari panjang variabel juga. Ada dua jenis indeks: indeks lengkap dan indeks parsial.
Indeks lengkap akan berisi satu entri untuk setiap record di file utama. Indeks parsial
terdiri dari entri catatan yang diindeks oleh atribut tertentu.
Akses file langsung
Akses langsung ditujukan untuk struktur penyimpanan sekunder acak, seperti pada disk. Tipe ini
File paling cocok untuk disk untuk mengakses rekaman tertentu secara acak. Tidak perlu
menyimpan dan mengakses catatan secara berurutan, tapi harus tetap panjang. Karena blok itu
unit pada disk, bidang kunci, seperti dalam kasus berurutan dan berurutan, mungkin juga menjadi
blok nomor Dengan demikian, dengan memiliki nomor blok, blok dapat diakses secara langsung, bukan a
akses berurutan Metode akses langsung cocok untuk aplikasi, dimana akses cepat
data dari sejumlah besar informasi diperlukan.
Oleh : Herdi Ariyudi
16. 12,8 DIREKTOROR
Direktori digunakan untuk menjaga struktur sistem file. Seorang pengguna, jika bekerja di flat file
sistem, mungkin tidak bisa menyortir tugas yang berbeda. Satu tugas mungkin memiliki 10 file,
namun semua tersebar
sistem berkas Demikian pula, tugas lain mungkin memiliki banyak file, namun tidak bisa
dikelompokkan bersama.
Dengan demikian, ada kebutuhan untuk mengelompokkan file yang terkait dengan kategori atau
tugas. Jika pengguna tampil berbeda
tugas, maka setiap file harus bergerak dalam kelompok tugas yang terkait. Dengan cara ini,
kelompok yang berbeda, menurut
untuk tugas, diperoleh. Kelompok ini dikenal sebagai direktori atau folder. Direktori
juga file, tapi daftar semua file yang tersimpan di dalamnya. Daftar menampilkan berbagai atribut
yang mungkin
bervariasi dari satu sistem ke sistem lainnya. Atribut umum yang ditampilkan mungkin nama file,
lokasinya,
hak akses, tanggal dan waktu pembuatannya, dan sebagainya.
Direktori yang nyaman untuk pengguna, karena mereka dapat memisahkan pekerjaan mereka ke
direktori yang berbeda,
terkait dengan tugas yang berbeda. Misalnya, jika seorang siswa mengerjakan dua proyek, A dan B,
maka dia
dapat membuat direktori terpisah untuk Proyek A dan Proyek B, sehingga file-file yang terkait
dengan sebuah proyek
hanya akan disimpan di direktori terkait Direktori juga memberikan fleksibilitas sehingga file bisa
17. memiliki nama yang sama di direktori yang berbeda. Jadi, nama setiap file tidak perlu unik. Di sebuah
folder, bagaimanapun, setiap file harus memiliki nama yang unik. Fasilitas nama yang sama di direktori yang
berbeda
diimplementasikan dengan memiliki direktori master yang terkait dengan sistem file. Tuan
file direktori menyimpan pointer ke setiap direktori yang telah dibuat pengguna. Misalnya, Proyek A dan
Proyek B adalah dua direktori pengguna yang berbeda. Dia bisa memberikan nama yang sama, misalnya Init,
ke file
di kedua direktori Dalam kasus ini, sistem berkas akan menggunakan direktori master, menyimpan petunjuk
dari
kedua direktori, seperti yang ditunjukkan pada Gambar 12.5. Tidak ada konflik dengan nama Init, karena saat
itu
File yang diinginkan dirujuk, sistem file akan mencari pointer di direktori yang sesuai.
Penataan logis dari direktori dapat dilakukan dengan berbagai cara, sesuai dengan persyaratan
dari pengguna. Ini dibahas pada bagian berikut.
12.8.1 Tingkat Tunggal
Struktur penataan logis pertama dari direktori dapat dilakukan dengan cara yang sangat sederhana yaitu,
memiliki
satu tingkat struktur direktori dimana semua file akan disimpan. Artinya ada
satu direktori dalam sistem, yang dikenal sebagai root director, dan semua file disimpan hanya di bawah
direktori ini (lihat Gambar 12.6). Mudah bekerja di bawah struktur ini karena mencari file dengan mudah.
Struktur seperti ini digunakan pada sistem sebelumnya saat tidak ada konsep multiuser.
Direktori satu tingkat, oleh karena itu, tidak sesuai untuk sistem multi-pengguna, karena duplikat
penamaan file Jika pengguna secara tidak sengaja mengambil nama file yang sama, file tersebut akan ditimpa,
dan isi file lama hilang selamanya. Jika pengguna menulis program dalam banyak bahasa,
tidak mungkin untuk memiliki direktori terpisah untuk setiap bahasa dalam direktori tingkat tunggal
struktur. Dengan demikian, struktur ini tidak digunakan dalam sistem modern. Ini mungkin berlaku di sistem
dimana jumlah file kurang, seperti pada kasus embedded system.
18. 12.8.2 Dua Tingkat
Kerugian dari duplikasi nama file oleh pengguna yang berbeda dalam direktori satu tingkat memberi
naik ke gagasan memiliki direktori terpisah untuk setiap pengguna, atau untuk setiap tugas. Di tingkat dua
direktori, ada dua tingkat: direktori induk dan direktori pengguna (lihat Gambar 12.7). Tuan
direktori menyimpan ID pengguna dan alamatnya. Direktori pengguna hanyalah daftar file, seperti yang
terlihat
dalam satu tingkat. Saat pengguna memulai, direktori master sistem mencari entri
dari pengguna ini, melalui nama pengguna atau nomor rekening. Setelah mencari entri yang sesuai,
alamat direktori user-nya diambil. Artinya, ketika pengguna merujuk ke file tertentu, miliknya sendiri
direktori pengguna dicari di direktori master. Dengan demikian, pengguna yang berbeda mungkin memiliki file
dengan
nama yang sama di direktori masing-masing, seperti yang terlihat sebelumnya. Penambahan dan penghapusan
file juga
Perlu dicari file di direktori pengguna, oleh karena itu, file dengan nama yang sama di other
direktori pengguna tidak dapat dihapus
12.8.3 Struktur Hirarki atau Pohon
Dalam struktur direktori dua tingkat, pengguna dibatasi untuk memiliki satu direktori pribadi. Apa
akan terjadi jika pengguna menginginkan lebih banyak level untuk membagi pekerjaan di lebih dari satu
kelompok dan
mengakses file pengguna lain? Dalam hal ini, struktur dua tingkat tidak sesuai. Diperpanjang
Desain struktur dua level memungkinkan pengguna memiliki sub-direktori, sehingga bisa bekerja
dibagi di antara subdirektori ini. Dengan demikian, sebuah direktori, dimana tidak ada batasan pada
subdirektori
dari satu pengguna, dikenal sebagai direktori struktur pohon. Jadi, sekumpulan besar file
dapat dibagi lagi, dan kemudian dikelompokkan ke dalam subdirektori, seperti yang ditunjukkan pada Gambar
12.8. Dalam
Direktori struktur pohon, ada direktori root atau master, yang terdiri dari direktori pengguna.
Setiap direktori pengguna dapat dibagi lagi menjadi sub-direktori, atau mungkin ada file. Jadi, a
direktori memiliki kedua sub-direktori dan file. Keuntungan utama struktur ini adalah
pengguna dapat mengakses file pengguna lain. Fasilitas ini disediakan oleh pathname. Nama path
adalah urutan satu atau lebih komponen jalur dalam struktur pohon yang secara unik mengidentifikasi a
mengajukan. Oleh karena itu, nama path dapat digunakan untuk mengakses file pengguna lain dan untuk
mengidentifikasi secara unik
file dengan nama yang sama di direktori yang berbeda
19. PATHS
Ada dua jenis jalur dalam struktur pohon: jalur absolut dan jalur relatif. Mutlak
path adalah jalan yang selalu dimulai dari direktori root, dan mengikuti jalan yang turun
file yang ditentukan dalam direktori tertentu Untuk menentukan path relatif, pertama mari kita definisikan sebuah
istilah
dikenal sebagai direktori atau direktori kerja saat ini. Direktori saat ini adalah direktori, di mana
sebuah proses atau pengguna biasanya bekerja. Setiap file yang ditentukan oleh pengguna pertama kali dicari di
arusnya
direktori. Jika pengguna ingin mengakses file, yang tidak ada dalam direktori saat ini, maka path
harus disediakan untuk mengaksesnya. Namun, tidak perlu jalur itu mutlak. Itu
jalur yang disediakan mungkin relatif terhadap direktori saat ini, yaitu jalan dimulai dari arus
direktori, bukan root. Ini dikenal sebagai jalan relatif. Meski jalur relatifnya
lebih nyaman, karena jalur absolut tidak perlu ditentukan setiap saat, ia memang melakukan apa
jalan absolut tidak.
Jalan relatif tidak bekerja setiap saat. Seorang pengguna mungkin berada di direktorinya saat ini, seperti itu
bahwa file yang akan diakses tidak dapat ditentukan, dengan menggunakan jalur relatif. Dalam hal ini, jalan
file yang akan diakses harus ditentukan dengan menggunakan path absolut. Jalan mutlak selalu bekerja,
karena ini adalah cara yang tidak ambigu untuk merujuk ke file dalam hirarki pohon. Seorang pengguna,
bagaimanapun,
mungkin merasa tidak nyaman untuk menentukan path absolut setiap saat, jika jumlah file yang akan ada
diakses lebih. Dalam kasus ini, pengguna dapat mengubah direktori saat ini secara eksplisit dan menentukan
jalan relatif Setiap kali sebuah proses atau perubahan pengguna direktori saat ini, ia harus mengetahui
lokasi dalam struktur pohon dari sistem file.
Oleh : Herdi Ariyudi
20. Struktur direktori pohon, yang ditunjukkan di atas, terdiri dari file yang memiliki nama identik. Tapi berkasnya
dapat dengan mudah diakses menggunakan nama path. Baik pengguna A dan pengguna C terdiri dari sebuah file bernama 'Btree'.
File, bagaimanapun, dapat dibedakan dan diakses menggunakan nama path berikut:
UserA / CPP / G2 / Chap1 / Btree
UserC / CPP / UnitA / Btree
Karena nama path unik untuk kedua file, nama yang sama diperbolehkan dalam struktur pohon.
Jika direktori kerja pengguna adalah G2 dan pengguna ingin mengakses file apapun secara hirarkis
Struktur di bawahnya, maka jalur absolut tidak perlu ditentukan. Jalan relatif, Chap1 / Btree,
cukup untuk mengakses file Btree.
Operasi
Mengingat direktori sebagai struktur pohon, ada sejumlah operasi yang bisa dilakukan
melalui perintah atau system calls. Beberapa di antaranya adalah sebagai berikut:
• Buat sebuah direktori
Hal ini memungkinkan pengguna membuat direktori, sesuai dengan hierarki pohon
• Menghapus sebuah direktori
Hal ini memungkinkan pengguna untuk menghapus sebuah direktori. Ada aturan tertentu untuk menghapusnya di sebagian besar OS.
Aturan umumnya adalah bahwa sebuah direktori tidak dapat dihapus, sampai semua file dan direktori di bawahnya
itu akan dihapus Jadi, direktori yang akan dihapus harus kosong.
• Daftar direktori
Operasi ini mencantumkan semua file dan direktori di bawah direktori yang diinginkan.
• Ubah direktori
Hal ini memungkinkan pengguna untuk mengubah direktori saat ini. Seorang pengguna bisa bergerak kemana saja di dalam hierarki pohon.
Misalnya, pengguna bisa bergerak satu langkah di atas dalam hirarki atau bahkan bergerak ke atas
ke direktori root
• Salin file
Hal ini memungkinkan pengguna untuk menyalin file dari satu direktori ke beberapa direktori tertentu.
• Pindahkan file
Hal ini memungkinkan pengguna untuk memindahkan file secara fisik dari satu direktori ke beberapa direktori tertentu.
Oleh : Herdi Ariyudi
21. 12.8.4 Struktur Grafik Aciklik dan File Sharing
Struktur pohon tidak mengizinkan pembagian file atau direktori di antara berbagai direktori pengguna.
Ini berarti dua pengguna tidak dapat memiliki file atau sub-direktori yang sama di dalam direktori mereka. Mempertimbangkan
dua programmer yang mengerjakan proyek yang sama. Mereka mungkin ingin berbagi file
atau sub-direktori yang dibutuhkan untuk proyek. Dengan demikian, struktur direktori harus memungkinkan pembagian
file atau subdirektori. Perhatikan bahwa sharing jangan sampai bingung dengan mengakses file atau
sub-direktori melalui pathname, seperti yang dibahas di atas dalam struktur pohon atau untuk menyalin
file dari sebuah direktori Berbagi berarti memiliki file atau subdirektori yang sama di direktori
direktori pengguna yang bersangkutan. Dengan kata lain, jika ada perubahan isi yang dibagikan
file, maka itu harus terlihat oleh semua pengguna bersama, karena hanya ada satu salinan yang dibagikan
mengajukan. Implementasi jenis pembagian ini dalam struktur direktori melanggar treestructure.
Jenis struktur ini bukan struktur pohon, melainkan grafik. Hal ini dikenal sebagai asiklik
grafik (lihat Gambar 12.9).
Struktur grafik asiklik diimplementasikan melalui pointer, yang dikenal sebagai link. Sebuah link adalah a
pointer yang menunjuk ke file atau direktori. Jika entri direktori ditandai sebagai link, file sebenarnya
informasi ada di link Tautan diimplementasikan sebagai pathname file bersama. Demikian,
Saat file dibutuhkan, entri direktori dicari. Jika direktori ditemukan sebagai link, maka
link dipecahkan untuk memiliki akses file yang sebenarnya. Ini dikenal sebagai symbolic link atau
link lunak Di UNIX, file sharing dilakukan dengan bantuan perintah link dan unlink. Linknya
system call ditentukan dengan dua parameter: nama file yang ada dan pathname sebagai link.
Ini menciptakan hubungan antara file yang ada dan file yang ditentukan di link. Begitu pula dengan unlink
system call digunakan untuk menghapus link antara dua file. Namun, unlink tidak mempengaruhi
berbagi file dengan cara apapun Ini hanya menghapus link simbolik antara file. Link simbolik bisa
juga bisa digunakan untuk link ke file pada mesin apapun di jaringan, dengan menyediakan alamat jaringan
dan nama path dari mesin.
Namun, ada beberapa masalah dalam implementasi hubungan simbolis. Itu mungkin
Mungkin file memiliki beberapa jalur absolut yang mengacu pada file yang sama. Masalahnya juga
terjadi ketika struktur perlu dilalui untuk beberapa tujuan, seperti menyalin semua file untuk
cadangan Masalah dalam melintasi struktur adalah bahwa hal itu menghasilkan salinan duplikat yang sama
mengajukan. Masalah lain adalah bahwa link simbolis menimbulkan overhead tambahan. Sejak link simbolis
22. 12.9 PERLINDUNGAN FILE
Pembagian file yang dibahas di bagian terakhir menimbulkan masalah perlindungan. Berbagi file
Fasilitas dalam sistem tidak berarti bahwa setiap pengguna dapat mengakses file dan memodifikasinya. Sana
mungkin file-system yang melarang sharing file antar user. Di samping itu,
beberapa file-sistem memungkinkan akses ke semua pengguna. Tapi kedua jenis sistem itu mewakili dua
ekstrem perlindungan file. Alih-alih memiliki larangan total atau fleksibilitas akses penuh,
CProj CPP Unix Internet Music Data
Catatan siswa
Akar / Guru
direktori User User UserB Pengguna
CPP Excel
Pengguna
direktori
G1 G2 G3
Mengajukan
File
UnitA UnitB UnitC
Btree
Mengajukan
Chap1 Chap2
Mengajukan
Gambar 12.9 Struktur direktori berbasis grafik asiklik
Oleh : Herdi Ariyudi
23. Prinsip Sistem Operasi
hak akses harus didefinisikan untuk setiap pengguna. Sebelum membahas jenis hak akses file,
mari kita bahas berbagai jenis pengguna.
• Pengguna / pemilik individual: Pengguna individual atau pemilik file, yang membuat file.
• Grup pengguna: Sekumpulan pengguna yang berbagi file dan memerlukan jenis akses yang sama.
• Semua: Setiap pengguna yang memiliki akses ke sistem file.
Berikut adalah beberapa hak akses yang dapat dilakukan oleh semua jenis pengguna yang dibahas di atas:
• Membaca User bisa membaca file.
• Menulis Pengguna dapat menulis, memodifikasi, dan menghapus isi file.
• Menambahkan Pengguna hanya bisa menulis di akhir file saja.
• Menghapus Pengguna dapat menghapus file dari sistem.
• Eksekusi Pengguna dapat memuat dan menjalankan sebuah program, namun tidak dapat menyalinnya.
• Listing Pengguna dapat menampilkan nama dan atribut file.
Mungkin ada persyaratan yang berbeda dari setiap pengguna saat mengakses file. Karena itu, disana
Harus menjadi mekanisme dimana OS akan bisa mengetahui hak akses yang spesifik a
file yang ditentukan membutuhkan Untuk ini, Access Control List (ACL) digunakan, yang menentukan akses
hak yang terkait dengan sebuah file Setiap kali pengguna meminta akses ke file, OS akan memeriksa akunnya
ACL, dan memungkinkan akses, jika permintaan dan kecocokan ACL; Jika tidak, akses ditolak, seperti apa adanya
sebuah pelanggaran terhadap skema proteksi. Kerugian dari skema ini adalah panjang ACL yang terkait
dengan file Ada beberapa hak akses umum yang dibutuhkan semua pengguna. Sebagai contoh,
membaca file adalah operasi umum dan semua pengguna mungkin memerlukannya. Jadi pelaksana umum ini
Akses baca di ACL tidak bermanfaat. Alih-alih ini, akses umum harus diberikan secara default,
dan jika ada file yang tidak boleh diberikan akses atau akses terbatas
harus diimplementasikan melalui ACL. Apalagi hak akses bisa digabungkan dengan masing-masing tipe
pengguna, menghasilkan skema standar untuk perlindungan akses. Hal ini akan berakibat lebih terbatas
perlindungan, hanya memiliki tiga bidang perlindungan. Setiap bidang mungkin terdiri dari beberapa bit, mewakili
perlindungan akses Misalnya, di UNIX, ada tiga bidang: pemilik, kelompok, dan semuanya. Setiap
field memiliki tiga bit, menentukan read, write, dan execute access permissions. Jadi, hanya 9 bit
diperlukan per file
26. 12.10 File System Mounting
Ada beberapa jenis perangkat penyimpanan seperti CD-ROM, hard disk, USB storage dan sebagainya.
Hard disk mungkin memiliki beberapa partisi juga. Di Windows, perangkat dan / atau partisi bisa jadi
diakses dengan membuka My Computer di desktop. Partisi hard disk adalah D: dan E: dan
perangkat lain dapat digambarkan sebagai F :, G :, dan seterusnya. Ini berarti bahwa adalah mungkin untuk
mengaksesnya
perangkat. Di sisi lain, dalam kasus Linux atau UNIX OS, partisi CD atau hard disk tidak dapat dilakukan
diakses Alasannya adalah bahwa pengguna perlu me-mount semua perangkat atau partisi hard disk secara
eksplisit, sedangkan pada Windows, OS melakukan mounting semua perangkat yang terpasang dan partisi
yang keras
Disk
Oleh: Indra
27. 13. File System Implementation
Dasar-dasar sistem fles dan fle telah dibahas di Bab 12. Dalam bab ini, imple- Rincian
detil sistem fle telah dijelaskan. Sistem fle menerima permintaan pengguna untuk
apapun disk I / O dan mengirimkannya ke perangkat melalui berbagai lapisan antara.
Berbagai struktur data digunakan pada disk dan juga memori untuk implementasi
sistem fle. Rincian pelaksanaan Berbagai operasi yang berhubungan dengan fle dan
bagaimana fles dialokasikan pada disk dibahas dalam bab ini. Selain itu, beberapa
masalah seputar sistem fle, seperti backup dan recovery data penting, fle
ketidakkonsistenan sistem, dan beberapa masalah kinerja juga telah dibahas.
Oleh: Indra
28. 13.2 STRUKTUR SISTEM FILE
Sistem fle terstruktur di berbagai lapisan untuk
menggabungkan vari-
ous operasi Setiap lapisan menggunakan operasi
lapisan bawahnya
Oleh: Indra
29. 13.2.1 Sistem Berkas Logis
Sistem fle logis berkaitan dengan struktur logis
yang fle Modul ini mengelola semua informasi tentang attri-
Butes. Struktur fle dipertahankan dalam struktur data gener-
sekutu dikenal sebagai fle control block (FCB). Lapisan ini
mengelola
struktur direktori tempat fle berada dan menyediakan
informasi
tentang lokasi yang buruk untuk modul organisasi yang lemah.
Oleh: Indra
30. Modul Organisasi File 13.2.2
Modul ini mengetahui tentang blok logis dari hal tersebut dan menerjemahkannya
mereka ke blok fisik sehingga sistem fle dasar menjadi fisik
blok dan hasil lebih lanjut. Untuk terjemahan ini, perlu diketahui
lokasi fle dan jenis alokasinya. Kotoran tersebut dialokasikan
ruang disk dalam beberapa cara spesifik yang dikenal sebagai alokasi feses meth-
ods, yang akan dibahas nanti di bab ini. Selanjutnya, juga harus
tahu blok mana yang bebas Informasi ini disediakan secara gratis
manajer ruang yang melacak blok yang tidak dapat dialokasikan dan menyediakannya
modul organisasi fle jadi translasi blok logis
dapat dilakukan. Manajer ruang bebas akan dibahas secara rinci nanti.
Oleh: Indra
31. 13.2.3 Sistem Berkas Dasar / Tingkat
Input-Output Fisik
Sistem fle dasar mengeluarkan perintah generik ke
driver perangkat yang sesuai perangkat untuk
membaca dan menulis blok fisik. Blok fisik
diidentifikasi dengan disk mereka alamat. Blok-blok
tersebut sebagian dialokasikan dalam buffer. Bila
ada permintaan I / O, bloknya adalah Ditransfer ke
disk atau memori dan buffer menjadi bebas.
Pengelolaan penyangga juga dilakukan pada level
ini.
Oleh: Indra
32. 13.2.4 Kontrol Input-Output
Ini adalah tingkat terendah dalam desain berlapis sistem fle. Modul ini berkomunikasi dengan perangkat
yang sebenarnya (disk atau tape drive), mulai beroperasi pada perangkat, dan memproses I / O
permintaan. Terdiri dari device driver dan interrupt handlers untuk mentransfer informasi antara
memori utama dan perangkat. Keuntungan dari struktur berlapis dari sistem fle adalah bahwa kode satu
lapisan dapat digunakan oleh sistem fle yang berbeda Misalnya, sistem kendali dasar atau modul kontrol
I / O dapat digunakan kembali dengan berbagai sistem fle. Di sisi lain, jumlah lapisan harus diputuskan
dengan bijak. Jika Besar, maka ada kemungkinan penurunan performanya. Dengan demikian, jumlah
lapisan mungkin mempengaruhi kinerja sebuah OS
Oleh: Indra
33. 13.3 IMPLEMENTATION OF DATA
STRUCTURES
Sistem implan-tation melibatkan berbagai data struktur untuk mengelola data dan meta-data. Sejak
penyimpanan sekunder yang digunakan
Untuk implementasi sistem yang umum umumnya adalah disk, beberapa struktur data ini ada di-
disk
atau di-memori Struktur data on-disk disusun dengan membagi disk menjadi beberapa balok
Ukuran: Ruang disk dipartisi menjadi serangkaian blok. Secara umum ukuran blok adalah 4KB.
Paling
dari ruang disk, yaitu blok dicadangkan untuk menyimpan data. Blok ini dikenal sebagai
blok data Beberapa blok dicadangkan untuk struktur data on-disk. Meski data struc-
Pertarungan dapat bervariasi sesuai dengan penerapan berbagai OS, struktur data on-disk umum
Oleh: Indra
34. 13.4 FILE MAPPING MELALUI FCB
Logika logis adalah arus byte yang kontinyu,
namun data fle di dalam blok mungkin tidak
berbentuk con- bersebelahan pada disk. Sistem
fle menggunakan posisi logis dalam sebuah
simpanan yang disimpan oleh FCB untuk
dipetakan
Oleh: Indra
35. 13.4.1 Luas
Alih-alih menggunakan beberapa tingkat blok tidak langsung, luasan dapat digunakan untuk mendukung
berukuran besar
fle. Luasnya juga merupakan daftar alamat blok sederhana, namun bedanya adalah setiap alamat
dalam daftar bukan untuk satu blok saja untuk berbagai blok. Dengan kata lain, satu alamat di
daftar akan mewakili beberapa blok disk. Dengan demikian, batas adalah cara yang ringkas untuk
merujuk
ke sejumlah besar data yang terwakili dalam bentuk pasangan pointer-length dimana pointer berada
alamat ke alamat awal dari kisaran blok dan panjang adalah jumlah blok. Meskipun
Ukurannya lebih besar dari pada alamat blok seperti yang digunakan pada daftar alamat blok sederhana
mampu memetakan sejumlah besar blok berurutan ke disk. Selain itu, mereka membiarkan disk I / O
dalam satuan beberapa blok jika penyimpanan berada dalam blok berurutan. Untuk akses sekuensial,
multiple
operasi blok jauh lebih cepat daripada operasi block-at-a-time.
Namun, jika blok pada disk terfragmentasi, tingkat tidak bisa mengatasinya.
Oleh: Indra
36. 13.5 PELAKSANAAN OPERASI FILE
kita melihat bahwa berbagai operasi dapat
dilakukan pada fles. Di bawah cahaya Dasar-
dasar sistem operasi dan struktur data, mari kita
bahas bagaimana berbagai operasi yang terkait
dengan fle diimplementasikan
Oleh: Indra
37. 13.5.1 Buat File
Untuk membuat permainan baru, panggilan sistem
diteruskan ke sistem fle logis. Bunyinya sesuai
struktur direktori dimana new fle akan dibuat.
Untuk ini, itu panggilan organisasi fle modul untuk
memetakan informasi direktori ke blok yang sesuai.
Setelah itu, dasar kutu Sistem mengeluarkan disk
membaca operasi ke driver perangkat disk
Oleh: Indra
38. 13.5.2 Membuka File
Sistem panggilan untuk membuka celah yang ada
dilewatkan ke sistem fle logis. Logika yang logis
sistem mencari SOFT untuk mengetahui apakah fle
ini sudah digunakan oleh proses lain atau tidak. Jika
ya, maka entri di OFT dibuat mengarah ke SOFT. Jika
fle tidak ditemukan masuk SOFT, maka FCB dari fle
tersebut dibaca di memori.
Oleh: Indra
39. 13.5.3 Baca File
Untuk membaca fle, itu harus dibuka. Setelah
itu, fle bisa dibaca dengan menggunakan gagang
tangkas di OFT dan FCB di SOFT. Blok yang bisa
dibaca di fle diketahui dengan bantuan FCB.
Setelah membaca operasi, posisi pointer saat ini
di OFT diupdate sehingga selanjutnya baca /
operasi tulis bisa dilakukan
Oleh: Indra
40. 13.5.4 Menulis sebuah File
Ada dua kasus dalam operasi tulis. Salah satunya adalah mengupdate fle yang ada. Kasus kedua adalah
itu Fle ditambahkan ke fle yang ada atau yang baru ditulis. Untuk kasus pertama, prosedurnya sama
seperti membaca fle. Oleh karena itu, blok yang diinginkan dibaca di memori, diperbarui, dan lalu ditulis
kembali ke disk. Dalam kasus kedua, blok baru harus dialokasikan ke baru fle atau untuk menambahkan
fle. Karena peta bit digunakan untuk melacak blok bebas dan yang dialokasikan, pastilah begitu baca
dulu blok mana yang bisa dialokasikan. Bila blok dialokasikan, statusnya peta bit dimodif dan diperbarui
pada disk. Setelah ini, blok yang baru dialokasikan ditulis. Setelah operasi tulis, posisi pointer saat ini di
OFT diupdate sehingga selanjutnya operasi baca / tulis bisa dilakukan.
Oleh: Indra
41. 13.5.5 Tutup sebuah File
Untuk menutup fle, entri OFT akan dihapus dan
hitungan di SOFT, yang dibahas sebelumnya,
adalah keputusan- mented. Ketika semua proses
telah ditutup, entri SOFT akan dihapus dan
pembaruan apa pun pada kutu ditulis kembali ke
disk. Jelas bahwa operasi I / O sangat kurang
menutup dibandingkan operasi lainnya.
Oleh: Indra
43. 13.6 METODE ALOKASI FILE
Sudah jelas sekarang bahwa file sebagai konsep logis akan dipetakan ke dalam secondary storage
seperti itu
sebagai disk. Saat memetakan file, jumlah blok yang diinginkan diperlukan untuk menyimpan
keseluruhan
file. Sistem file bertanggung jawab untuk mengalokasikan blok-blok tersebut. File dapat
dialokasikan
dalam dua cara: alokasi statis dan alokasi dinamis. Alokasi statis adalah mengalokasikan
ukuran maksimal dari awal sebelum dibuat. Alokasi alokasi dinamis
blok sesuai kebutuhan. Tentunya, alokasi dinamis lebih baik karena ada ruang
pemborosan dalam alokasi statis
File perlu disimpan di hard disk sebagai bagian dari implementasinya. Namun, yang file
Alokasi harus memastikan bahwa ada akses cepat ke isi ruang kosong dan penyimpanan
dimanfaatkan secara efisien. Ada tiga metode alokasi file.
Oleh:Rina
44. 13.6.1 Alokasi Berkas Bersebelahan
Jenis alokasi file mengalokasikan blok bersebelahan pada disk pada saat pembuatan
file.
Dalam alokasi neto yang berdekatan, tidak ada atau gerakan kepala minimum saat
pekerjaan diakses
blok dari file Pada disket, misalkan file disimpan di satu track tapi terus di
lagu berikutnya Untuk mengakses blok pada jalur yang berbeda, pergerakan kepala
hanya diperlukan dari satu jalur saja
lacak ke yang berikutnya. Dengan demikian, seek time akan minimal. Akibatnya, waktu
akses yang mudah dan I / O
Kinerja dengan membaca di beberapa blok bisa diperbaiki.
Alokasi bersebelahan diimplementasikan melalui tabel alokasi habis (FAT) yang defnes
mulai alamat dan panjangnya. Alamat awal adalah alamat blok dimana file
mulai dan jumlah blok setelah itu definisi panjangnya. Sejak alokasi habis
bersebelahan, panjangnya cukup untuk menunjukkan berapa banyak blok yang
dibutuhkan untuk disimpan .
45. Jenis alokasi file mengalokasikan blok bersebelahan pada disk pada saat pembuatan file.
Dalam alokasi neto yang berdekatan, tidak ada atau gerakan kepala minimum saat pekerjaan diakses
blok dari file Pada disket, misalkan file disimpan di satu track tapi terus di
lagu berikutnya Untuk mengakses blok pada jalur yang berbeda, pergerakan kepala hanya diperlukan dari satu
jalur saja
lacak ke yang berikutnya. Dengan demikian, seek time akan minimal. Akibatnya, waktu akses yang mudah dan
I / O
Kinerja dengan membaca di beberapa blok bisa diperbaiki.
Alokasi bersebelahan diimplementasikan melalui tabel alokasi habis (FAT) yang defnes
mulai alamat dan panjangnya. Alamat awal adalah alamat blok dimana file
mulai dan jumlah blok setelah itu definisi panjangnya. Sejak alokasi habis
bersebelahan, panjangnya cukup untuk menunjukkan berapa banyak blok yang dibutuhkan untuk disimpan .
Oleh:Rina
46. 13.6.2 Alokasi File Beralih / Terarah
Dalam alokasi yang terhubung, dua strategi diikuti: alokasi dinamis dan tidak bersebelahan
alokasi. Dalam strategi pertama, blok dialokasikan sesuai kebutuhan fles.
Pada strategi kedua, blok non-bersebelahan dialokasikan, menghemat ruang yang dibuat oleh
fragmentasi seperti dalam kasus alokasi bersebelahan. Untuk menerapkan alokasi ini, setiap entri
FAT yang sesuai dengan fle memiliki pointer (diinisialisasi ke nihil) ke blok disk pertama dan
panjang fle Seiring berkembangnya anak, blok bebas pada disk ditemukan dan blok ini terhubung
sampai akhir berlalu Dengan cara ini, satu blok menunjuk ke blok lain sehingga berantai
alokasi untuk yang buruk Alokasi terkait menghilangkan kelemahan dari bentangan yang berdekatan
alokasi. Sekarang, tidak perlu untuk menyatakan ukuran yang buruk sebelumnya, dan karena ada blok
bebas
Oleh:Rina
47. 13.6.3 Alokasi File Terindeks
Dalam alokasi ini, masing-masing file dialokasikan sebuah blok indeks. Blok indeks terdiri dari
alamat blok dari yang buruk Dengan cara ini, semua petunjuk dari sebuah barang dibawa masuk ke
dalam blok indeks. Itu
blok indeks adalah satu blok disk terpisah yang dialokasikan untuk operasi. Entri FAT hanya berisi
alamat blok indeks yang gagal Entri ke-i di blok indeks adalah blok ith dari file.
Dengan kata lain, untuk mengambil blok ith di dalamnya, pointer ke-i di blok indeks akan diambil.
Ketika sebuah file dibuat, sebuah blok ditemukan dari ruang bebas dan alamat blok itu ditulis-
sepuluh di blok indeks ith. Dengan cara ini, blok indeks berisi informasi dari semua blok disk
dari file, dan karenanya, mendukung akses berurutan maupun langsung dari file.
Oleh:Rina
48. 13.7 MANAJEMEN SPACE GRATIS
Karena metode alokasi blok disk yang bebas untuk digunakan, penting untuk melacaknya
ruang bebas. Hal ini diperlukan untuk memiliki akun lokasi blok disk bebas. Oleh karena itu, sebuah data
Struktur yang dikenal sebagai daftar ruang kosong diperlukan untuk menyimpan informasi dari disk yang bebas
atau tidak terisi
blok. Setelah mengalokasikan blok disk yang bebas sampai habis, entri yang sesuai dengan blok tersebut akan
dihapus
dari daftar ruang kosong. Saat fle dihapus, blok diskenya ditambahkan ke daftar ruang kosong.
Daftar ruang kosong bisa diimplementasikan sebagai bit map atau bit table. Status blok disk adalah
diwakili dengan nilai biner, yaitu nol atau satu
Oleh:Rina
49. 13.8 IMPLEMENTASI DIREKTORAT
Menjaga mengingat kelemahan dari daftar linier untuk menyimpan entri direktori, struktur data
dipilih harus memenuhi hal berikut:
• Harus melakukan pencarian yang efisien pada daftar.
• Harus memiliki biaya yang masuk akal untuk penyisipan atau penghapusan dalam daftar.
Oleh karena itu, implementasi direktori bisa lebih baik dilakukan dengan B-tree, tabel hash, atau radix
metode pemilahan.
Oleh:Rina
50. 13.9 CADANGAN DAN PEMULIHAN
Mungkin ada beberapa alasan untuk kehilangan
data; Disk crash adalah salah satunya. Oleh
karena itu, jadilah
diperlukan untuk mencadangkan data sehingga
bisa dipulihkan jika terjadi kehilangan data.
Oleh:Rina
51. 13.9.1 Cadangan Fisik
Ini adalah jenis backup yang paling sederhana. Penyalinan data pada media backup dilakukan sedikit
oleh
sedikit tanpa interpretasi dimana tempatnya berada. Dengan kata lain, tidak ada meta-data
informasi tentang file atau struktur logis dari sistem file. Karena struktur logisnya
Data cadangan tidak diketahui, data yang dipilih tidak dapat dipulihkan saat pulih dari
cadangan Seluruh sistem file perlu dipulihkan. Selain itu, data cadangan mungkin masuk
formulir yang rusak atau blok cadangan mungkin tidak berisi data apapun.
Oleh:Rina
52. 13.9.2 Cadangan Logis
Tipe ini memiliki interpretasi dari file yang perlu
dicadangkan. Misalnya, ia memeriksa
struktur direktori untuk file. Karena struktur
logis dari sistem file diketahui
Di sini, fles yang dipilih dapat dipulihkan saat
memulihkan data dari cadangan
Oleh:Rina
53. 13.9.3 Cadangan Tambahan
Tidak perlu informasi atau perubahan data setiap hari. Cadangan incremental tidak
tidak mendukung backup seluruh data baik untuk backup fisik maupun logical.
Dibutuhkan backup hanya data yang telah diubah sejak backup terakhir. Berapa
banyak data yang berubah
yang durasinya bisa disurvei. Misalnya, perubahan data mingguan. Dalam kasus ini,
mingguan
Backup data yang telah berubah sejak minggu lalu selesai. Dengan demikian,
incremental backup tersebut Cepat karena kurang data perlu di-backup.
Oleh:Rina
54. 3.10 FILE SISTEM INCONSISTENSI
Beberapa inkonsistensi sistem kabur digambarkan sebagai berikut:
• Jika operasi tulis tertunda, jika blok modif masih dalam cache dan jika
Sistem crash pada saat itu, maka sistem file akan menghasilkan keadaan yang tidak konsisten
sebagai blok modifed belum ditulis pada disk. Masalah inkonsistensi ini
meningkat jika blok modifed ini adalah blok direktori, blok daftar bebas, dan sebagainya.
• Beberapa operasi yang berhubungan dengan operasi memperbarui beberapa struktur data dan jika
ada sistem
Kecelakaan di antaranya, maka akan menimbulkan ketidakkonsistenan.
Oleh:Rina
55. 13.10.1 Cek Superblok
Parameter statis yang disebutkan di dalamnya seperti:
• jumlah dan ukuran blok data dalam sistem fle
• jumlah FCB dan
• jumlah FCB bebas.
Selanjutnya, blok bebas manapun tidak boleh diklaim oleh apapun karena hal itu juga menyebabkan
inkonsistensi Oleh karena itu, free block count juga diperiksa
file, sebuah FCB dibuat dengan mengalokasikan ruang untuk itu. Setelah ini, direktori yang sesuai
dibaca dalam memori.
Oleh:Rina
56. 13.10.2 Kontrol File Cek Blok
Jenis cek berikut dapat dilakukan di FCB untuk menghindari
ketidakkonsistenan:
• Kemungkinan bisa masuk dalam beberapa direktori karena adanya tautan keras. Oleh karena itu, ada hitungan
di FCB yang menunjukkan masuknya beberapa direktori dan harus diperiksa konsistensinya.
Ada kemungkinan jumlah FCB berbeda dari hitungan direktori yang telah dimasukkan.
Sebagai contoh, jumlah FCB adalah empat tapi sebenarnya, file memiliki entri dalam tiga direktori.
Hal ini terjadi ketika sebuah file telah dihapus dalam sebuah direktori namun FCB belum diperbarui
demikian.
• FCB berisi petunjuk ke blok yang membuat goyah. Mungkin saja itu a
Blok ini diklaim oleh dua FCB yang menghasilkan alokasi blok duplikat. Karena itu, setiap blok
nomor harus diperiksa bahwa hanya satu FCB yang mengklaimnya. Demikian pula, inkonsistensi mungkin terjadi
terjadi saat FCB berisi blok tidak langsung.
• FCB juga dapat diperiksa untuk blok buruk yang dialokasikan untuk melakukan pelanggaran. Jika blok ditunjukkan oleh
FCB terletak pada kisaran yang didukung oleh sistem file, maka tidak ada inkonsistensi;
Jika tidak, nomor blok adalah yang buruk.
• FCB juga berisi data untuk menghitung blok data yang ditunjukkannya. Ini juga harus diperiksa
untuk konsistensi Jika penghitungan di FCB tidak sesuai dengan jumlah blok yang sebenarnya, maka itu berarti belum diperbaharui
sejak penghapusan
57. 13. 11 ISDN KINERJA SISTEM FILE
Karena kinerja sistem yang sangat buruk sangat
penting bagi pengguna dan sumber daya,
beberapa masalah pasti terjadi
dipertimbangkan saat merancang dan
menjalankan sistem file
Oleh:Rina
58. 13.11.1 Ukuran Blokir
Ukuran blok pada disk adalah salah satu masalah yang mempengaruhi kinerja sistem file.
Jika ukuran blok terlalu besar, maka file yang lebih kecil (katakanlah, ukuran 1KB) akan
menghabiskan banyak ruang
di blok Di sisi lain, jika ukuran blok terlalu kecil, maka dibutuhkan sistem file
lebih banyak blok disk untuk menyimpan busuk. Hal ini pada gilirannya meningkatkan waktu
pencarian, rotasi
keterlambatan, dan sebagainya, meningkatkan waktu akses yang mudah. Dengan demikian, ukuran
blok yang lebih kecil akan berpengaruh
kinerja sistem file. Dengan demikian, ada benturan antara kinerja yang buruk
sistem dan pemanfaatan ruang pada disk. Karena itu perancangnya yang menentukan ukurannya
sebuah blok harus mengingat ukuran rata-rata sebuah lubang di lingkungan dan harus mengambil
Ukuran sedang sehingga pemborosan ruang dan waktu akses minimal. Secara umum, blok
Ukuran yang digunakan adalah 4KB.
Oleh:Rina
59. 13.11.2 Waktu Transfer Input-Output
Ini adalah fakta diketahui bahwa akses disk lebih lambat (umumnya diukur dalam milidetik)
dibandingkan
ke akses memori yang sesuai dengan beberapa juta siklus clock yang dihabiskan untuk menunggu
data yang akan diambil dari disk Jika ada terlalu banyak pemakaian pada sistem fle untuk
mengakses data
disk, maka sistem menjadi lambat. Untuk mengatasi hal ini, pertama, perlu diidentifikasi di mana
dan
berapa ketergantungan sistem file. Tujuannya adalah untuk mencegah penggunaan berat dari fle
sistem, yaitu untuk mengurangi waktu disk I / O. Untuk tujuan ini, sistem diperiksa untuk
mengetahui
apakah ada penggunaan sistem yang sangat buruk terkait sistem telpon. Ada alat yang tersedia itu
Oleh:Rina
60. Cache
Salah satu metode untuk mengurangi transfer I / O
adalah dengan menggunakan buffer cache. Akan
lebih baik jika fre-Akses blok disk quent
ditempatkan di memori sebagai cache dan diambil
dari memori
itu sendiri untuk meningkatkan kinerja sistem fle.
Oleh:Rina