17/04/2015
SISTEM OPERASI
Prio Handoko, S. Kom., M.T.I. Program Studi Teknik Informatika Universitas Pembangunan Jaya Jl. Boulevard - Bintaro Jaya Sektor VII Tangerang Selatan – Banten 15224
PENDAHULUAN Disk menyediakan sebagaian ruang untuk penyimpanan sekunder di mana sistem file dikelola. Oleh karena itu disk harus dapat memenuhi dua karakteristik berikut: • Disk harus dapat ditulis ulang di tempat yang sama • Disk harus dapat mengakses secara langsung setiap blok informasi yang dikandungnya hanya dengan memindahkan r/w head
• • • • • • •
File-System Structure File-System Implementation Directory Implementation Alocation Methods Free-Space Management Efficiency & Performance Recovery
PENDAHULUAN
Permasalahan pada desain sistem file: 1. Menentukan rancangan sistem file agar terlihat oleh pengguna (atribut, operasi dan struktur direktori) 2. Merancang algoritma dan struktur data untuk memetakan logical file system ke dalam physical secondary-storage devices.
1
17/04/2015
PENDAHULUAN application programs logical file system
Program aplikasi yang berisikan data yang akan diproses Melakukan pengelolaan terhadap metadata
file-organization module
Bagian dari sistem file yang dapat mengetahui logical block file dan physical block
basic file system
Menentukan perintah-perintah bagi perangkat yang sesuai untuk Dapat melakukan proses R/W physical block di disk
I/O control
Berisokan device controller dan interrupt handler untuk melakukan proses pengiriman data antara RAM dan disk
• Struktur disk dan memori yang diimplementasi berbeda, karena bergantung terhadap jenis OS yang dugunakan. • Untuk menciptakan sebuah file, program aplikasi memanggil logical file system, kemudian FCB dialokasikan untuk kebutuhan ini • FCB (file-control block) berisikan semua informasi yang dibituhakan untuk proses penciptaan file
device
file permission file dates (create, access, write) file owner, group, other file size file data block or pointer to file data block
directory structure
open (file name) directory structure
file-control block (FCB) user space
kernel memory
file-control block secondary storage
2
17/04/2015
Pemilihan algoritma directory-allocation dan directory-management beredampak pada efisiensi, performa, dan keandalan sistem file.
index
data block
read (index) per-process open-file table user space
system-wide open-file table
kernel memory
file-control block
1. Linear List 2. Hash Table
secondary storage
Metode paling sederhana untuk mengimplementasikan sebuah direktori untuk berbagai operasi (create, delete, dan reuse) adalah dengan menggunakan daftar nama file yang linier dengan pointer ke sebuah blok data.
Metode ini menggunakan daftar linier yang berisikan daftar entri direktori, tabel hash menggunakan nilai dihitung dari nama file yang menghasilkan pointer ke nama file dalam daftar linier. Hal ini akan mengurangi waktu pencarian nama file di tabel linier
Waktu pencarian nama file membutuhkan waktu yang lama.
3
17/04/2015
ALLOCATION METHODS
1. Contiguous Allocation 2. Linked Allocation 3. Indexed Allocation Permasalahan utama adalah bagaimana mengalokasikan ruang untuk file agar dapat diakses dengan cepat dan efektif.
ALLOCATION METHODS directory
disk 2
3
file
start
length
count
0
2
tr
24
4
mail
11
3
7
2
16
4
0
1
4
5
6
7
8
9
10
11
12
13
14
15
list
16
17
18
19
f
20
21
22
23
24
25
26
27
28
29
30
31
1. Setiap file menempati sekumpulan blok yang berurutan (linear) di dalam disk 2. Jumlah pencarian disk yang dibutuhkan untuk mengakses alokasi file yang berurutan menjadi kecil 3. File yang dialokasikan berurutan didefinisikan oleh alamat disk dan panjang block unit pertama
ALLOCATION METHODS 1. Menyelesasikan permasalah yang muncul pada contiguous allocation 2. Setiap file merupakan bagian dari senarai berkait dalam sebuah blok data 3. Setiap blok memiliki pointer ke blok berikutnya 4. Direktori berisikan pointer blok awal dan akhir file
Sulit menemukan ruang untuk file baru yang akan dipetakan ke dalam disk
4
17/04/2015
ALLOCATION METHODS directory
disk 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
file
start
end
count
9
25
ALLOCATION METHODS 1. Menyelesasikan permasalah external fragmentation dan masalah pendeklarasian ukuran (size-declaration) pada contiguous allocation 2. Menggabungkan semua pointer ke dalam sebuah lokasi index block
Hanya efektif pada file yang memiliki akses berurutan (sequential-access)
ALLOCATION METHODS directory
disk 0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
file
start
count
19
19
20 8 9 1 2 25
1. Jumlah proses tidak dapat diketahui 2. Keterbatasan ruang disk Agar dapat memantau ruang kosong (free-space) dalam disk, sistem melakukan monitoring terhadap free-space list yang berisikan informasi semua blok disk yang kosong
5
17/04/2015
HOW IT WORKS
FREE-SPACE MANAGEMENT
free-space list
Implementasi free-space list dalam bentuk bit map atau bit vector dengan ketentuan: • Setiap blok direpresentasikan oleh bit 1 • Jika bit = 1 blok bebas • Jika bit = 0 blok tengah digunakan
FREE-SPACE MANAGEMENT Sebagai contoh, jika diketahui blok 2, 3, 4, 8, 9, 11, 12, 13, 14, 19, 20, 25, 27, 28 dan 29 adalah blok bebas dan sisanya adalah blok yang telah dialokasikan untuk file, maka bit freespace list adalah sebagai berikut: 001110001101111000011000010111000
Pendekatan free-space list dalam bentuk bit vector ini relatif sederhana dan efisien dalam menemukan blok bebas pertama dalam disk
FREE-SPACE MANAGEMENT
Pendekatan yang digunakan dalam metode ini adalah: 1. semua lokasi blok bebas saling dikaitkan, dan 2. menambahkan pointer pada setiap blok bebas yang menunjukkan lokasi blok bebas berikutnya
6
17/04/2015
FREE-SPACE MANAGEMENT
FREE-SPACE MANAGEMENT
2, 3, 4, 8, 9, 11, 12, 13, 14, 19, 20, 25, 27, 28 dan 29
free-space list head 0
1
2
4
5
6
3 7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Efisiensi ruang disk sangat bergantung kepada metode pengalokasian file pada disk dan algoritma yang digunakan
Pendekatan yang dilakukan adalah dengan menambahkan nilai hitung (counting) urutan blok bebas berikutnya dimulai dari blok bebas pertama yang diidentifikasi.
Terdapat 2 system cache yang umum digunakan untuk meningkatkan performa pengalokasian ruang disk: 1. Unified virtual memory: sistem cache yang menggunakan page caching untuk menampung page proses dan file data 2. Unified buffer cache: sistem cache yang menggunkan 2 pendekatan; memory mapping dan system call read() dan write()
7
17/04/2015
Unified Virtual Memory I/O read()and write()
memorymapped I/O
Unified Buffer Cache I/O read()and write()
memorymapped I/O
page cache buffer cache buffer cache
file system
file system
SISTEM OPERASI Program sistem secara berkala membandingkan data di struktur direktori yang memiliki blok data dalam disk dan mencoba memperbaikinya jika ditemukan kerusakan Sistem melakukan penyimpanan riwayat perubahan pada struktur direktori dengan tujuan jika terjadi kerusakan, maka kondisi struktur diretori dikembalikan ke kondisi sebelum dilakukan perubahan
TERIMA KASIH Prio Handoko, S. Kom., M.T.I. Program Studi Teknik Informatika Universitas Pembangunan Jaya Jl. Boulevard - Bintaro Jaya Sektor VII Tangerang Selatan – Banten 15224
8