Sistem File

SISTEM FILE

 

A. Konsep File

  • File= unit ruang penyimpanan yang digunakan untuk menyimpan informasi pada penyimpanan sekunder pada komputer (magnetic tape, magnetic disk, optical disk).
  • Tipe informasi pada file:
    • Data: karakter, numerik, biner
    • Program: object, source, executable
  • Atribut file:
    • Nama: disimpan sesuai dengan nama file yang ditulis user
    • Tipe: tipe dari file
    • Lokasi: lokasi/bagian-bagian dimana file berada/tersimpan
    • Ukuran: ukuran dari file yang digunakan
    • Proteksi: memonitor siapa yang dapat mengeksekusi, menulis, dan membaca
    • Waktu, tanggal, identifikasi pengguna (user): informasi data yang digunakan pada proteksi
  • Operasi-operasi pada file:
    a) Operasi-operasi dasar

    • Create file (membuat file)
    • Write file (menulis file)
    • Read file (membaca file)
    • File seek (reposition dalam file)
    • Delete file (menghapus file)
    • Truncate file (memotong file
  • b) Operasi-operasi tambahan
    • Create file (membuat file)
    • Write file (menulis file)
    • Read file (membaca file)
    • File seek (reposition dalam file)
    • Delete file (menghapus file)
    • Truncate file (memotong file)
  • Tipe file:

 

B. Metode Akses
Informasi yang tersimpan di file, harus bisa diakses agar user bisa membaca dan edit informasi tersebut, terdapat beberapa metode akses yaitu:

  • Sequential Access (Akses Berurutan)
    • Metode akses paling sederhana dimana akses dilakukan dengan satu arah dari awal hingga ahir secara berurutan atau satu per satu (record), kalau ingin mundur maka harus rewind
    • Operasi pada akses berurutan:
      Read next –> write next –> reset –> no read after last write (rewrite)
  • Direct Access (Akses Langsung)
    • Akses dapat dilakukan dengan cepat karena tidak perlu melakukan record secara berurutan. Pada metode ini, akses dilakukan secara acak ke sembarang (bisa di posisi mana saja) blok.
    • Operasi pada akses langsung:
      Read n
      Write n
      Position to n

      • Read next
      • Write next
    • rewrite n
      (n = nomor blok relatif)
  • Metode Akses lain
    • Berdasarkan akses langsung
    • Menggunakan indeks file, kemudian menggunakan pointer untuk mengakses file secara langsung
    • Operasi-operasi pada akses metode lain:

 

C. Struktur Direktori

  • Direktori = kumpulan yang berisii semua file
  • Setiap sistem menyimpan semua file di dalam disk dan mengaturnya secara organisasi dalam 2 bagian. Pertama sistem dipecah ke dalam partisi. Pada setiap disk terdiri dari beberapa partisi, dimana partisi tersebut tersimpan file dan direktori. Setiap disk memiliki volume partisi yang berbeda. Kedua, di partisi tersimpan file dan direktori pada direktori decixe/tabel volume dari konten. Di direktori tersebut tersimpan informasi.
  • Informasi pada direktori: address, type, name, max length, current length, last modified date, last access date, protection information, owner ID
  • Operasi-operasi pada direktori: search file (mencari), create file (membuat), delete file (menghapus), list (mendaftar direktori), rename file (ubah nama file), traverse file (lintas sistem file)
  • Struktur organisasi direktori:
    • Keefektivitasan: agar bisa menempatkan file dengan cepat
    • Penamaan file: harus nyaman untuk user. Dua user bisa memiliki nama file yang sama. File yang sama bisa mempunyai beberapa nama.
  • Jenis-jenis Organisasi direktori:
    1. Direktori Satu Tingkat/Level
      • Terdiri dari satu direktori satu user
      • Permasalahan: pengelompokkan berdasarkan user & penamaan
    2. Direktori Dua Tingkat/Level
      • Terdapat dua direktori dengan tingkatan yang berbeda yang dapat memisahkan antar user, dimana bisa memiliki nama file yang sama pada 2 user.
      • Kelebihan: memiliki kapabilitas/keefektifisan dalam pencarian
      • Kekurangan: pengelompokkan belum dapat dilakukan
    3. Direktori berstruktur pohon/Tree
      • Kelebihan: pencarian lebih efektif dan efisien, dapat mengakses direktori dan subdirektori, bisa dikelompokkan, terdapat perintah khusus untuk menghapus dan membuat direktori, path dibagi menjadi 2 tipe yaitu absolut dan relatif.
    4. Direktori Acylic Graph
      • Perbedaan Direktori Tree dengan direktori Acylic Graph yaitu Direktori Acylic Graph dapat menggunakan direktori/subdirektori dan file yang digunakan secara bersama
      • Pada UNIX, direktori ini diimplementasikan dengan membuat entry baru yang disebut link yang diimplementasikan sebagai path (absolut/relatif).
    5. Direktori General Graph
      • Direktori ini meminimalisir adanya siklus dengan cara: link bertempat di file bukan subdirektori, sampah/garbage dikumpulkan, jika ada link baru maka lakukan algoritma penghapusan siklus (iya/tidak)

 

D. Mounting Sistem File

  • Sebelum di akses, sistem file harus di-mount
  • Jika terdapat sistem file yang belum di-mount, maka sistem file akan di-mount pada titik mount.

 

E. File Sharing

  • Pada sistem multi user, file sharing sangat diharapkan, hal ini dapat dilakukan melalui skema proteksi.
  • Sedangkah pada sistem terdistribusi, akan diimplementasikan dengan men-share lintas jaringan.
  • Salah satu contoh dari bentuk umum sharing file terdistribusi adalah Network File System (NFS)

 

F. Proteksi

  • Proteksi (Protection) harus dilakukan agar informasi/data pada sistem komputer dapat terhindar dari akses yang kurang benar.
  • Sedangkan reliability dilakukan agar informasi pada sistem terhindar dari kerusakan fisik (reliability). Biasanya dilakukan dengan duplikasi copy file dan beberapa sistem dapat melakukan dengan otomatis, misalnya jika terdapat sistem file yang terhapus, maka akan otomatis file tersebut akan diduplikasikan ke tape secara regular.
  • Proteksi dapat dilakukan dengan berbagai cara yaitu:
    1. Tipe akses
      • Kekurangan: file yang dibuat terbatas, tidak semua file yang akan diakses diperbolehkan tergantung beberapa faktor (misal: permintaan tipe akses).
      • Operasi-operasi yang disediakan:
        • Read file (membaca)
        • Write file (menulis)
        • Execute file (menjalankan file)
        • Append file (menambah isi file)
        • Delete file (menghapus)
      • Proteksi tersedia hanya pada fungsi level lebih rendah (spt operasi-operasi di atas). Maka dari itu, untuk fungsi level lebih tinggi (meng-copy. pemberian nama, mengubah file), diterapkan dengan sistem yang memakai sistem call/fungsi level lebih rendah.
      • Misal: untuk meng-copy file, maka memakai deretan read sehingga file dapat di-copy, dicetak, dll.
    2. Acces List dan Group
      • Penerapannya menggunakan akses identity-dependent (akses identifikasi user secara dependent), yaitu menghubungkan masing-masing file & direktori dengan access list yang menentukan nama user & tipe akses yang diizinkan untuk setiap user.
      • Masalah utama: ukuran dimana manajemen ruang harus diperhatikan dalam penempatan daftar user yang memiliki akses.
      • Pemecahan masalahnya, terdapat 3 klasifikasi user, yaitu:
        • Owner: user yang membuat file
        • Group: user yang diberikan akses untuk menggunakan file bersama-sama
        • Universe: semua user lain dalam sistem
      • Dalam penggunaannya lebih efektif, fungsi keanggotan user perlu diperhatikan. Misalnya dalam UNIX terdapat grup yang dibuat dan yang boleh memodifikasinya hanya menager (superuser).
    3. Proteksi pada UNIX
      • Proteksi dalam direktori sama dengan proteksi dalam file, yaitu: subdirektori menggunakan owner, grup, & universe sebagai 3 bit RWX.
      • Informasi yang terdapat pada file (dari kiri ke kanan):
        • Proteksi file/direktori
        • Jumlah link ke file
        • Nama pemiliki
        • Nama grup
        • Ukuran file (byte)
        • Tanggal membuat
        • Nama file

 

G. Sistem File pada Windows & Linux
Salah satu fungsi sistem file yaitu menjadi perantara sistem operasi dengan disk. Sistem operasi akan meminta sistem file untuk mengakses suatu file yang diinginkan oleh program. Kemudian, sistem file akan mencari lokasi dari file tersebut pada disk/penyimpanan. Setelah ditemukan, sistem file akan membacanya dan mengirimkannya pada sistem operasi sehingga file yang diminta bisa dibaca sesuai dengan permintaan program.

  1. Sistem File pada Windows
    • FAT (File Allocation Table)
      FAT=salah satu jenis sistem file pada Windows dimana dalam melakukan tugasnya, FAT menggunakan struktur tabel alokasi berkas. Beberapa versi FAT, yaitu:

      1. FAT12
        • Pertama kali digunakan pada SO MS-DOS dengan kapasitas 32 MB
        • Hanya digunakan pada penyimpanan floppy disk karena kapasitasnya kecil
        • Batas unit alokasi = 212/4096 buah ; dengan batas 12-bit (msg2)
      2. FAT16
        • Pertama kali digunakan pada MS-DOS 1981
        • Batas unit alokasi = 216/65536 buah ; dengan batas 16-bit (msg2)
        • Kapasitas sistem file = 4GB
        • Ukuran unit alokasi tergantung kapasitas harddisk yang akan diformat. Jika kurang dari 16 MB, maka menggunakan FAT12. Jika lebih, maka menggunakan FAT16.
        • Kelebihan: dapat digunakan hampir seluruh SO
        • Kekurangan: kapasitas jumlah cluster dalam partisi harddisk tetap ; tidak mendukung kontrol akses, enkripsi, kompresi dalam partisi.
      3. FAT32
        • Pertama kali digunakan pada Windows 95 OSR2
        • Batas unit alokasi = 232/4.294.967.296 buah ; dengan batas 32-bit (msg2) ; namun, yang dapat dialamatkan hanya 228
        • Kapasitas sistem file = 32 GB
        • Kelebihan: dapat menampung jumlah cluster yang lebih besar
        • Kekurangan: SO yang mengenal FAT32 terbatas
      4. FAT64/exFAT (extended FAT)
        • Pertama kali digunakan untuk perangkat2 benam Windows Embedded CE 6.0 & Windows Vista Service Pack 1
        • Batas unit alokasi = 264
        • Kelebihan : tersedia Free Space Bitmap (peningkatan performa dalam alokasi ruangan kosong & penghapusan) ; batas cluster 2255 sektor & batas implementasi 32 MB ; tersedia Access Control List (ACL) sama seperti NTFS
        • Kekurangan: tidak bisa diakses oleh Windows2 sebelum CE 6.0 & Vista SP1 ; tidak tersedia dalam bentuk open source ; status lisensi belum jelas ; tidak bisa menggunakan ReadyBoost milik Windows Vista
    • NTFS (New Technology File System)
      • Pertama kali digunakan pada Windows NT. Memiliki desain sederhana namun kemampuan lebih baik dibandingkan FAT. Beberapa versinya yaitu:
      • Versi NTFS:
        1. NTFS 1.0: dikenalkan saat Windows NT 3.1
        2. NTFS 1.1: dikenalkan saat Windows NT 3.5
        3. NTFS 1.2: dikenalkan saat Windows NT 4.0
        4. NTFS 2.0: tidak dirilis secara umum karena beberapa kendala, lalu dilongkap ke NTFS 3.0.
        5. NTFS 3.0: dikenalkan saat Windows 2000
        6. NTFS 3.1: dikenalkan saat Windows XP SP1 & Server 2003
      • Kelebihan: mendukung penamaan file dengan Unicode (16-bit) hingga 255 karakter ; mendukung hard link & symbolic link ; mendukung sistem data terenkripsi & kompresi secara transparan
      • Kekurangan: tidak bisa bekerja sama dengan SO lain dalam satu komputer
  2. Sistem File pada Linux
    • Ext 2 (2nd Extended)
      • Dikenalkan pada 1993
      • File data disimpan sebagai data blok ; data tersimpan dalam file, file tersimpan dalam direktori ; dalam direktori terdapat direktori (subdirektori) & file
      • Kelebihan: dapat memilih ukuran blok (1024-4096 bytes) ; mendukung file immutable (file yg tdk dpt dimodifikasi) & append-only (isi file hanya dapat ditambahkan pada akhir file)
      • Kekurangan: membutuhkan waktu yang lama saat shut down ; pd saat clean up, ext2 otomatis menjalankan utility pd booting selanjutnya
    • Ext 3 (3rd Extended)
      • Kelebihan fitur: journaling (mempersingkat waktu recorvery saat shut down) ; integritas data (dapat memilih tipe proteksi) ; mudah dilakukan migrasi ; kecepatan
      • Kekurangan: membutuhkan memori yang lebih & sistem lebih lambat saat I/O karena penambahan fitur journaling
    • Ext 4 (4th Extended)
      • Kelebihan: alokasi 48-bit blok (batas sistem file 1EiB ; batas file size 16 TB)

Leave a Reply

Your email address will not be published. Required fields are marked *

* Kode Akses Komentar:

* Tuliskan kode akses komentar diatas: