File atu berkas adalah representasi program dan data yang berupa kumpulan informasi yang saling berhubungan dan disimpan di perangkat penyimpanan. Sistem berkas ini sangatlah penting, karena informasi atau data yang disimpan dalam berkas adalah sesuatu yang sangat berharga bagi pengguna. Sistem operasi harus dapat melakukan operasi-operasi pada berkas, seperti membuka, membaca, menulis, dan menyimpan berkas tersebut pada sarana penyimpanan sekunder. Oleh karena itu, sistem operasi harus dapat melakukan operasi berkas dengan baik.
Sistem operasi melakukan manajemen sistem berkas dalam beberapa hal:
- Pembuatan berkas atau direktori. Berkas yang dibuat nantinya akan diletakkan pada direktori-direktori yang diinginkan pada sistem berkas. Sistem operasi akan menunjukkan tempat dimana lokasi berkas atau direktori tersebut akan diletakkan. Setelah itu, sistem operasi akan membuat entri yang berisi nama berkas dan lokasinya pada sistem berkas.
- Penghapusan berkas atau direktori. Sistem operasi akan mencari letak berkas atau direktori yang hendak dihapus dari sistem berkas, lalu menghapus seluruh entri berkas tersebut, agar tempat dari berkas tersebut dapat digunakan oleh berkas lainnya.
- Pembacaan dan menulis berkas. Proses pembacaan dan penulisan berkas melibatkan pointer yang menunjukkan posisi dimana sebuah informasi akan dituliskan di dalam sebuah berkas.
Membuat Berkas (Create):
Pertama, tempat baru di dalam sistem berkas harus di alokasikan untuk berkas yang akan dibuat.
Kedua, sebuah direktori harus mempersiapkan tempat untuk berkas baru, kemudian direktori tersebut akan mencatat nama berkas dan lokasinya pada sistem berkas.
Untuk membuat suatu berkas baru, program aplikasi memanggil logical file system. Logical file system mengetahui format dari struktur direktori. Untuk membuat berkas baru, logical file system akan mengalokasikan FCB, membaca direktori yang benar ke memori, memperbaharui dengan nama berkas dan FCB yang baru dan menulisnya kembali ke dalam disk. Beberapa sistem operasi, termasuk UNIX, memperlakukan berkas sebagai direktori. Sistem operasi Windows NT mengimplementasi beberapa system calls untuk berkas dan direktori. Windows NT memperlakukan direktori sebagai sebuah kesatuan yang berbeda dengan berkas. Logical file system dapat memanggil file-organization module untuk memetakan direktori I/O ke disk-block numbers, yang dikirimkan ke sistem berkas dasar dan I/O control system. File- organization module juga mengalokasikan blok untuk penyimpanan data-data berkas. Setelah berkas selesai dibuat, mula-mula harus dibuka terlebih dahulu. Perintah open dikirim nama berkas ke sistem berkas. Ketika sebuah berkas dibuka, struktur direktori mencari nama berkas yang diinginkan. Ketika berkas ditemukan, FCD disalin ke ke tabel system-wide open-file pada memori. Tabel ini juga mempunyai entri untuk jumlah proses yang membuka berkas tersebut. Selanjutnya, entri dibuat di tabel per-process open-file dengan penunjuk ke entri di dalam tabel system-wide open-file. Seluruh operasi pada berkas akan diarahkan melalui penunjuk ini.
Menulis sebuah berkas (Write):
Menulis pada sebuah berkas Untuk menulis pada berkas, kita menggunakan system call beserta nama berkas yang akan ditulisi dan informasi apa yang akan ditulis pada berkas. Ketika diberi nama berkas, system mencari ke direktori untuk mendapatkan lokasi berkas. Sistem juga harus menyimpan penunjuk tulis pada berkas dimana penulisan berikut akan ditempatkan. Penunjuk tulis harus diperbaharui setiap terjadi penulisan pada berkas. •
Membaca Sebuah berkas (Read):
Membaca sebuah berkas Untuk dapat membaca sebuah berkas, dapat menggunakan system call beserta nama berkas di blok memori mana berkas berikutnya diletakkan. Direktori mencari berkas yang akan dibaca dan system menyimpan penunjuk baca pada berkas dimana pembacaan berikutnya akan terjadi. Ketika pembacaan dimulai, penunjuk harus diperbaharui. Sehingga secara umum, suatu berkas ketika sedang dibaca atau ditulis, kebanyakan system hanya mempunyai satu penunjuk, baca dan tulis menggunakan penunjuk yang sama, hal ini menghemat tempat dan mengurangi kompleksitas system
Menghapus Berkas (Delete):
Untuk menghapus berkas kita perlu mencari berkas tersebut di dalam direktori. Setelah ditemukan kita membebaskan tempat yang dipakai berkas tersebut (sehingga dapat digunakkan oleh berkas lain ) dan menghapus tempatnya lagi di direktori
Speak-Speak