Penjadwalan LOOK dan C-LOOK

Bab 20. Sistem Penyimpanan Masal

20.1. Pendahuluan

Pada umumnya, penyimpanan sekunder berbentuk magnetic, kecepatan pengaksesan memori ini jauh lebih lambat dibandingkan memori utama. Pada bagian ini akan diperkenalkan konsep-konsep yang berhubungan dengan memori sekunder seperti system berkas, atribut dan operasi system berkas, struktur direktori, atribut dan operasi struktur direktori, system berkas jaringan, system berkas virtual, system berkas GNUlinux, keamanan system berkas, FHS File Hierarchy Systems, serta alokasi blok system berkas. Karakteristik dari perangkat penyimpanan tersier pada dasarnya adalah menggunakan removable media yang tentu saja berdampak pada biaya produksi yang lebih murah. Sebagai contoh: sebuah VCR dengan banyak kaset akan lebih murah daripada sebuah VCR yang hanya dapat memaminkan satu kaset saja. Struktur disk merupakan suatu hal yang penting bagi penyimpanan informasi. Sistem komputer modern menggunakan disk sebagai media penyimpanan sekunder, dulu pita makgnetik digunakan sebelum penggunaan disk sebagai media penyimpanan, sekunder yang memiliki waktu akses yang lebih lambat dari disk. Sejak digunakan disk, tape digunakan untuk beckup, untuk menyimpan informasi yang tidak sering digunakan, sebagai media untuk memindahkan informasi dari satu sistem ke sistem lain, dan untuk menyimpan data yang cukup besar bagi sistem disk.

20.2. Format

Disk adalah salah satu tempat penyimpanan data. Sebelum sebuah disk dapat digunakan, disk harus dibagi-bagi dalam beberapa sektor. sektor-sektor ini yang kemudian akan dibaca oleh penegendali pembentukan sektor-sektor ini disebut low level formatting atau physical formatting. low level formatting juga akan mengisi disk dengan beberapa struktur data penting seperti header dan trailer. Header dan trailer mempunyai informasi seperti nomor sektor, dan error correcting codeECC. ECC ini berfungsi sebagai correcting code karena mempunyai kemampuan untuk medeteksi bit yang salah, menghitung nilai yang benar dan kemudian mengubahnya. ketika proses penulisan, ECC di update dengan menghitung bit di area data. pada proses pembacaan, ECC dihitung ulang dan dicocokan dengan nilai ECC yang tesimpan saat penulisan. jika nilainya berbeda maka dipastikan ada sektor yang terkorup. Agar dapat menyimpan data, OS harus menyimpan struktur datanya dalam disk tersebut. proses itu dilakukan dalam dua tahap, yaitu partisi dan logical formatting. partisi akan membagi disk menjadi beberapa silinder yang dapat diperlukan secara independen. logical formatting akan membentuk sistem berkas yang disertai pemetaan disk. terkadang sistem berkas ini dirasakan menggangu proses alokasi suatu data, sehingga diadakan sistem partisi yang tidak mengikutkan pembentukan sistem berkas, sistem raw disk Gambar 20.1. Format sektor 159 Walaupun ukuran sektor dapat diatur pada proses formatting, namun kebanyakan disk memiliki sektor dengan ukuran 512 byte dengan alas an bahwa beberapa OS dapat menangani ukuran sektor 512. namun kemungkinan juga untuk memformat sektor dengan ukuran misalnya 256 bytes atau 1024 bytes. Jika ukuran sektor semakin besar, itu artinya semakin sedikit jumlah sektor yang dapat dibuat, begitupun sebaliknya. Bagian preamble mengandung bi-bit yang berisi informasi yang akan dikenali oleh hardware misalnya tentang informasi nomor silinder atau sektor. Proses formatting sendiri sebenarnya terdiri dari dua proses utama, yaitu partisi dan logical formatting. Proses partisi akan membagi disk menjadi beberapa silinder sehingga silinder-silinder tersebut akan diperlakukan secara independen seolah-olah mereka adalah disk yang saling berbeda. Sedangkan proses logical formatting akan membentuk sebuah berkas system beserta pemetaan disk . Perlu diingat bahwa beberapa OS memberlakukan berkas system khusus yang berbeda satu sama yang lain. Sehingga mungkin saja dirasakan mengganggu proses alokasi data. Hal ini dapat disiasati dengan system partisi lain yang tidak mengikutkan pembentukan file system, yang disebut raw disk raw partition. Sebagai contoh, pada Windows XP ketika kita membuat sebuah patisi tanpa menyertakan suatu berkas system ke dalamnya maka partisi tersebut dapat disebut sebagai raw partition.

20.3. Boot

Booting adalah istilah teknologi informasi dalam bahasa ingris yang mengacu kepada proses awal menyalakan komputer dimana semua register prosesor disetting kosong, dan status mikroprosesorprosesor disetting reset. Kemudian address 0xFFFF diload di segment code code segment dan instruksi yang terdapat pada alamat address 0xFFFF tersebut dieksekusi. Secara umum program BIOS Basic Input Output System, yaitu sebuah software dasar, terpanggil. Sebab memang biasanya BIOS berada pada alamat tersebut. Kemudian BIOS akan melakukan cek terhadap semua error dalam memory, device-device yang terpasangtersambung kepada komputer -- seperti port-port serial dan lain-lain. Inilah yang disebut dengan POSTPower-On Self Test. Setelah cek terhadap sistem tersebut selesai, maka BIOS akan mencari [Sistem Operasi], memuatnya di memori dan mengeksekusinya. Dengan melakukan perubahan dalam setup BIOS kita dapat melakukannya dengan menekan tombol tertentu saat proses booting mulai berjalan, kita dapat menentukan agar BIOS mencari Sistem operasi ke dalam floppy disk, hard disk, CD-ROM, USB dan lain-lain, dengan urutan yang kita inginkan. BIOS sebenarnya tidak memuat Sistem Operasi secara lengkap. Ia hanya memuat satu bagian dari code yang ada di sektor pertama first sector, disebut juga boot sector pada media disk yang kita tentukan tadi. Bagianfragmen dari code Sistem Operasi tersebut sebesar 512 byte, dan 2 byte terakhir dari fragmen code tersebut haruslah 0xAA55 disebut juga sebagai boot signature. Jika boot signature tersebut tidak ada, maka media disk dikatakan tidak bootable, dan BIOS akan mencari Sistem Operasi pada media disk berikutnya. Fragmen code yang harus berada pada boot sector tadi disebut sebagai boot-strap loader. BIOS akan memuat boot-strap loader tersebut ke dalam memory diawali pada alamat 0x7C00, kemudian menjalankan boot-strap loader tadi. Akhirnya sekarang kekuasaan berpindah kepada boot-strap loader untuk memuat Sistem Operasi dan melakukan setting yang diperlukan agar Sistem Operasi dapat berjalan. Rangkaian proses inilah yang dinamakan dengan booting. Saat sebuah computer dijalankan, system akan mencari sebuah initial program yang akan memulai segala sesuatunya. Initial programnya initial bootstrap bersifat sederhana dan akan menginisialisasi seluruh aspek yang dibutuhkan computer untuk beroperasi dengan baik seperti CPU Register, controller, dan terakir adalah Sistem Operasinya. Pada kebanyakan computer, bootstrap disimpan di ROM read only memory kanrena letaknya yang tetap dan dapat dieksekusi waktu pertama kali listrik dijalankan. Letak bootstrap di ROM juga menguntungkan karena sifatnya yang read only memungkinkan dia untuk tidak terinveksi virus. Untuk alasan praktis, bootstrap sering dibuat berbentuk kecil tiny loader dan diletakan di ROM yang kemungkinan akan me-load full bootstrap dari disk bagian disk yang disebut boot block. Perubahan berbentuk simple ini bertujuan jika ada perubahan yang diadakan perubahan pada bootstrap, maka stuktur ROM tidak perlu dirubah semuanya. Konsep boot block sangan erat kaitannya dengan proses booting pada sebuah computer. Ketika computer dinyalakan, sistem akan mencari sebuah initial program yang akan memulai segalah sesuatu yang berhubungan dengan proses booting. Program ini dikenal sebagai initial bootstrap dan akan menginisialisasi seluruh aspek yang dibutuhkan computer untuk beroperasi dengan baik seperti CPU Register, controller, dan terakir adalah Sistem Operasinya. Pada Pentium 160 dan kebanyakan computer , MBR terletak pada sector 0 dan mengandung beberapa boot code dan beserta table partisi. Table partisi ini mengandung berbagai informasi misalnya letak sector pertama pada setiap partisi dan ukuran partisi. Agar isa melakukan boot dari hard disk, salah satu partisi yang terdapat pada table partisi, harus ditangdai sebagai active partition. Boot block tidak selalu mengandung kernel. Bisa saja ia derupa sebuah boot loader, misalnya LILO Linux Loader atau GRUB GRand Unified Bootloader. Contoh komfigurasi sebuah inisialisasi boot loader misalnya dapat ditemukan pada Linux Ubuntu 5.04 yang berada pada file bootgrubmenu.lst. sedangkan pada sistem windows XP, konfigurasinya dapat ditemukan pada berkas C:\boot.ini degan catatan bahwa C:\ adalah volume atau partisi yang di-set sebagai active partition.

20.4. Bad Block

Bad block adalah satu atau lebih sektor yang cacat atau rusak. kerusakan ini akan diakibatkan karena kerentanan disk jika sering dipindah-pindah atau kemasukan benda asing. akibatnya, data didalam bed block menjadi tidak terbaca. Pada disk sederhana seperti IDE controller, bad block akan ditangani secara manual seperti dengan perintaj format MS-DOS yang akan mencari bad block dan menulis nilai spesial ke FAT entry agar tidak mengalokasikan slidebaru. branch rountine ke block tersebut. SCSI mengatasi bad block dengan cara yang lebih baik. daftar bad block-nya di pertahankan oleh controller saat low-level formaating dan terus diperbaharui selama disk itu digunakan. low-leveel formating, akan memindahkan bad sector itu ke tempat lain yang kosong dengan algoritma sector sparingsector forwarding. sector sparing dijalankan dengan cara ECC mendeteksi bad sector dan melaporkannya ke OS, sehingga saat sistem dijalankan sekali lagi, controller akan menggantikan bad sector tersebut dengan sektor kosong. lain halnya dengan algoritma sector slipping. ketika sebuah bad sector terdeteksi, sistem akan mengcopy semua isi sektor ke sektor selanjutnya secara bertahap secara satu per satu sampai ditemukan sektor kosong. misal bad sector ditemukan di sektor 7 dan sektor-sektor selanjutnya hanyalah sektor 30 dan seterusnya. Maka isi sektor 30 akan akan di-copy keruang kosong sementara itu sektor 29 ke sektor 30, 28 ke 29, 27 ke 28 dan seterusnya hingga sektor 8 ke sektor 9. dengan demikian, sektor 8 menjadi kosong sehingga sektor 7bad sectordapat di-map ke sector 8. perlu diingat bahwa kedua algoritma diatas juga tidak selalu berhasil karena data yang telah tersimpan didalam bad block biasanya sudah tidak bisa terbaca

20.5. Swap

Swap space adalah istilah lain untuk backing store. Swap space dapat diletakan pada file sistem dalam bentuk swap file atau dalm partisi disk yang terpisah. dengan megunakan file sistem akan terjadi overhead yang cukup segnifikan. overhead dapat dikurangi dengan mengunakan aplikasi yang megalokasikan swap file dalam block disk yang berdekatan. lebih umum lagi, partisi yang terpisah digunakan ketika tidak ada file sisitem.solaris linux mengijinkan pertukaran antara raw partition dan file system. Managemen Ruang Swap adalah salah satu low level task dari OS. Memori virtual mengunakan ruang disk sebagai perluasan dari memori utama. Tujuan utamanya adalah untuk menghasilkan output yang baik. Namun dilain pihak, pengguanaan disk akan memperlambat akses karena akses dari memori jauh lebih cepat. Penggunaan Ruang Swap. Ruang Swap digunakan dalam beberapa cara tergantung penerapan algoritma. Sebagai contoh, sistem yang menggunakan swapping dapat menggunakan ruang swap untuk menggunakan seluruh proses trmasuk data yang segmen. Jumlah dari ruang swap yang dibutuhkan dari jumlah memori fisik, jumlah dari memeori virtual yang dijalankan, cara penggunaan memori virtual tersebut. beberapa sistem operasi seperti UNIX menggunakan banyak ruang swap, yang biasa diletakan pada disk terpisah. Ketika kita menentukan besarnya ruang swap, sebaiknya kita tidak terlalu banyak atau terlalu sedikit. Namun perlu diketahui bahwa akan lebih aman jika mengalokasikan lebih ruang swap. Jika sistem dijalankan dan ruang swap terlalu sedikit, maka proses akan dihentikan dan mungkin akan merusak sistem. sebaliknya jika terlalu banyak juga akan mengakibatkan lamanya akses dan pemborosan ruang disk, tetapi hal itu tidak menimbulkan resiko terhantinya proses. Sebagai contoh, Linux memperbolehkan penggunaan banyak ruang swap 161