SISTEM MANAJEMEN FILE DEFIANA ARNALDY, M.Si 0818 0296 4763 Manajemen Sistem File 1. 2. 3. 4. 5. 6. Konsep File Metode Akses Struktur Direktori Struktur Sistem File Metode Pengalokasian Manajemen Ruang Kosong Konsep File (1) • File adalah kumpulan informasi yang berhubungan dan tersimpan dalam secondary storage • Tipe file : – Data (character, numeric, binary) – Program • Penamaan File terdiri dari nama dan ekstensi Contoh : Sifat File persistence : informasi dapat bertahan meski proses yang membangkitkannya berakhir atau meskipun catu daya dihilangkan, sehingga tetap dapat digunakan kembali di masa datang size : umumnya berukuran besar, sehingga memungkinkan menyimpan informasi yang sangat besar disimpan sharability : file dapat digunakan banyak proses mengakses informasi secara kongkuren Sasaran Manajemen File Memenuhi kebutuhan manajemen data bagi pemakai, termasuk penyimpanan data dan kemampuan melakukan operasi berikut : menampilkan seluruh record data (retrieve all) menampilkan 1 record data tertentu (retrieve one) menampilkan 1 record data berikutnya (retrieve next) menampilkan 1 record data sebelumnya (retrieve previous) menyisipkan 1 record data (insert one) menghapus 1 record data tertentu (delete one) memperbaharui 1 record data tertentu (update one) memperbaharui beberapa record data tertentu sesuai kriteria (update few) Sasaran Manajemen File Menjamin data pada file adalah valid Optimasi kinerja : menurut sistem : meningkatkan jumlah throughput keseluruhan menurut pemakai : cepatnya waktu tanggap Menyediakan dukungan masukan/keluaran beragam tipe perangkat penyimpan Sasaran Manajemen File Meminimalkan atau mengeliminasi potensi kehilangan atau perusakan data Menyediakan sekumpulan rutin interface I/O Menyediakan dukungan I/O bagi banyak pemakai dalam kasus sistem multiuser Fungsi Manajemen File Pemakai dapat menciptakan, memodifikasi dan menghapus berkas Pemakai dapat memakai bersama file secara terkendali Mekanisme pemakaian file secara bersama, yaitu menyediakan beragam tipe pengaksesan terkendali seperti read access, write access, execute access ataupun kombinasi lain. pemakai dapat menstrukturkan berkas-berkasnya sehingga menyamankan aplikasi Pemakai dapat melakukan transfer informasi antar berkas Fungsi Manajemen File Kemampuan back-up dan recovery harus disediakan untuk mencegah kehilangan karena kecelakaan atau dari upaya penghancuran informasi. Pemakai mengacu file dengan nama simbolik bukan menggunakan penamaan mengacu peralatan fisik Pada lingkungan sensitif dimana dikehendaki informasi tersimpan aman dan rahasia Menyediakan interface user-friendly Arsitektur Sistem Manajemen File Sistem File Dasar Sistem file dasar atau tingkat masukan/keluaran merupakan interface utama dengan lingkaran di luar sistem komputer. Lapisan ini berurusan dengan blok-blok data yang dipertukarkan antara sistem dengan disk dan tape. Lapisan ini berfungsi dalam penempatan blok-blok data pada perangkat penyimpan sekunder dan dengan buffering blok-blok data itu pada memori utama. Lapisan ini tidak berkaitan dengan isi data atau struktur file yang terlibat. Abstraksi File dan Direktori Sistem file memberikan abstraksi ke pemakai berupa file dan direktori. Pemakai yaitu manusia ataupun proses tidak lagi berkaitan dengan blok-blok data melainkan beroperasi terhadap abstraksi file dan direktori. Konsep File (2) • Atribut file : – – – – Nama Tipe Lokasi Ukuran - Waktu pembuatan Identitas pembuatan Proteksi Informasi lain tentang file • Operasi pada file : – Membuat – Menghapus – Menutup atribut - Menulis - Membaca - Mencari - Membuka - Menghapus dengan menyisakan Atribut File adalah informasi tambahan mengenai file untuk memperjelas dan membatasi operasioperasi yang dapat diterapkan. Atribut digunakan untuk pengelolaan file. Operasi File Konsep File (3) • Tipe File : Jenis berkas Akhiran Fungsi executable exe, com, bat, bin program yang siap dijalankan objek obj, o bahasa mesin, kode terkompilasi c, cc, pas, java, asm, a kode asal dari berbagai bahasa batch bat, sh perintah pada shell text txt, doc data text, document pengolah kata wpd, tex, doc format jenis pengolah data library lib, a, DLL library untuk rutin program print, gambar ps, dvi, gif format aSCII atau biner untuk dicetak archive arc, zip, tar beberapa berkas yang dikumpulkan menjadi satu berkas. Terkadang dimampatkan untuk penyimpanan kode asal code) (source TIPE FILE File regular : file berisi informasi terdiri dari file ASCII dan biner File direktori : merupakan file yang berisi informasi mengenai file-file yang termasuk dalam direktori itu. TIPE FILE File spesial : merupakan nama logik perangkat I/O. Perangkat I/O dapat dipandang sebagai file. file spesial karakter : berhubungan dengan perangkat I/O aliran karakter. File ini memodelkan perangkat I/O seperti terminal, printer, port jaringan, modem, dll, alat yang bukan penyimpan sekunder. file spesial blok : berhubungan dengan perangkat I/O sebagai kumpulan blok-blok data (berorientasi blok) Metode Akses (1) • File menyimpan informasi.Apabila digunakan, informasi tersebut harus diakses dan dibaca memori • Terdapat beberapa cara mengakses informasi pada file, yaitu : – Sequential Access – Direct Access – Other Acces Methode Sistem Akses Lapisan ini menyediakan interface standar antara aplikasi-aplikasi dan sistem file serta perangkat yang menyimpan data. Metode-metode pengaksesan yang berbeda merefleksikan struktur file berbeda dan caracara pengaksesan dan pemrosesan yang berbeda. Penamaan File Pemakai mengacu file dengan nama simbolik. Tiap file di sistem harus mempunyai nama unik agar tidak ambigu. penamaan file dengan nama direktori tempat file memberi nama unik. Tidak diperbolehkan nama file yang sama di satu direktori. Penamaan file berbeda sesuai sistem. Terdapat 2 pendekatan, yaitu : sistem yang case sensitive : sistem membedakan antara huruf kecil dan huruf kapital sistem yang case insensitive : sistem tidak membedakan antara huruf kecil dan huruf kapital Metode Akses (2) • Sequential Acces – Membaca semua bytes/ record dari awal – Tidak dapat melompat, hanya bisa melakukan rewind atau backup – Baik jika digunakan pada pita magnetik Metode Akses (3) • Direct Access – – – – Bytes/ record dibaca tidak terurut Penting untuk sistem basis data File dilihat sebagai sederetan blok yang berindeks Pembacaan dapat berupa • Memindahkan penanda file (seek), kemudian baca • Baca dan kemudian pindahkan penanda file – Metode akses ini berdasarkan model disk dari suatu file, memungkinkan acak ke sembarang blok file, memungkinkan blok acak tersebut dibaca/ ditulis Metode Akses (4) • Other Access Methode – Metode akses lainnya dibangunkan/dikembangkan berdasarkan direct access methode – Biasanya melibatkan proses pembuatan indeks dari file – Indeks, seperti indeks pada bagian akhir buku, berisi pointer-pointer ke blok-blok tertentu. Untuk menentukan masukan dalam file, pertama dicari indek dan kemudian menggunakan pointer untuk mengakses file secara langsung dan menemukan masukan yang tepat Metode Akses (5) • Metode Hashed – Metode yang sering digunakan untuk permintaan pengaksesan yang cepat dimana panjang dari record yang tetap digunakan dan record selalu diakses sekali dalam satu waktu – Menggunakan key field untuk setiap record tetapi tidak menggunakan konsep berurut – Digunakan untuk mengurangi banyaknya ruang alamat yang digunakan dan melakukan pemetaan dari kunci record yang memiliki cakupan nilai luas ke sempit (dipersempit) f(key) -> address Metode Akses (6) • Macam-macam fungsi Hash – Fungsi Modulo mencari sisa hasil bagi nilai kunci – Metode Pemotongan memotong nilai kunci ke jumlah digit tertentu yang lebih pendek – Metode Pelipatan dimisalkan kunci ditulis dikertas dan dilipat sama panjang kemudian dijumlahkan – Metode Pengkuadratan mengkuadratkan setiap digit pembentuk kunci kemudian dijumlahkan – Penambahan Kode ASCII digunakan jika kunci bukan kode numerik • Metode Coalesced Hashinh – Terjadi bila terdapat usaha untuk menyisipkan sebuah record dengan home address yang sudah diokupasi oleh record dari rantai yang memiliki home address yang berbeda Metode Akses (7) • Algoritma Coalesced Hashing – Lakukan hashing pada semua kunci record yang akan disisipkan untuk mendapatkan home address – Jika home address kosong, sisipkan record pada lokasi tersebut, jika record kembar akhiri program dengan pesan record kembar, jika tidak – Cari lokasi terakhir rantai sinonim dengan mengikuti penunjuk pada medan penghubung – Cari lokasi paling bawah dalam berkas, jika tidak ditemukan akhiri program dengan pesan “berkas penuh” – Sisipkan record ke dalam lokasi yang kosong sudah teridentifikasi dan atur medan penghubung record terakhir dalam rantai sinonim agar menunjuk ke lokasi rekaman yang baru saja disisipkan • Contoh : Misal dilakukan penyisipan rekaman dengan kunci : 38, 51, 40, 61, 83, 24, dan 60 ke dalam berkas dengan kapasitas 11 Kunci Kunci Mod 11 38 5 51 7 40 7 61 6 83 6 24 2 60 5 Alamat Kunci Kunci Mod 11 0 1 2 24 3 4 5 38 6 61 7 51 8 60 9 83 10 40 8 10 9 Kunci Kunci Mod 11 Medan Penghubung 38 5 1 51 7 1 40 7 2 61 6 1 83 6 2 24 2 1 60 5 2 Probe Total 10 Probe Rata-rata = 10/7 Struktur Direktori (1) • Direktori adalah kumpulan nodes yang berisi informasi mengenai semua file • Baik struktur direktori maupun file berada pada disk Struktur Direktori (2) • Operasi pada direktori : – – – – Mencari file Menghapus file Ubah nama file Membuka direktori - Membuat file Melihat isi direktori Traverse sistem file Menutup direktori • Struktur Direktori : – Single Level Directory – Two Level Directory – Tree-Structured Directory Struktur Direktori (3) • Single Level Directory – Semua file terdapat pada direktori yang sama – Tiap file memiliki nama yang unik Struktur Direktori (4) • Two Level Directory – Membuat direktori yang terpisah untuk tiap user – Terdapat User File Directory (UFD) dan Master File Directory Struktur Direktori (5) • Tree Structured Directory – Tiap direktori dapat mengandung file dan subdirektori – Current Directory adalah direktori yang baru-baru ini digunakan Struktur Direktori (6) • Acyclic Graph Directory – Tiap direktori dapat mengandung file dan subdirektori – Current Directory adalah direktori yang baru-baru ini digunakan Struktur Sistem File • Struktur file : – Unit penyimpan logika – Sekumpulan informasi yang berhubungan • Sistem file berada pada media penyimpan sekunder (disk) • Karakteristik penting dari disk : – Disk tersebut dapat ditulis ulang di disk tersebut, hal ini memungkinkan untuk membaca dan memodifikasi, dan menulis di disk tersebut – Dapat diakses langsung langsung ke setiap block di disk. Hal ini memudahkan untuk mengakses setiap file secara berurut maupun tidak berurut. Metode Pengalokasian (1) • Metode alokasi berhubungan dengan bagaimana blok-blok pada disk dialokasikan untuk file • Jenis metode pengalokasian file : – Contiguous Allocation – Linked Allocation – Indexed Allocation Metode Pengalokasian (2) • Contiguous Allocation – Setiap file menempati sekumpulan blok yang berurutan pada disk – Sederhana hanya membutuhkan lokasi awal (block #) dan panjang (jumlah blok) – Random Access – Pemborosan ruang – File tidak dapat berkembang Metode Pengalokasian (3) • Contiguous Allocation – Masalah : • • • • Mencari ruang yang sesuai untuk sebuah file yang baru External Fragmentation Alokasi ruang di awal pembuatan file Ukuran file tidak dapat membesar Metode Pengalokasian (4) • Linked Allocation – Dapat mengatasi masalah yang terjadi pada metode Contiguous Allocation – Setiap file diidentifikasikan dengan linked list dari blokblok, jadi blok-blok tidak harus berkesinambungan dengan blok yang lain – Direktori hanya menyimpan alamat blok pertama dan alamat terakhir – Hanya mendukung pengaksesan secara berurutan Metode Pengalokasian (5) • Linked Allocation – Masalah • Lambat dalam mengakses blok secara random • Ruang yang dibutuhkan untuk menyimpan pointer Metode Pengalokasian (6) • Indexed Allocation – Setiap file memiliki index blok – Directory terdiri dari pointer ke index block – Index blok merupakan suatu array yang setiap elemennya merupakan urutan blok dari suatu file – Mendukung akses blok secara langsung – Tidak ada external fragmentation Manajemen Ruang Kosong (1) • Untuk menyimpan track dari ruang disk yang kosong, sistem membuat daftar ruang kosong. • Daftar ruang kosong tersebut menyimpan semua blok-blok disk yang kosong. • Metode Manajemen Ruang kosong : – – – – Bit Vector Linked List Grouping Counting Manajemen Ruang Kosong (2) • Bit Vector – Ruang-ruang kosong diimplementasikan sebagai bit map atau bit vector – Setiap blok direpresentasikan dengan 1 bit – Blok Free = “1” dan Blok digunakan = “0” – Efisein dan simpel dalam mencari n urutan blok kosong yang pertama – Contoh : • Sebuah disk dimana blok-blok 2,3,4,5,8,9,10,11,12,13,17,18,25,26,dan 27 kosong. Bitmap dari ruang kosong yaitu : 0011110011111100011000000111………… Manajemen Ruang Kosong (3) • Link List – Membuat link antar blok-blok yang kosong didalam disk – Setiap blok kosong memiliki pointer ke blok kosong berikutnya – Tidak efisien, karena pengaksesannya dilakukan secara sequential Manajemen Ruang Kosong (4) • Grouping – Menyimpan n buah alamat blok kosong ke blok kosong yang pertama – N-1 blok berikutnya kosong – Blok terakhir dapat digunakan untuk menyimpan alamat blok pertama dari blok kosong lainnya • Counting – Free Space List menyimpan alamat pertama blok kosong yang berurutan dan jumlah blok kosong yang mengikutinya Sekian Terima Kasih QUIZ • misalnya dilakukan penyisipan rekaman dengan kunci : • 36, 67, 76, 61, 38, 30, dan 60 • kedalam berkas dengan kapasitas • metode yang digunakan 11 – Metode Coalesced Hashing – Metode Bucket (faktor blocking = 2) • cari probe rata-rata untuk masing-masing metode