Selasa, 23 April 2013

SISTEM BERKAS


1. Sistem Berkas
Semua aplikasi komputer butuh menyimpan dan mengambil informasi. Ketika sebuah
proses sedang berjalan, proses tersebut menyimpan sejumlah informasi yang terbatas,
dibatasi oleh ukuran alamat virtual. Untuk beberapa aplikasi, ukuran ini cukup, namun
untuk lainnya terlalu kecil.
Masalah berikutnya adalah apabila proses tersebut berhenti maka informasinya hilang.
Padahal ada beberapa informasi yang penting dan harus bertahan beberapa waktu bahkan
selamanya.
Adapun masalah ketiga yaitu sangatlah perlu terkadang untuk lebih dari satu proses
mengakses informasi secara berbarengan. Untuk memecahkan masalah ini, informasi
tersebut harus dapat berdiri sendiri tanpa tergantung dengan sebuah proses.
Pada akhirnya kita memiliki masalah-masalah yang cukup signifikan dan penting untuk
dicari solusinya.
Pertama kita harus dapat menyimpan informasi dengan ukuran yang besar. Kedua,
informasi harus tetap ketika proses berhenti. Ketiga, informasi harus dapat diakses oleh
lebih dari satu proses secara bersamaan. Solusi dari ketiga masalah diatas adalah sesuatu
yang disebut berkas.
Berkas adalah sebuah unit tempat menyimpan informasi. Berkas ini dapat diakses lebih
dari satu proses, dapat dibaca, dan bahkan menulis yang baru. Informasi yang disimpan
dalam berkas harus persisten, dalam artian tidak hilang sewaktu proses berhenti. Berkasberkas
ini diatur oleh sistem operasi, bagaimana strukturnya, namanya, aksesnya,
penggunaannya, perlindungannya, dan implementasinya. Bagian dari sistem operasi yang
mengatur masalah-masalah ini disebut sistem berkas.
Untuk kebanyakan pengguna, sistem berkas adalah aspek yang paling terlihat dari sebuah
sistem operasi. Dia menyediakan mekanisme untuk penyimpanan online dan akses ke
data dan program. Sistem berkas terbagi menjadi dua bagian yang jelas; koleksi berkas
(masing-masing menyimpan data yang berkaitan) dan struktur direktori (mengatur dan
menyediakan informasi mengenai semua berkas yang berada di sistem). Sekarang
marilah kita memperdalam konsep dari berkas tersebut.

2. Konsep Berkas
Berkas adalah sebuah koleksi informasi berkaitan yang diberi nama dan disimpan di
dalam secondary storage.
Biasanya sebuah berkas merepresentasikan data atau program. Adapun jenis-jenis dari
berkas:
Text file: yaitu urutan dari karakter-karakter yang diatur menjadi barisan dan mungkin
halaman.
Source file: yaitu urutan dari berbagai subroutine dan fungsi yang masing-masing
kemudian diatur sebagai deklarasi-deklarasi diikuti oleh pernyataan-pernyataan yang
dapat diexecute.
Object file: yaitu urutan dari byte-byte yang diatur menjadi blok-blok yang dapat
dipahami oleh penghubung system.
Executable file: adalah kumpulan dari bagian-bagian kode yang dapat dibawa ke
memori dan dijalankan oleh loader.


3. Atribut berkas
Selain nama dan data, sebuah berkas dikaitkan dengan informasi-informasi tertentu yang
juga penting untuk dilihat pengguna, seperti kapan berkas itu dibuat, ukuran berkas, dan
lain-lain. Kita akan sebut informasi-informasi ekstra ini atribut. Setiap sistem mempunyai
sistem atribusi yang berbeda-beda, namun pada dasarnya memiliki atribut-atribut dasar
seperti berikut ini:
1. Nama: nama berkas simbolik ini adalah informasi satu-satunya yang disimpan
dalam format yang dapat dibaca oleh pengguna.
2. Identifier: tanda unik ini yang biasanya merupakan sebuah angka, mengenali
berkas didalam sebuah sistem berkas; tidak dapat dibaca oleh pengguna.
3. Jenis: informasi ini diperlukan untuk sistem-sistem yang mendukung jenis berkas
yang berbeda.
4. Lokasi: informasi ini adalah sebuah penunjuk pada sebuah device dan pada lokasi
berkas pada device tersebut.
5. Ukuran: ukuran dari sebuah berkas (dalam bytes, words, atau blocks) dan
mungkin ukuran maksimum dimasukkan dalam atribut ini juga.
7
6. Proteksi: informasi yang menentukan siapa yang dapat melakukan read, write,
execute, dan lainnya.
7. Waktu dan identifikasi pengguna: informasi ini dapat disimpan untuk pembuatan
berkas, modifikasi terakhir, dan penggunaan terakhir. Data-data ini dapat berguna
untuk proteksi, keamanan, dan monitoring penggunaan.

4. Jenis Berkas
Salah satu atribut dari sebuah berkas yang cukup penting adalah jenis berkas. Saat kita
mendesain sebuah sistem berkas, kita perlu mempertimbangkan bagaimana operating
sistem akan mengenali berkas-berkas dengan jenis yang berbeda. Apabila sistem operasi
dapat mengenali, maka menjalankan berkas tersebut bukan suatu masalah.
Seperti contohnya, apabila kita hendak mengeprint bentuk binary-object dari sebuah
program, yang didapat biasanya adalah sampah, namun hal ini dapat dihindari apabila
sistem operasi telah diberitahu akan adanya jenis berkas tersebut.
Cara yang paling umum untuk mengimplementasikan jenis berkas tersebut adalah dengan
memasukkan jenis berkas tersebut ke dalam nama berkas. Nama berkas dibagi menjadi
dua bagian. Bagian pertama adalah nama dari berkas tersebut, dan yang kedua, atau biasa
disebut extention adalah jenis dari berkas tersebut. Kedua nama ini biasanya dipisahkan
dengan tanda ’.’, contoh: berkas.txt.

5. Operasi Berkas
Fungsi dari berkas adalah untuk menyimpan data dan mengizinkan kita membacanya.
Dalam proses ini ada beberapa operasi yang dapat dilakukan berkas. Adapun operasioperasi
dasar yang dilakukan berkas, yaitu:
1. Membuat Berkas (Create):
Kita perlu dua langkah untuk membuat suatu berkas. Pertama, kita harus temukan
tempat didalam sistem berkas. Kedua, sebuah entri untuk berkas yang baru harus
dibuat dalam direktori. Entri dalam direktori tersebut merekam nama dari berkas
dan lokasinya dalam sistem berkas.

2. Menulis sebuah berkas (Write):
Untuk menulis sebuah berkas, kita membuat sebuah system call yang
menyebutkan nama berkas dan informasi yang akan di-nulis kedalam berkas.
3. Membaca Sebuah berkas (Read):
Untuk membaca sebuah berkas menggunakan sebuah system call yang menyebut
nama berkas yang dimana dalam blok memori berikutnya dari sebuah berkas
harus diposisikan.
4. Memposisikan Sebuah Berkas (Reposition):
Direktori dicari untuk entri yang sesuai dan current-file-position diberi sebuah
nilai. Operasi ini di dalam berkas tidak perlu melibatkan I/O, selain itu juga
diketahui sebagai file seek.
5. Menghapus Berkas (Delete):
Untuk menghapus sebuah berkas kita mencari dalam direktori untuk nama berkas
tersebut. Setelah ditemukan, kita melepaskan semua spasi berkas sehingga dapat
digunakan kembali oleh berkas-berkas lainnya dan menghapus entry direktori.
6. Menghapus Sebagian Isi Berkas (Truncate):
User mungkin mau menghapus isi dari sebuah berkas, namun menyimpan
atributnya. Daripada memaksa pengguna untuk menghapus berkas tersebut dan
membuatnya kembali, fungsi ini tidak akan mengganti atribut, kecuali panjang
berkas dan mendefinisikan ulang panjang berkas tersebut menjadi nol.
Keenam operasi diatas merupakan operasi-operasi dasar dari sebuah berkas yang
nantinya dapat dikombinasikan untuk membentuk operasi-operasi baru lainnya.
Contohnya apabila kita ingin menyalin sebuah berkas, maka kita memakai operasi create
untuk membuat berkas baru, read untuk membaca berkas yang lama, dan write untuk
menulisnya pada berkas yang baru.

6. Struktur Berkas
Berkas dapat di struktur dalam beberapa cara. Cara yang pertama adalah sebuah urutan
bytes yang tidak terstruktur. Akibatnya sistem operasi tidak tahu atau peduli apa yang ada
dalam berkas, yang dilihatnya hanya bytes. Ini menyediakan fleksibilitas yang
maksimum. User dapat menaruh apapun yang mereka mau dalam berkas, dan sistem
operasi tidak membantu, namun tidak juga menghalangi.
Cara berikutnya, adalah dengan record sequence. Dalam model ini, sebuah berkas adalah
sebuah urutan dari rekaman-rekaman yang telah ditentukan panjangnya, masing-masing
dengan beberapa struktur internal. Artinya adalah bahwa sebuah operasi read
membalikan sebuah rekaman dan operasi write menimpa atau menambahkan suatu
rekaman.
Struktur berkas yang ketiga, adalah menggunakan sebuah tree. Dalam struktur ini sebuah
berkas terdiri dari sebuah tree dari rekaman-rekaman tidak perlu dalam panjang yang
sama, tetapi masing-masing memiliki sebuah field key dalam posisi yang telah ditetapkan
dalam rekaman tersebut. Tree ini disort dalam field key dan mengizinkan pencarian yang
cepat untuk sebuah key tertentu.
7. Metode Akses
Berkas menyimpan informasi. Apabila sedang digunakan informasi ini harus diakses dan
dibaca melalui memori komputer. Informasi dalam berkas dapat diakses dengan beberapa
cara. Berikut adalah beberapa caranya:
1. Akses Sekuensial
Akses ini merupakan yang paling sederhana dan paling umum digunakan.
Informasi di dalam berkas diproses secara berurutan. Sebagai contoh, editor dan
kompilator biasanya mengakses berkas dengan cara ini.
2. Akses Langsung
Metode berikutnya adalah akses langsung atau dapat disebut relative access.
Sebuah berkas dibuat dari

Tidak ada komentar:

Posting Komentar