Antonius Rachmat C, S.Kom, M.Cs

  

Sistem Operasi 11

“Implentasi File system”

  

Antonius Rachmat C, S.Kom, M.Cs

  

Struktur File System

  • Karakteristik penting dari disk :
    • – Disk tersebut dapat ditulis ulang di disk tersebut, hal ini memungkinkan untuk membaca, memodifikasi, dan menulis di disk tersebut
    • – Dapat diakses langsung ke setiap block di disk. Hal ini memudahkan untuk mengakses setiap file baik secara berurut maupun tidak berurut, dan berpindah dari satu file ke file lain dengan hanya mengangkat head disk dan menunggu disk berputar

  • Membuat algoritma dan struktur data yang memetakan struktur logical file system ke tempat

  

Struktur File System

  • I/O control (driver device dan interrupt handler)
    • – Driver device adalah perantara komunikasi antara sistem operasi dengan perangkat keras

  • Basic file system
    • – Mengeluarkan perintah generic ke device driver baca dan tulis pada suatu block dalam disk

  • File-organization module
    • – Informasi tentang logical address dan physical address dari file tersebut, mengatur juga sisa disk dengan melacak alamat yang belum dialokasikan dan menyediakan alamat tersebut saat user ingin menulis file ke dalam disk

  • Logical file system
    • – tingkat ini berisi informasi tentang simbol nama file, struktur dari direktori, proteksi dan sekuriti dari file tersebut

  

Directory Implementation

  • Linear list dari nama-nama file dengan pointer ke data blocks.
    • – simple to program
    • – time-consuming to search & execute
    • – Solusi : linked list dan “Software Cache”

  • Hash Table – linear list dengan hash data structure.
    • – mengurangi directory search time
    • collisions – situasi dimana dua file names hash ke lokasi yg sama
    • – Bersifat fixed size dan dan ketergantungan dari fungsi

Contoh Directory di Linux

  • "/“ direktori root
  • /bin perintah binari esensial
  • /boot file statis dari boot loader
  • /dev device files
  • /etc konfigurasi sistem host-specific
  • /lib shared libraries essential dan modul kernel
  • • /mnt mount point untuk me-mount suatu file system sementara

  • /opt tambahan paket aplikasi piranti lunak
  • /sbin sistem binari esensial
  • /tmp file sementara
  • /usr secondary hierarchy
  • /var data variabel

  /bin

  • cat perintah untuk mengkonkatenasi file
  • chgrp perintah untuk meng
  • /bin mengandung

  kepemilikan file group

  perintah-perintah yang

  • chmod perintah untuk mengubah ijin akses file

  dapat digunakan baik

  • chown perintah untuk mengubah

  itu oleh sistem

  kepemilikan file dan group

  administrasi dan oleh

  • cp perintah untuk mengcopy file dan

  users. Dapat juga

  direktori

  mengandung perintah-

  • date perintah untuk mencetak waktu sistem

  perintah yang dipakai

  dd perintah untuk men-convert dan meng-

  secara tidak langsung

  • copy file oleh scripts.
  • df perintah untuk melaporkan penggunaan ruang
  • Tidak boleh ada sub-

  dmesg perintah untuk mencetak pesan

  direktori di /bin

Perintah di /bin

  • kill perintah untuk mengirim signal ke process
  • login perintah untuk memulai masuk ke dalam sistem
  • ls perintah untuk mendaftar isi direktori
  • mkdir perintah untuk membuat direktori baru
  • more perintah untuk melihat halaman per halaman
  • mount perintah untuk mount file system
  • mv perintah untuk memindahkan/rename file
  • • pwd perintah untuk mencetak nama direktori yg sedang aktif

  • rm perintah untuk menghapus file atau direktori
  • rmdir perintah untuk menghapus direktori kosong
  • su perintah untuk berganti user ID
  • umount perintah untuk unmount filesystem
  • uname perintah untuk mencetak informasi sistem

  /boot, /dev, /etc

  • Direktori ini mengandung semua yang diperlukan untuk proses boot kecuali konfigurasi file dan map installer.
  • /boot menyimpan data yang digunakan sebelum kernel mulai mengeksekusi program user-mode. /boot juga berisi sektor saved master boot, sektor map files, dan data lain yang tidak di-edit langsung dengan tangan.
  • /dev adalah lokasi dari suatu file khusus piranti keras.
  • /etc mengandung konfigurasi file dan direktori yang spesifik ke current system
    • – Tidak ada binari yang bolah diletakkan di bawah /etc

  • /home adalah suatu konsep standar, tetapi juga

  

/lib, /mnt

  • /lib adalah direktori yang mengandung shared library image yang diperlukan untuk mem-boot sistem dan menjalankan perintah dalam root file system, contoh: dengan binari dalam /bin dan /sbin
  • /mnt disediakan agar sistem administrasi bisa secara sementara me-mount filesystem sesuai dengan yang dibutuhkan. Isi dari direktori ini adalah isu lokal dan tidak boleh mempengaruhi manner dimana program sedang berjalan.
    • – Direktori ini tidak boleh digunakan untuk instalasi program: direktori sementara yang tepat, yang sedang tidak digunakan oleh sistem, harus digunakan.

  • /opt disediakan untuk instalasi dari tambahan untuk paket aplikasi piranti lunak.

  

/sbin, /tmp

  • /sbin : utilitas yang digunakan untuk sistem

    administrasi (dan perintah root-only yang lain)

    disimpan di /sbin/, /usr/sbin, dan /usr/local/sbin.

    /sbin mengandung binari esensial untuk boot,

    meyimpan kembali, mengembalikan seperti

    semula, dan/atau membetulkan sistem dalam

    penambahan ke binari dalam /bin.
  • Direktori /tmp harus dibuat siap pakai untuk program yang membutuhkan file sementara
    • – Program tidak boleh berasumsi bahwa file atau direktori dalam /tmp disediakan diantara invokasi dari

  

/usr

• /usr adalah second major section file system.

  • /usr adalah data read-only yang dapat digunakan bersama-sama.

  

Hal ini menandakan bahwa /usr harus bisa dipakai bersama-sama

oleh various FHS-compliant hosts dan tidak boleh ditimpa. Informasi

yang host-specific atau bervariasi dengan waktu disimpan dimana

saja.

  • – Paket piranti lunak besar tidak boleh menggunakan sub-direktori langsung di bawah hierarki /usr.
    • Direktori dibawah /usr

    >– bin perintah yang paling sering digunakan user
  • – include header files termasuk dalam program berbasis C – lib perpustakaan
  • – local hierarki lokal (kosong setelah instalasi awal)
  • – sbin sistem binari yang non-vital
  • – share data architecture-independent

  

/var

  • /var berisi variabel file data. Variabel file data ini mengandung direktori spool dan file, administratif dan logging data, dan file sementara.
  • Beberapa bagian dari /var tidak bisa digunakan bersama antara sistem yang berbeda. Contohnya, /var/log, /var/lock, dan /var/run. Bagian lain mungkin ada yang bisa dipakai bersama-sama, yang dapat dilihat /var/mail, /var/cache/man, /var/cache/fonts, dan /var/spool/news.
  • /var dispesifikasi agar memungkinkan untuk me-mount user read-only. Semuanya yang mula-mula dimasukkan ke dalam /usr yang ditulis selama sistem operasi (kebalikan dari instalasi dan pemeliharaan piranti lunak)

Di dalam dir /usr

  • cache aplikasi data cache
  • lib: variable status informasi
  • local variabel data untuk /usr/local
  • lock mengunci file
  • log log file dan direktori
  • opt Variabel data untuk /opt
  • • run data yang relevan dengan proses yang

    berjalan
  • spool aplikasi data spool

  Metode Alokasi

  • • Untuk mengalokasikan file agar dapat

    diakses dengan cepat dan disk dapat dimanfaatkan secara efektif
  • Metode yang sering digunakan ialah:
    • – Contiguous allocation
    • – Linked allocation
    • – Indexed allocation

Contiguous Allocation

  • Sebuah file didefinisikan oleh alamat disk

  (mendefinisikan urutan linier dari disk) dan panjangnya (dalam satuan blok) dari blok pertama

  • Contiguous allocation mendukung pengaksesan secara sekuensial dan juga pengaksesan secara langsung
  • Random access
  • Wasteful of space (dynamic storage-allocation problem
  • Files cannot grow
  • Kelemahan:
    • – Mencari ruang untuk file baru
    • – External fragmentation
    • – Menentukan berapa banyak ruang yang dibutuhkan untuk suatu

Linked Allocation

  • Direktori mengandung sebuah pointer untuk blok pertama dan blok terakhir dari sebuah file
  • Setiap blok mengandung sebuah pointer untuk ke blok selanjutnya (tidak dapat di buat oleh user)
  • External fragmentation tidak terjadi di metode ini
  • Efektif saat file diakses secara sequential
  • Masalah:
    • – Tidak efisien saat file diakses secara langsung
    • – Pointer membutuhkan ruang
    • – File berikutnya bergantung dengan file sebelumnya (dalam pointer)

  

Indexed Allocation

  • Pointer digabungkan didalam suatu blok yang dinamakan blok indeks
  • Setiap file memiliki blok indeks masing-masing
  • Direktori mengandung alamat dari blok indeks
  • Kelemahan:
    • – Jika blok indeks terlalu kecil, maka itu tidak akan bisa memuat pointer yang cukup untuk sebuah file yang besar
    • – Suatu mekanisme akan dibutuhkan menangani

  Indexed Allocation – Mapping (Cont.) M outer-index index table file

  Kinerja dari Metode Alokasi

  • Countiguous allocation:
    • – Efisien untuk file kecil
    • – Mendukung akses secara langsung

  • Linked allocation
    • – Mendukung akses secara sequential

  • Indexed allocation
    • – Tergantung dari struktur index, ukuran file,

  

Manajemen Ruang Kosong

  • Bit Vector
    • – Daftar ruang kosong diimplementasikan sebagai bit map atau bit vector
    • – Setiap bit merepresentasikan 1 blok. Jika bit tersebut bernilai 1 maka blok tersebut kosong. Dan bernilai 0 untuk sebaliknya.
    • – Bit pertama untuk blok pertama, bit kedua untuk blok kedua, dst

  • Linked List
    • – Skema ini menghubungkan blok-blok yang masih kosong menjadi linked list
    • – Linked List menyimpan suatu pointer di blok kosong yang pertama di lokasi yang khusus di disk dan menyimpannya di memori

  

Manajemen Ruang Kosong

  • Grouping
    • – Metode ini hampir sama dengan mekanisme linked scheme dari metode indexed allocation, tapi pointer- nya menunjukkan alamat blok yang kosong dan pointer terakhir akan menunjukkan ke blok selanjutnya yang mengandung pointer

  • Counting
    • – Metode ini mempunyai direktori yang menyimpan awal dan panjang seperti contiguous allocation untuk file-file yang masih kosong
    Efisiensi Penggunaan Space pada

    Disk

  • Untuk memperbaiki kinerja ada beberapa cara:
    • – Menggunakan page cache
    • – Menggunakan Unified Buffer Cache

  Recovery

  • Pemeliharaan harus dijalankan untuk

    memastikan kegagalan sistem tidak akan

    terjadi saat kehilangan data atau saat data tidak konsisten
  • Ada 2 jenis pemulihan:
    • – Pengecekan yang kontinu: dengan logging
    • – Backup and Restore

  

Log Structured File Systems

  • Log structured (or journaling) file systems mencatat setiap update dari file system sebagai transaction
  • Semua transactions ditulis dalam sebuah log
    • – Sebuah transaction dilakukan committed jika ditulis dalam log
    • – file system mungkin belum di-updated benar-benar

  • Transactions dalam log ditulis secara asynchronously ke dalam file system
    • – Ketika file system dimodifikasi, transaction dibuang dari log

Dokumen yang terkait

SISTEM PENGAMANAN PINTU RUMAH BERBASIS Internet Of Things (IoT) Dengan ESP8266 Arafat, S.Kom, M.Kom

0 4 7

PENERAPAN SISTEM INFORMASI POSYANDU MAWAR KELURAHAN SIMPANG EMPAT Sefto Pratama, S.Kom, M.Kom

0 0 8

PERANCANGAN DAN IMPLEMENTASI APLIKASI ADMINISTRASI LAUNDRY KILOAN DENGAN MENGGUNAKAN VISUAL BASIC Rusdina, S.Kom, M.Kom

0 6 7

ANALISIS ALGORITMA NAIVE BAYES UNTUK KLASIFIKASI STATUS KESEJAHTERAAN RUMAH TANGGA KELUARGA BINAAN SOSIAL Erfan Karyadiputra, S.Kom, M.Kom (erfantsygmail.com) ABSTRAK - ANALISIS ALGORITMA NAIVE BAYES UNTUK KLASIFIKASI STATUS KESEJAHTERAAN RUMAH TANGGA KEL

0 1 10

PERANCANGAN APLIKASI PENGELOLAAN STOCK BARANG PROMOSI PADA PT SHANGHIANG PERKASA CABANG BANJARMASIN Galih Mahalisa, S.Kom, M.Kom

0 0 8

Antonius Rachmat C, S.Kom, M.Cs

0 0 49

DAYA HAMBAT PERTUMBUHAN Candida albicans DAN DAYA BUNUH Candida albicans EKSTRAK DAUN KEMANGI (Ocimum sanctum l.) GROWTH INHIBITION OF Candida albicans AND POWER KILL Candida albicans EXTRACT BASIL LEAVE Antonius Komang De Ornay, Herlambang Prehananto, Am

0 0 6

PENGARUH APLIKASI BIOCHAR TONGKOL JAGUNG DIPERKAYA ASAM NITRAT TERHADAP KADAR C-ORGANIK, NITROGEN, DAN PERTUMBUHAN TANAMAN JAGUNG PADA BERBAGAI TINGKAT KEMASAMAN TANAH Effects of Application of Maize Cob Biochar Enriched with Nitric Acid on Organic C, Nit

0 0 8

C, yaitu dari 19,433 menjadi 5,554. Drying rate batubara terbesar terjadi pada variasi kecepatan 1,9 ms dan temperatur udara pengering 60 C, yaitu sebesar 0,00017 kgs. Sementara nilai effisiensi pengeringan terbesar terjadi pada variasi kecepatan 1,9 ms d

0 0 6

C, DO antara 4-5 mgL, dan pH antara 7,77-8,2. Berdasarkan hasil penelitian dapat disimpulkan bahwa tidak ada perbedaan signifikan pada kandungan protein dan pertumbuhan ikan baik Ikan Bawal Bintang salinitas laut maupun payau. Kata Kunci—Ikan Bawal Bintan

0 0 5