SlideShare a Scribd company logo
1 of 60
• 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
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.
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
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
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
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
• 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.
• 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
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
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
• 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.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
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.
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
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
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
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.
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
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
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
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
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
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
12.10 File System Mounting
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
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
13.2 STRUKTUR SISTEM FILE
Sistem fle terstruktur di berbagai lapisan untuk
menggabungkan vari-
ous operasi Setiap lapisan menggunakan operasi
lapisan bawahnya
Oleh: Indra
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
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
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
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
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
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
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
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
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
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
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
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
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
13.6 METODE ALOKASI FILE
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
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 .
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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

More Related Content

What's hot (16)

42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkas42519051 Bab 9 Sistem berkas
42519051 Bab 9 Sistem berkas
 
File org
File org File org
File org
 
entahlah
entahlah entahlah
entahlah
 
Pertemuan I Sistem Berkas
Pertemuan I Sistem BerkasPertemuan I Sistem Berkas
Pertemuan I Sistem Berkas
 
Sistem berkas (2)
Sistem berkas (2)Sistem berkas (2)
Sistem berkas (2)
 
4.basis data
4.basis data4.basis data
4.basis data
 
Pengertian Sistem berkas
Pengertian Sistem berkas Pengertian Sistem berkas
Pengertian Sistem berkas
 
Pengantar Sistem Berkas
Pengantar Sistem BerkasPengantar Sistem Berkas
Pengantar Sistem Berkas
 
Pengenalan sistem berkas
Pengenalan sistem berkas Pengenalan sistem berkas
Pengenalan sistem berkas
 
Ferli Apriadi - Manajemen File
Ferli Apriadi - Manajemen FileFerli Apriadi - Manajemen File
Ferli Apriadi - Manajemen File
 
Sistem berkas baru
Sistem berkas baruSistem berkas baru
Sistem berkas baru
 
3.organisasi sequential
3.organisasi sequential3.organisasi sequential
3.organisasi sequential
 
Manajemen File
Manajemen FileManajemen File
Manajemen File
 
Sistem berkas (file)
Sistem berkas (file)Sistem berkas (file)
Sistem berkas (file)
 
Sisber1
Sisber1Sisber1
Sisber1
 
manajemen sistem file
manajemen sistem filemanajemen sistem file
manajemen sistem file
 

Similar to Part iv herdi,indra,rina

Manajemen file windows
Manajemen file windowsManajemen file windows
Manajemen file windowsdimas wahab
 
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem fileAlvin Setiawan
 
Zulyanti Megasari - Manajemen File
Zulyanti Megasari -  Manajemen FileZulyanti Megasari -  Manajemen File
Zulyanti Megasari - Manajemen Filebelajarkomputer
 
Bab 7 organisasi file
Bab 7   organisasi fileBab 7   organisasi file
Bab 7 organisasi fileFisma Ananda
 
Bab vii organisasi file
Bab vii organisasi fileBab vii organisasi file
Bab vii organisasi fileRhendy Thanaya
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktoriAnggi DHARMA
 
Bernis Sagita - Manajemen File
Bernis Sagita - Manajemen FileBernis Sagita - Manajemen File
Bernis Sagita - Manajemen Filebelajarkomputer
 
File system di linux
File system di linuxFile system di linux
File system di linuxDhea Dhea
 
File system di linux
File system di linuxFile system di linux
File system di linuxDhea Dhea
 
Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Mirza Afrizal
 
Meeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutMeeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutSyaiful Ahdan
 
Sistem operasi sistem file linux
Sistem operasi sistem file linuxSistem operasi sistem file linux
Sistem operasi sistem file linuxmupidah ptik
 

Similar to Part iv herdi,indra,rina (20)

9.sistem file
9.sistem file9.sistem file
9.sistem file
 
9.sistem file
9.sistem file9.sistem file
9.sistem file
 
Manajemen file windows
Manajemen file windowsManajemen file windows
Manajemen file windows
 
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file
2 ka24 sistem operasi- 2ka24_sistem operasi- materi sistem file
 
Zulyanti Megasari - Manajemen File
Zulyanti Megasari -  Manajemen FileZulyanti Megasari -  Manajemen File
Zulyanti Megasari - Manajemen File
 
Bab 7 organisasi file
Bab 7   organisasi fileBab 7   organisasi file
Bab 7 organisasi file
 
Bab vii organisasi file
Bab vii organisasi fileBab vii organisasi file
Bab vii organisasi file
 
File org
File orgFile org
File org
 
File org
File org File org
File org
 
Komputer
KomputerKomputer
Komputer
 
Struktur direktori
Struktur direktoriStruktur direktori
Struktur direktori
 
Bernis Sagita - Manajemen File
Bernis Sagita - Manajemen FileBernis Sagita - Manajemen File
Bernis Sagita - Manajemen File
 
File system di linux
File system di linuxFile system di linux
File system di linux
 
File system di linux
File system di linuxFile system di linux
File system di linux
 
Sistem File
Sistem FileSistem File
Sistem File
 
Pertemuan4
Pertemuan4Pertemuan4
Pertemuan4
 
Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)Praktikum Sistem Operasi Linux (3)
Praktikum Sistem Operasi Linux (3)
 
Meeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handoutMeeting 4 - operasi file dan struktur direktori-handout
Meeting 4 - operasi file dan struktur direktori-handout
 
Sistem operasi sistem file linux
Sistem operasi sistem file linuxSistem operasi sistem file linux
Sistem operasi sistem file linux
 
Sistem Operasi
Sistem OperasiSistem Operasi
Sistem Operasi
 

Part iv herdi,indra,rina

  • 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
  • 24.
  • 25. 12.10 File System Mounting
  • 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