Operating System
File System
Fak. Teknik Jurusan Teknik Informatika
Universitas Pasundan
Dosen : Caca E. Supriana, S.Si
Konsep dan Atribut File System
z
Konsep File
Atribut File
Operasi pada File
Tipe File
Struktur File
z
Metode Akses
Sequential Access File
Direct Access File
Konsep File
z
File adalah kumpulan informasi yang
berhubungan dan tersimpan dalam
secondary storage
z
Tipe:
Data (character, numeric, binary)
Program
Atribut File
z
Nama
z
Tipe
z
Lokasi
z
Ukuran
z
Waktu pembuatan dan identitas pembuat
z
Proteksi
Operasi pada File
z
Membuat
z
Menulis
z
Membaca
z
Menghapus
z
Mencari
z
Membuka
z
Menutup
Struktur File
z Sistem operasi membutuhkan struktur file tertentu untuk menjalankan/ mengakses suatu file.
z Semua sistem operasi diharuskan mampu mengenal sedikitnya satu jenis struktur file.
z Jika sistem operasi mengenal semakin banyak
struktur file, maka semakin luas aplikasi yang dapat dijalankan namun ukuran sistem operasi semakin besar. Sebaliknya, jika semakin sedikit struktur file, maka sistem operasi hanya dapat menjalankan
Direct Access File
z Sangat berguna untuk pengaksesan langsung informasi dalam jumlah besar. Contoh : database
z File dilihat sebagai sederetan blok yang berindeks
z Relative block number digunakan agar
memungkinkan sistem operasi untuk memutuskan
dimana suatu file dapat ditempatkan, dan mencegah
user untuk mengakses sebagian dari sistem file
Other Access Methods
z Metode akses lainnya dibangun/ dikembangkan berdasarkan direct access method.
z Biasanya melibatkan proses pembuatan indeks dari file.
z Untuk mencari suatu bagian dari file, pertama-tama cari indeksnya, kemudian dengan pointer tersebut
kita mengakses file secara langsung, lalu mencari
Konsep Direktori
z
Operasi pada Direktori
z
Struktur Direktori
Single-Level Directory
Two-Level Directory
Tree-Structured Directory
Acyclic-Graph Directory
General-Graph Directory
Operasi pada direktori
z Mencari filez Membuat file
z Menghapus file
z Melihat isi direktori
z Ubah nama file
z Traverse file system
z Membuka direktori
z Menutup direktori
Two-Level Directory
(2)
Keterbatasan :
Bila beberapa user ingin mengerjakan tugas
secara kerjasama dan ingin mengakses file dari
salah satu user untuk keperluan tersebut
Tree-Structured Directory
(1)
z Tiap direktori dapat mengandung file dan subdirektori
z Path (absolut path) adalah urutan direktori yang berasal dari MFD
z Working dir. (relative path) adalah path yang berasal dari current directory
z Current directory adalah direktori yang baru-baru ini digunakan
Acyclic-Graph Directory
z
Satu file dapat memiliki banyak absolut path
yang berbeda
z
Masalah : Penghapusan (dangling pointer)
z
Solusi :
Backpointers, agar kita dapat menghapus semua pointer.
Backpointers menggunakan struktur daisy chain.
General-Graph Directory
(2)
z
Meyakinkan tidak adanya siklus :
Hanya mengizinkan link ke file.
Garbage collection.
Menggunakan algoritma siklik dalam
mendeteksi siklus setiap ada link baru yang
ditambahkan.
Mounting, Sharing dan Proteksi
z
File System Mounting
z
File Sharing
z
Proteksi
{
Tipe Akses
{
Kontrol Akses
File System Mounting
(1)
z
Sebuah sistem berkas sebelum dapat
digunakan harus dimount terlebih dahulu.
z
Mounting: proses paling awal sebelum
membuka sebuah direktori, yaitu dengan
membuat sebuah direktori baru yang
menjadi sub-tree dari tempat file system
tsb diletakkan
z
Mount point: direktori kosong tempat file
File Sharing
(1)
z
File sharing mendukung sebuah
sistem operasi yang user oriented.
z
Berhubungan dengan permission.
z
Multiple user bisa mengakses file
File Sharing
(2)
z
Multiple user
{
Owner: user yang bisa mengganti atribut,
membuka akses, dan mengontrol sebuah
file atau direktori.
{
Group: sekelompok user yang
men-share akses sebuah file.
{
Tiap user memiliki user ID
masing-masing yang unik.
File Sharing
(3)
z
Remote File System
{
Model Client-Server
{
Distributed Information System
Proteksi
z
Fungsi:
{
Menjaga aman dari kerusakan fisik
(reliability).
{
Menjaga dari akses yang tidak
diijinkan (protection).
Tipe Akses
z
Baca
z
Tulis
z
Eksekusi
z
Menambah
z
Hapus
z
Daftar
Kontrol Akses
(1)
z
Access-Control List (ACL): Suatu file atau
direktori berasosiasi dengan suatu
username dan tipe akses.
z
Owner, Group dan Universe Kontrol
Kontrol Akses
(2)
z
Klasifikasi users dalam mengakses suatu file:
{
Owner: User yang menciptakan file tsb.
{
Group: Sekelompok users yang saling
berbagi file dan tergabung dalam sebuah
kelompok kerja.
{
Universe: Semua users yang saling
terhubung dalam sistem.
z
Implementasi kontrol akses yang sering
Struktur dan Implementasi File System
z
Struktur File System
z
Organisasi File System
z
Implementasi File System
{
Partisi dan Mounting
{
Virtual File System
z
Implementasi Direktori
{
Linear List
Struktur File System
z
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
Organisasi File System
(2)
z
Masalah desain dalam membangun file system
z
Definisi dari file system - mencakup definisi file
dan atributnya, operasi ke file, dan struktur
direktori dalam mengorganisasikan file-file
z
Membuat algoritma dan struktur data yang
memetakan struktur logical file system ke tempat
penyimpanan sekunder
Organisasi File System
(3)
z
I/O control (driver device dan interrupt
handler) : Driver device adalah perantara
komunikasi antara sistem operasi dengan
perangkat keras
z
Basic file system : Mengeluarkan perintah
generic ke device driver baca dan tulis
pada suatu block dalam disk
Organisasi File System
(4)
z File-organization module : Informasi tentang logicaladdress 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
z Logical file system : tingkat ini berisi informasi tentang
simbol nama file, struktur dari direktori, proteksi dan sekuriti dari file tersebut
Implementasi File System
(1)
z
Struktur On-disk
{
Boot control block : informasi sistem untuk
menjalankan mesin
{
Partition block control : spesifikasi partisi
{
Struktur direktori : mengatur file-file
{
FCB : detil-detil file yang spesifik
Implementasi File System
(2)
z
Struktur In-Memory:
{
Table partition : informasi partisi yang di-mount
{
Struktur direktori : informasi direktori yang
paling sering diakses
{
System wide open file table : salinan dari FCB
{
Per-process open file table : pointer yang
menunjuk tempat masuk dalam system wide
open file table
Partisi dan Mounting
(1)
z
Partisi
z
Raw (tidak berisi file system)
{tidak ada file system yang tepat
{menyimpan informasi yang diperlukan disk RAID system
{berisi database kecil yang menyimpan informasi tentang RAID configuration
z
Cooked (berisi file system)
z
Sebuah bisa memiliki beberapa partisi yang
masing-masing mengandung file system dan
sistem operasi yang berbeda
Partisi dan Mounting
(2)
z
Root partition di-mount pada boot time
Partisi yang lain di-mount secara otomatis
atau manual (tergantung sistem operasi)
z
Windows setiap partisi yang di-mount
ditandai dengan huruf dan colon
z
UNIX file system dapat di-mount di semua
direktori
Virtual File System
z
Implementasi file system terdiri 3 tingkatan:
{
File system interface
z
buka, baca, tulis, dsb
{
Virtual file system
z
memisahkan operasi file system generic
dengan implementasinya
z
network file system
{
Local file system dan remote file system
(network)
Implementasi Direktori
(1)
z Efisiensi, performa dan kehandalan z Linear List
Metoda paling sederhana, dari nama file dengan pointer ke data block
{ Proses : Mencari (tidak ada nama file yang sama), tambah file baru pada akhir direktori, hapus (mencari file dalam direktori dan
melepaskan tempat yang dialokasikan)
{ Menggunakan suatu file : menandai atau menambahkan pada daftar direktori bebas
{ Kelemahan : linear search untuk mencari sebuah file, sehingga implementasi yang lambat pada cara aksesnya dan eksekusi
Implementasi Direktori
(2)
z Hash Table
{ Linear list menyimpan direktori, tetapi struktur data hash juga digunakan
{ Proses: Hash table mengambil nilai yang dihitung dari nama file dan mengembalikan sebuah penunjuk ke nama file yang ada di linear list
{ Kesulitan: ukuran tetap dan ketergantungan dari fungsi hash dengan ukuran hash table
{ Alternatif: chained-overflow hash table (setiap hash table
mempunyai linked list dari nilai individual dan kita dapat mengatasi crash dengan menambah tempat pada linked list tersebut) à namun dapat lebih lambat