Abdul Wahid : http://randiabdulwahid.blogspot.com/2013/04/konsep-file-dan-metode-akses.html
Dimas : http://dimaspungpungpung.blogspot.com/2013/04/pendahuluan-dan-landasan-teori.html
Emil : http://emilia-regar.blogspot.com/2013/04/struktur-direktori-dan-sistem-proteksi.html
Oscar : http://myfileocr.blogspot.com/2013/04/metode-pengalokasian-dan-struktur.html
Manajemen Ruang Kosong
Penyimpanan yang tidak
berkesinambungan dan adanya penghapusan data menyebabkan adanya ruang-ruang
bebas di disk. Oleh karena itu diperlukan manajemen ruang bebas. Caranya,
dengan membuat daftar ruang-ruang kosong. Informasi ruang kosong umumnya turut
disimpan di dalam media penyimpanan. Ruang-ruang kosong pada media penyimpanan
perlu dicatat sehingga memudahkan pengalokasian berkas yang akan disimpan.
·
Pada saat terjadi
alokasi berkas baru ataupun penghapusan berkas, informasi ruang kosong akan
diperbaharui.
·
Apabila ada berkas baru
yang ingin disimpan, maka ruang bebas dicari oleh daftar ini.
·
Untuk membuat berkas
baru, system mencari ke daftar tersebut untuk mencarikan tempat kosong yang di
butuhkan, lalu tempat tersebut dihilangkan dari daftar. Ketika berkas dihapus,
alamat berkas tadi ditambahkan pada daftar.
Teknik-teknik yang dapat digunakan untuk pencatatan ruang
kosong media penyimpanan adalah :
1. Teknik
Bit Vektor
Teknik bit vector menggunakan
satu bit untuk menyatakan kosong tidaknya setiap alamat blok media penyimpanan.
Blok yang kosong ditandai dengan angka 1 dan blok yang ada isinya ditandai
dengan angka 0. Posisi bit menyatakan alamat atau nomor blok Jumlah bit =
jumlah blok logika media penyimpan Contoh: 0100100, ini berarti blok yang
kosong adalah blok ke 1 dan 4.
Kelebihan:
ü Pencarian
ruang kosong secara cepat
ü Relatif
sederhana dan efisien untuk mencari blok pertama yang kosong atau
berturut-turut n blok yang kosong pada disk
Kekurangan:
1. Butuh
ruang tambahan untuk pencatatan bit-vector.
Contohnya:
Ukuran
blok = 212 byte,
ukuran
disk = 230 byte (1 gigabyte),
maka
ruang untuk vektor bit = 230 /212 bit = 218 (32Kb)
2. Bit
vector tidak efisien kecuali seluruh vector disimpan dalam memori utama (dan
ditulis di disk untuk kebutuhan pemulihan). Menyimpan dalam memori utama
dimungkinkan untuk disk yang kecil pada mikro komputer, tetapi tidak untuk disk
yang besar.
3. Dengan
menggunakan vektor bit bias terjadi kesalahan dimana bit[i] = 1 pada memory dan
bit[i] = 0 pada disk. Untuk mencegah terjadinya perbedaan ini, maka pada saat
pengalokasian suatu ruang kosong untuk suatu berkas dilakukan cara berikut:
set
bit[i] = 0 pada disk
alokasikan
blok[i]
set
bit[i] = 0 pada memory
2. Linked-List
Menggunakan blok-blok
kosong di media penyimpan untuk menyimpan pointer atau alamat blok kosong
berikutnya. Menyimpan pointer ke blok pertama yang kosong di tempat yang khusus
pada disk dan menyimpannya di memori. Blok kosong pertama pointer ke blok
kosong kedua, dan blok kosong kedua pointer ke blok ketiga yang kosong. Blok
kosong terakhir akan mencatat pointer yang tidak valid sebagai penanda akhir
blok yang kosong
Contoh :
kita akan menyimpan pointer ke blok ke 1
sebagai blok kosong pertama, blok 1 akan menyimpan pointer keblok 3, yang akan
menunjuk ke blok 3, blok 3 akan menyimpan pointer keblok 4 dan seterusnya
Kelebihan:
ü Menghemat
penggunaan ruang khusus
Kelemahan:
1) Jika
terjadi kerusakan pada salah satu blok kosong, maka pengelolaan ruang kosong
menjadi terganggu.
2) Pengalokasian
sejumlah blok kosong ke berkas relative lebih lambat karena untuk melintasi
daftar ini kita perlu membaca tiap blok.
3) Sulit
untuk mendapatkan ruang kosong berurutan dengan mudah.
3. Grouping
Mengumpulkan informasi
alamat blok kosong ke blok kosong pertama. Alamat blok kosong pertama perlu di
catat secara khusus pada struktur SO.Jika blok telah terisi, maka akan dihapus
dari blok alamat kosong
4. Counting
Memperhitungkan rangkaian blok-blok
kosong yang kontinu sebagai suatu segmen. Setiap segmen di catat alamat blok
kosong pertamanya dan jumlah blok kosong yang mengikutinya. Informasi segmen
dicatat pada tabel khusus.
IMPLEMENTASI DIREKTORI
Sebelum sebuah berkas dapat dibaca, berkas
tersebut harus dibuka terlebih dahulu. Saat berkas tersebut dibuka, sistem
operasi menggunakan path name yang dimasukkan oleh pengguna untuk
mengalokasikan direktori entri yang menyediakan informasi yang dibutuhkan untuk
menemukan block disk tempat berkas itu berada. Tergantung dari sistem tersebut,
informasi ini dapat berupa alamat disk dari berkas yang bersangkutan
(contiguous allocation), nomor dari blok yang pertama (keduaskema linked list),
atau nomor dari inode.
Dalam semua kasus, fungsi utama dari
direktori entri adalah untuk memetakan nama ASCII dari berkas yang bersangkutan
kepada informasi yang dibutuhkan untuk mengalokasikan data.
Masalah berikutnya yang kemudian muncul
adalah dimana atribut yang dimaksud akan disimpan. Kemungkinan paling nyata
adalah menyimpan secara langsung di dalam direktori entri, dimana kebanyakan
system menggunakannya. Untuk sistem yang
menggunakan inodes, kemungkinan lain adalah menyimpan atribut ke dalam inode,
selain dari direktori entri. Cara yang terakhir ini mempunyai keuntungan lebih
dibandingkan menyimpan dalam direktori entri. Cara pengalokasian direktori dan
pengaturan direktori dapat meningkatkan efisiensi, performa dan kehandalan. Ada
beberapa macam algoritma yang dapat digunakan.
1. Algoritma
Linear List
Metode paling sederhana.Menggunakan nama
berkas dengan penunjuk ke data blok.
Proses:
·
Mencari (tidak ada nama
berkas yang sama).
·
Menambah berkas baru
pada akhir direktori.
·
Menghapus (mencari
berkas dalam direktori dan melepaskan tempat yang dialokasikan).
Penggunaan suatu berkas:
Memberi tanda atau menambahkan pada daftar
direktori bebas.
Kelemahan:
Pencarian secara linier (linier search) untuk
mencari sebuah berkas, sehingga implementasi sangat lambat saat mengakses dan
mengeksekusi berkas.
Solusi:
Linked list dan Software Cache
2. Algoritma
Hash Table
Linear List menyimpan direktori entri,
tetapi sruktur data hash juga digunakan.
Proses:
Hash table mengambil nilai yang dihitung dari nama berkas dan mengembalikan sebuah penunjuk ke nama berkas yang ada di linier list.
Hash table mengambil nilai yang dihitung dari nama berkas dan mengembalikan sebuah penunjuk ke nama berkas yang ada di linier list.
Kelemahan:
·
Ukuran tetap
·
Adanya ketergantungan
fungsi hash dengan ukuran hash table
Alternatif:
Chained-overflow hash table yaitu setiap hash
table mempunyai linked list dari nilai individual dan crash dapat diatasi
dengan menambah tempat pada linked list tersebut. Namun penambahan ini dapat
memperlambat.
EFISIENSI DAN UNJUK KERJA
Efisiensi tergantung pada :
Alokasi disk dan algoritma
direktori
Tipe data yang dilindungi pada
direktori file
Unjuk Kerja
disk cache – memisahkan bagian
main memori yang sering digunakan sebagai blok.
Teknik free-behind dan
read-ahead – digunakan untuk optimasi akses sequensial
Meningkatkan unjuk kerja PC
dengan menggunakan bagian memori seperti virtual disk atau RAM disk.
RECOVERY
Data
recovery adalah proses menyelamatkan data dari kerusakan, gagal, atau tidak
dapat diakses media penyimpanan sekunder ketika tidak dapat diakses normal. Sering kali data diselamatkan dari media
penyimpanan seperti drive internal atau eksternal hard disk, solid-state drive
(SSD), USB flash drive, kaset penyimpanan, CD, DVD, RAID, dan elektronik
lainnya.
Pemulihan mungkin diperlukan karena kerusakan
fisik pada perangkat penyimpanan atau kerusakan logis untuk mencegah sistem file yang dipasang oleh
sistem operasi host. Skenario yang paling umum, "pemulihan
data" melibatkan sistem operasi (OS) (biasanya pada disk-tunggal,
tunggal-partisi, sistem single-OS), dalam hal ini tujuannya adalah hanya untuk
menyalin semua file yang diinginkan ke disk lain.
Hal
ini dapat dengan mudah dicapai dengan menggunakan Live CD, banyak yang
menyediakan sarana untuk me-mount sistem drive dan disk cadangan atau removable
media, dan untuk memindahkan file dari disk sistem ke media backup dengan
manajer file atau perangkat lunak authoring cakram optik .
Kasus
seperti itu dapat diatasi dengan partisi disk dan konsisten menyimpan file data
berharga (atau salinan dari mereka) pada partisi yang berbeda dari file sistem
OS diganti. Skenario lain melibatkan kegagalan disk-tingkat, seperti sistem
dikompromikan file atau partisi disk, atau kegagalan hard disk. Dalam setiap
kasus ini, data tidak dapat dengan mudah dibaca. Tergantung pada situasi,
solusi memperbaiki sistem file, tabel partisi atau master boot record, atau teknik
pemulihan hard disk mulai dari pemulihan berbasis perangkat lunak data rusak,
hardware-software pemulihan berbasis wilayah pelayanan yang rusak (juga dikenal
sebagai hard drive "firmware"), untuk penggantian hardware pada disk
yang rusak secara fisik.
Jika
pemulihan hard disk diperlukan, disk itu sendiri biasanya telah gagal, dan
fokusnya adalah lebih pada pemulihan satu kali, menyelamatkan apa pun data yang
dapat dibaca. Dalam skenario ketiga, file sudah "dihapus" dari media
penyimpanan. Biasanya, isi dari file yang dihapus tidak segera dihapus dari
drive, melainkan referensi kepada mereka dalam struktur direktori yang dihapus,
dan ruang yang mereka tempati dibuat tersedia untuk nanti Timpa. Sementara itu,
isi file asli tetap, sering di sejumlah fragmen terputus, dan mungkin dapat
dipulihkan.
Materi selanjutnya akan dibahas oleh Tarmuji :
http://konsepmemograman-tarmuji.blogspot.com/2013/04/kesimpulan_1252.html
Materi selanjutnya akan dibahas oleh Tarmuji :
http://konsepmemograman-tarmuji.blogspot.com/2013/04/kesimpulan_1252.html
Tidak ada komentar:
Posting Komentar