File-System INTERFACE - opencourseware universitas

advertisement
FILE-SYSTEM
SISTEM OPERASI
IMPLEMENTATION
Prio Handoko, S. Kom., M.T.I.
Program Studi Teknik Informatika
Universitas Pembangunan Jaya
Jl. Boulevard - Bintaro Jaya Sektor VII
Tangerang Selatan – Banten 15224
AGENDA
•
•
•
•
•
•
•
File-System Structure
File-System Implementation
Directory Implementation
Alocation Methods
Free-Space Management
Efficiency & Performance
Recovery
2
FILE-SYSTEM
PENDAHULUAN
IMPLEMENTATION
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
3
FILE-SYSTEM STRUCTURE
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.
4
FILE-SYSTEM STRUCTURE
PENDAHULUAN
application programs
logical file system
file-organization module
Program aplikasi yang berisikan data yang akan diproses
Melakukan pengelolaan terhadap metadata
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
device
5
FILE-SYSTEM
IMPLEMENTATION
• 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
6
FILE-SYSTEM
IMPLEMENTATION
file permission
file dates (create, access, write)
file owner, group, other
file size
file data block or pointer to file data block
file-control block (FCB)
7
FILE-SYSTEM
IMPLEMENTATION
file open process
directory structure
open (file name)
directory structure
user space
kernel memory
file-control block
secondary storage
8
FILE-SYSTEM
IMPLEMENTATION
file READ process
index
data block
read (index)
per-process
open-file table
user space
system-wide
open-file table
kernel memory
file-control block
secondary storage
9
DIRECTORY
IMPLEMENTATION
Pemilihan algoritma directory-allocation dan
directory-management beredampak pada
efisiensi, performa, dan keandalan sistem file.
Metode:
1. Linear List
2. Hash Table
10
DIRECTORY
IMPLEMENTATION
LINEAR LIST
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.
KEKURANGAN
Waktu pencarian nama file membutuhkan waktu yang
lama.
11
DIRECTORY
IMPLEMENTATION
HASH TABLE
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
12
ALLOCATION METHODS
3 Metode utama pengalokasian ruang
1. Contiguous Allocation
2. Linked Allocation
3. Indexed Allocation
Permasalahan utama adalah bagaimana
mengalokasikan ruang untuk file agar dapat diakses
dengan cepat dan efektif.
13
CONTIGUOUS ALLOCATION
ALLOCATION METHODS
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
14
CONTIGUOUS ALLOCATION
ALLOCATION METHODS
directory
disk
file
start
length
0
1
2
3
count
0
2
4
5
6
7
tr
24
4
8
9
10
11
mail
11
3
12
13
14
15
list
7
2
16
17
18
19
f
16
4
20
21
22
23
24
25
26
27
28
29
30
31
PERMASALAHAN: Sulit menemukan
ruang untuk file baru yang akan
dipetakan ke dalam disk
15
LINKED ALLOCATION
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
16
LINKED ALLOCATION
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
PERMASALAHAN: Hanya efektif pada
file yang memiliki akses berurutan
(sequential-access)
17
INDEXED ALLOCATION
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
18
INDEXED ALLOCATION
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
19
FREE-SPACE MANAGEMENT
Alasan:
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
20
FREE-SPACE MANAGEMENT
HOW IT WORKS
free-space list
FILE
FILE
OS
21
FREE-SPACE LIST
FREE-SPACE
MANAGEMENT
IMPLEMENTATION
METODE:
1. BIT VECTOR
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
22
FREE-SPACE LIST
FREE-SPACE
MANAGEMENT
IMPLEMENTATION
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
KEUNTUNGAN
Pendekatan free-space list dalam bentuk bit vector
ini relatif sederhana dan efisien dalam menemukan
blok bebas pertama dalam disk
23
FREE-SPACE LIST
FREE-SPACE
MANAGEMENT
IMPLEMENTATION
2. LINKED LIST
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
24
FREE-SPACE LIST
FREE-SPACE
MANAGEMENT
IMPLEMENTATION
2, 3, 4, 8, 9, 11, 12, 13, 14, 19, 20, 25, 27, 28 dan 29
free-space list head
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
25
FREE-SPACE LIST
FREE-SPACE
MANAGEMENT
IMPLEMENTATION
3. COUNTING
Pendekatan yang dilakukan adalah dengan
menambahkan nilai hitung (counting) urutan
blok bebas berikutnya dimulai dari blok bebas
pertama yang diidentifikasi.
26
EFFICIENCY &
PERFORMANCE
EFFICIENCY
Efisiensi ruang disk sangat bergantung kepada
metode pengalokasian file pada disk dan
algoritma yang digunakan
27
EFFICIENCY &
PERFORMANCE
PERFORMANCE
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()
28
EFFICIENCY &
Unified
Virtual
Memory
PERFORMANCE
I/O read()and
write()
memorymapped I/O
page cache
buffer cache
file system
29
EFFICIENCY &
Unified
Buffer
Cache
PERFORMANCE
I/O read()and
write()
memorymapped I/O
buffer cache
file system
30
RECOVERY
2 TEkNIK Recovery
1. CONSISTENCY CHECKING
Program sistem secara berkala membandingkan data di
struktur direktori yang memiliki blok data dalam disk dan
mencoba memperbaikinya jika ditemukan kerusakan
2. LOG-STRUCTURE FILE SYSTEMS
Sistem melakukan penyimpanan riwayat perubahan
pada struktur direktori dengan tujuan jika terjadi
kerusakan, maka kondisi struktur diretori dikembalikan ke
kondisi sebelum dilakukan perubahan
31
FILE-SYSTEM
SISTEM OPERASI
IMPLEMENTATION
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
Download