Manajemen File by SuwandiWie

VIEWS: 4,569 PAGES: 48

More Info
									BAB XIII

MANAJEMEN FILE
                    Konsep File (I)

 File adalah unit penyimpan logika yang diabstraksi sistem
  operasi dari perangkat penyimpan

 File berisi informasi yang disimpan pada penyimpan
  sekunder (seperti magnetic disk, magnetic tape dan optical
  disk)

 Informasi dalam file didefinisikan oleh pembuatnya


 Sebuah file mempunyai struktur tertentu tergantung
  tipenya
                    Konsep File (II)

 Tipe file terdiri dari data baik data numeric, karakter
  maupun binary serta program.

 Setiap file mempunyai struktur tersendiri tergantung dari
  apa tipe berkas tersebut, diantaranya:
   - Text File
   - Source File
   - Object File
   - Executable File
                      Atribut File

 Sebuah file mempunyai atribut yg berbeda antara sistem
  operasi satu dengan lainnya, tetapi secara umum terdiri
  dari:
  - Nama
  - Tipe
  - Lokasi
  - Ukuran
  - Proteksi
  - Waktu, tanggal dan identifikasi user


 Informasi file disimpan dalam struktur direktori yang
  diatur oleh disk
                Operasi Pada File (I)

 Terdapat enam operasi dasar yg disediakan sebagai sistem
 call yaitu:
  - Membuat file (create)
  - Menulis file (write)
  - Membaca file (read)
  - Reposisi dalam file (file seek)
  - Menghapus file (delete)
  - Memotong file (truncate)
  - Open(Fi)  mencari struktur direktori untuk File Fi dan
    memindahkan isi entry ke memori
  - Close (Fi)  memindahkan isi File Fi di memori ke
    struktur direktori pada disk
               Operasi Pada File (II)

 Operasi tambahan yang biasanya dilakukan terhadap file
 adalah :
  - Menambah (append)
  - Mengubah nama (rename)
  - Membuat duplikasi (copy)
                     Membuat File

 Terdapat dua hal yang harus kita lakukan untuk membuat
 suatu file:

  - Pertama, kita harus menemukan tempat dalam sistem
    file untuk file yang akan kita buat tadi

  - Kedua, adalah membuat entry untuk berkas tersebut.
    Entry ini mencatat nama dari berkas dan lokasinya
    dalam sistem
                      Menulis File

 Dalam menulis berkas, dibuat sebuah system call dengan
  parameter nama file dan informasi apa yang akan ditulis
  dalam berkas tersebut

 Setelah diberikan nama file, sistem akan mencari file yang
  akan ditulis tadi dan meletakkan pointer di lokasi yang
  akan di-write berikutnya

 Pointer write harus di-update setiap kali write dilakukan
                     Membaca File

 Untuk membaca berkas, digunakan sebuah system call
  dengan parameter nama file dan di blok mana di memori
  file harus diletakkan

 Lalu direktori kembali tempat file berada dicari hingga
  ditemukan entry yang bersesuaian

 Sistem harus menjaga agar pointer berada di posisi dimana
  read berikutnya akan dilakukan

 Setelah pembacaan file selesai, maka pointer akan di-
  update
                  Reposisi Dalam File

 Direktori dicari untuk entry yang bersesuaian


 Current file position dari file di set ke suatu nilai tertentu


 Operasi berkas ini dikenal juga sebagai file seek
                   Menghapus File

 Untuk menghapus sebuah berkas, dicari direktori dari file
  yang ingin dihapus

 Setelah ditemukan, semua tempat yang dipakai file tadi
  dilepaskan sehingga dapat digunakan oleh berkas lainnya

 Entry dari direktori itu kemudian dihapus
                    Memotong File

 User mungkin ingin menghapus isi dari sebuah file, tapi
  tetap ingin menjaga atribut-atributnya

 Truncating file mengijinkan pendefinisian ulang panjang
  file menjadi nol tanpa mengubah atribut lainnya sehingga
  tempat yang digunakan oleh file dapat dilepaskan dan
  dipergunakan oleh file lain.
                   Membuka File (I)

 Setelah sebuah file dibuat, file tersebut dapat digunakan
  sebagai I/O

 Informasi-informasi yang berkaitan dengan membuka file
  adalah:

  - File Pointer
    Sistem harus mengetahui lokasi terakhir dari read dan
    write sebagai current-file-posistion pointer. Pointer dari
    tiap proses pada file sifatnya unik
              Membuka File (II)

- File Open Count
 Ketika sebuah file ditutup, sistem operasi harus bisa
 menggunakan lagi tabel entry open-file agar entry dalam
 tabel tersebut tidak habis. Karena suatu file dapat dibuka
 oleh berbagai proses, sistem harus menunggu hingga
 seluruh proses yang menggunakan berkas tersebut
 selesai untuk bisa menghapus entry di tabel open-file.
                 Membuka File (III)

- Disc Location of the File
  Kebanyakan operasi yang kita lakukan akan mengubah
  data di dalam file. Oleh karena itu, informasi yang
  diperlukan untuk menentukan lokasi file di dalam disk
  disimpan di memori untuk mencegah pembacaan
  berulang dari disk untuk setiap operasi

- Access Right
  Tiap proses membuka file dalam access mode . Informasi
  ini disimpan pada tabel per-proses sehingga sistem
  operasi dapat mengijinkan atau menolak permintaan
  I/O.
                   Struktur File (I)

 Data dalam sebuah file dalam disusun dalam bentuk:


  - Urutan bytes yang tidak terstruktur
    User dapat menaruh apapun yang mereka mau dalam
    berkas, dan sistem operasi tidak membantu, namun
    tidak juga menghalangi

  - Record sequence
    Data dalam file disusun dalam urutan dari record-record
    yang telah ditentukan panjangnya, masing-masing
    dengan beberapa struktur internal
               Struktur File (II)

- Tree
 Sebuah file terdiri dari sebuah tree dari record-record
 yang tidak perlu dalam panjang yang sama, tetapi
 masing-masing memiliki sebuah field key dalam posisi
 yang telah diterapkan dalam record tersebut
                     Metode Akses

 Sebuah file dapat diakses dengan secara:
  - Sequential Access
    Data dalam file diakses secara berurutan, contoh: file
    editor dan compiler biasanya mengakses file dengan cara
    ini

  - Direct Access
    Sebuah file dibuat dari record-record logical yang
    panjangnya sudah ditentukan, yang mengizinkan
    program untuk membaca dan menulis rekaman secara
    langsung ke urutan tertentu, contoh: file database
                      Proteksi File

 Keamanan sebuah file dapat dijaga dari sisi kerusakan fisik
  (ketahanan) dan hak akses (proteksi)

 Sistem file dapat rusak karena masalah hardware (seperti
  error dalam membaca atau menulis), mati listrik, debu,
  suhu yang ekstrim, atau perusakan dengan sengaja

 Ketahanan dapat dilakukan dengan sistem backup file
                    Hak Akses File

 Hak akses sebuah file dapat diberikan berdasarkan:

  - Tipe akses
    Hak akses berdasarkan atribut yang diberikan pada file
    tersebut misalnya: read, write, execute, append, delete,
    list

  - Kontrol akses
    Hak akses diberikan berdasarkan penggunanya, misalnya:
    owner, group, universe

  - Password
    Hak akses diberikan kepada pengguna yang mengetahui
    kata kunci untuk membuka file tersebut
                        Directory

 Sejumlah file disimpan di dalam disk


 Directory digunakan sebagai sarana untuk
  pengorganisasian file pada sistem komputer

 Dengan adanya directory, setiap file dapat dikelompokkan


 Sebuah directory dapat berisi file maupun direcroty lain


 Pada hakekatnya, directory hanya menyediakan link yang
  mengarahkan pada file dan directory yang ada
                  Atribut Directory

 Umumnya sebuah directory bisa memiliki atribut:
  - Nama
  - Tipe
  - Alamat
  - Panjang saat ini
  - Panjang maksimum
  - Tanggal akses terakhir
  - Tanggal perubahan terakhir
  - ID pemilik
  - Informasi proteksi
            Operasi Pada Directory (I)

 Operasi pada sebuah direcoty dapat berupa:
  - Mencari file
    Directory mencari entry sesuai dengan file yang dicari
    dengan menelusuri struktur dari directory yang
    bersangkutan

  - Membuat file
    Saat sebuah file baru dibuat, maka sebuah entry akan
    ditambahkan ke direktori

  - Menghapus file
  - Ketika suatu file tidak dibutuhkan lagi, maka file tersebut
    dihapus dari directory
         Operasi Pada Directory (II)

- Menampilkan isi direktori
 Menampilkan seluruh atau sebagian daftar file yang ada
 di directory beserta atribut dari file-file dalam directory
 tersebut (misalnya, information access control, type dan
 usage information)

- Mengubah nama file
 Mengubah nama suatu file memungkinkan
 berpindahnya posisi file tersebut di dalam struktur
 directory
        Operasi Pada Directory (III)

- Akses sistem File
  Pengguna bisa mengakses setiap directory dan setiap file
  yang berada dalam struktur directory

- Update directory
  Karena sebagian atribut dari file disimpan dalam
  directory, maka perubahan yang terjadi terhadap suatu
  file akan berpengaruh terhadap atribut dari file yang
  bersangkutan di directory tersebut
                  Struktur Directory

 Terdapat 3 model struktur directory, antara lain:


  - Struktur directory bertingkat, dimana directory ini
    terdiri atas: Single Level Directory dan Two Level
    Directory

  - Direktori berstruktur pohon (Tree-Structured Directory)


  - Direktori berstruktur graph, dimana directory ini terdiri
    dari Acyclic-structured Directory dan General-graph
    Directory
Single Level Directory (I)
            Single Level Directory (II)

 Semua file yang ada disimpan dalam directory yang sama


 Kelemahan:
  - Jumlah file yang terlalu banyak mengakibatkan file-fle
    dengan tipe yang berbeda bercampur-baur, sehingga
    menyulitkan pencarian

  - Bila user lebih dari satu, file dari semua user terkumpul
    dalam satu directory

  - Tidak boleh ada file dengan nama yang sama dalam satu
    komputer
Two Level Directory (II)
              Two Level Directory (II)

 Terdapat directory terpisah untuk tiap user yang dikenal
  dengan User File Directory (UFD)

 Ketika user melakukan login, maka Master File Directory
  (MFD) dipanggil

 Indeks yang dimiliki oleh MFD didasarkan pada username
  atau account number dan setiap entri menunjuk pada UFD
  pengguna tersebut

 User bisa mempunyai nama file yang sama dengan file lain
Tree Structured Directory (I)
           Tree Structured Directory (II)
 Setiap user dapat membuat sub-directory sendiri dan
  mengorganisasikan file-file yang dimiliki

 Setiap user memiliki direktori saat ini (current directory), yang
  terdiri dari file-file yang baru-baru ini digunakan oleh user.

 Nama lintasan (path name) bisa digolongkan menjadi dua jenis:
  - Lintasan mutlak (absolute path)
    Merupakan lintasan yang dimulai dari root directory
  - Lintasan relatif (relative path)
    Merupakan lintasan yang dimulai dari directory saat ini
    (Current Direktory Berstruktur Tree Directory)
         Tree Structured Directory (III)

 Para user dapat mengakses dan menambahkan file user
 lain ke dalam directory mereka

 Sebagai contoh:
  - User B dapat mengakses file user A melalui spesifikasi
    nama path-nya
  - Alternatif lain, user B dapat mengubah current
    directory-nya menjadi directory yang dimiliki oleh user
    A dan mengakses file tersebut melalui file names-nya

 Sebuah path ke sebuah file didalam Tree-Structured
 Directory bisa lebih panjang daripada lintasan di direktori
 dua tingkat
Acyclic Graph Directory (I)
            Acyclic Graph Directory (II)

 Tree-Structured Directory tidak memperbolehkan adanya
  pembagian file/directory

 Acyclic-Structured Directory memperbolehkan directory
  untuk berbagi berkas atau sub-directory

 Jika ada file yang ingin diakses oleh dua user atau lebih,
  maka struktur ini menyediakan fasilitas sharing

 Acyclic-Structured Directory bisa mengatasi permasalahan
  path pada direktori dengan struktur Tree-Structured
  Directory
          Acyclic Graph Directory (III)

 Acyclic Graph Directory menghindari terjadinya siklus


 Bila siklus diperbolehkan dalam directory, maka akan
 menghasilkan infinite loop dan tidak akan pernah berakhir
General Graph Directories (I)
         General Graph Directories (II)

 Untuk menghindari terjadinya siklus, maka:


  - Suatu directory tidak boleh di-link ke directory yang bisa
    menyebabkan siklus, tetapi tetapi tidak masalah jika di-
    link ke file

  - Setiap sebuah link ditambahkan, dijalankan sebuah
    algoritma untuk memeriksa apakah akan terjadi siklus
                     Mounting (I)

 Mounting adalah proses mengaitkan sebuah sistem berkas
 yang baru ditemukan pada sebuah piranti ke struktur
 direktori utama yang sedang dipakai

 Piranti-piranti yang akan di-mount dapat berupa CD-ROM,
 disket atau sebuah zip-drive

 Tiap-tiap sistem berkas yang di-mount akan diberikan
 mount point atau sebuah direktori dalam pohon direktori
 sistem yang sedang anda akses

 Mount point adalah direktori tempat dimana akan
 diletakkan sistem berkas tesebut
                      Mounting (II)

 Jika yang di-mount berupa direktori, maka mount point-
 nya harus berupa direktori

 Jika yang di-mount adalah file, maka mount point-nya
 harus berupa file.
                      Mounting (III)




(a) Sistem Sekarang         (b) Partisi yang belum di-mount
  Mounting (IV)




Partisi Setelah di-mount
                    File Sharing (I)

 File sharing merupakan proses akses ke sebuah file secara
  bersama-sama oleh beberapa user (multi user)

 Konflik yang mungkin muncul akibat file sharing, misalnya
  beberapa pengguna melakukan operasi penulisan terhadap
  suatu berkas secara bersama-sama

 Proteksi diperlukan untuk menentukan hak akses dari
  setiap user

 Jenis hak akses: Read, Write, Execute, Append, Delete, List
                   File Sharing (II)

 Dalam implementasi file sharing dan proteksi di multi user
  system, suatu sistem perlu untuk memberikan atribut
  tambahan pada suatu berkas atau direktori

 Pendekatan yang umum dilakukan adalah konsep owner dan
  group

 Owner dapat melakukan apa saja terhadap berkas miliknya,
  termasuk memberikan hak akses tertentu kepada pengguna
  lain terhadap berkas tersebut

 Sekumpulan user dapat membentuk suatu group yang
  mempunyai group ID dimana setiap group diberikan hak
  akses tertentu
                  File Sharing (III)

 Seiring berkembangnya jaringan dan teknologi file,
 mekanisme file sharing juga mengalami perubahan

 Awalnya, cara yang digunakan dalam file-sharing adalah
 dengan aplikasi seperti File Transfer Protocol (FTP)

 Selanjutnya, berkembang dengan Distributed File Systems
 (DFS), sebuah remote-directories dapat diakses dari local-
 machine

 Cara lainnya adalah melalui World Wide Web (www),
 merupakan pengembangan dari metode FTP.
                Remote Machine (I)

 Mekanisme file-sharing memungkinkan seorang user
 mengakses sebuah sistem file dari di komputer lain yang
 terhubung ke jaringan atau biasa disebut remote machine

 Ada dua kemungkinan saat seorang user terhubung ke
 remote machine:
  - Pertama, ia harus melakukan proses otentifikasi atau
    proses identifikasi bahwa ia telah terdaftar sebagai user
    yang mempunyai hak akses tertentu terhadap remote
    machine tersebut
  - Kedua, ia cukup dikenali sebagai anonymous user yang
    bisa jadi mempunyai hak akses tidak seluas
    dibandingkan dengan user yang telah terotentifikasi
                Model Client Server

 Remote File System mengijinkan suatu komputer untuk
 me-mounting beberapa sistem berkas dari satu atau lebih
 remote machine

 Komputer yang menyediakan berkas-berkas yang diakses
 oleh komputer-komputer lain disebut dengan server

 Komputer yang mengakses berkas-berkas yang di-share
 disebut dengan client

 Yang menjadi masalah dalam model ini adalah keamanan
 dan pengaksesan suatu sistem oleh seseorang yang tidak
 mempunyai hak, atau disebut juga unauthorized user.
                    Failure Modes

 Suatu local system dapat mengalami failure atau crash yang
 menyebabkan sistem tersebut tidak dapat berfungsi
 sebagaimana mestinya karena berbagai hal

 Teknologi Redundant Arrays of Inexpensive Disk (RAID)
 cukup membantu hal ini

 Penjelasan lebih detil tentang RAID akan dibahas pada bab
 berikutnya

								
To top