BAB 1
SISTEM FILE
Pengertian Sistem Berkas
Sistem
berkas merupakan mekanisme penyimpanan on-line serta untuk akses, baik data
maupun program yang berada dalam system operasi. Terdapat dua bagian penting
dalam system berkas, yaitu :
·
Kumpulan berkas, sebagai tempat penyimpanan
data, serta
·
Struktur direktori, yang mengatur dan
menyediakan informasi mengenai seluruh berkas dalam system
Konsep Dasar Berkas
Komputer
dapat menyimpan informasi ke beberapa media penyimpanan yang berbeda, seperti
magnetic disks, magnetic tapes dan optical disks. Agar komputer dapat digunakan
dengan nyaman, system operasi menyediakan system penyimpanan dengan sistematika
yang seragam. Sistem operasi mengabstraksikan property fisik dari media
penyimpanannya dan mendefinisikan unit penyimpanan logis yaitu berkas. Berkas
dipetakan ke media fisik oleh system operasi. Media penyimpanan ini umumnya
bersifat non-volatile, sehingga kandungan di dalamnya tidak akan hilang jika
terjadi gagal listrik maupun system reboot.
Berkas
adalah kumpulan informasi berkait yang diberi nama dan direkam pada penyimpanan
sekunder. Dari sudut pandang pengguna, berkas merupakan bagian terkecil dari
penyimpanan logis, artinya data tidak dapat ditulis ke penyimpanan sekunder
kecuali jika berada di dalam berkas. Biasanya berkas merepresentasikan program
dan data. Data dari berkas dapat bersifat numeric, alfabetik, alfanumerik atau
pun biner. Format berkas juga bias bebas, misalnya berkas teks atau dapat juga
diformat pasti. Secara umum, berkas adalah urutan bit, byte, baris atau catatan
yang didefinisikan oleh pembuat berkas dan pengguna.
Informasi
dalam berkas ditentukan oleh pembuatnya. Ada
banyak beragam jenis informasi yang dapat disimpan dalam berkas. Hal ini
disebabkan oleh struktur tertentu yang dimiliki oleh berkas, sesuai dengan
jenisnya masing-masing. Contohnya :
·
Text file; yaitu urutan karakter yang disusun ke
dalam baris-baris
·
Source file; yaitu urutan subroutine dan fungsi
yang nantinya akan dideklarasikan
·
Object file; merupakan urutan byte yang diatur ke
dalam blok-blok yang dikenali oleh linker dari system
·
Executable file; adalah rangkaian code section
yang dapat dibawa loader ke dalam memori dan dieksekusi
Atribut Pada Berkas
Berkas
diberi nama untuk kenyamanan bagi pengguna dan untuk acuan bagi data yang
terkandung di dalamnya. Nama berkas biasanya berupa string atau karakter.
Beberapa system membedakan penggunaan huruf besar dan kecil dalam penamaan
sebuah berkas, sementara system yang lain menganggap kedua hal di atas sama.
Ketika berkas diberi nama, maka berkas tersebut akan menjadi madiri terhadap
proses, pengguna bahkan system yang membuatnya. Atribut berkas terdiri dari :
·
Nama; merupakan satu-satunya informasi yang
tetap dalam bentuk yang bias dibaca oleh manusia (human-readable form)
·
Type, dibutuhkan untuk system yang mendukung
beberapa type berbeda
·
Lokasi; merupakan pointer ke device dan ke
lokasi berkas pada device tersebut
·
Ukuran (size); yaitu ukuran berkas pada saat
itu, baik dalam byte, huruf atau pun blok
·
Proteksi; adalah informasi mengenai kontrol
akses, misalnya siapa saja yang boleh membaca, menulis dan mengeksekusi berkas
·
Waktu, tanggal dan identifikasi pengguna;
informasi ini biasanya disimpan untuk :
1.
Pembuatan berkas
2.
Modifikasi terakhir yang dilakukan pada berkas, dan
3.
Penggunaan terakhir berkas
Data tersebut
dapat berguna untuk proteksi, keamanan dan monitoring penggunaan dari berkas.
Informasi tentang seluruh berkas disimpan dalam struktur direktori yang
terdapat pada penyimpanan sekunder. Direktori, seperti berkas, harus bersifat
non-volatile, sehingga keduanya harus disimpan pada sebuah device dan baru
dibawa bagian per-bagian ke memori pada saat dibutuhkan.
Operasi Pada Berkas
Sebuah
berkas adalah jenis data abstrak. Untuk mendefinisikan berkas secara tepat,
perlu melihat operasi yang dapat dilakukan pada berkas tersebut. Sistem operasi
menyediakan system calls untuk membuat, membaca, menulis, mencari, menghapus
dan sebagainya. Berikut dapat kita lihat apa yang harus dilakukan system
operasi pada keenam operasi dasar pada berkas.
·
Membuat sebuah berkas
Ada dua
cara dalam membuat berkas. Pertama, tempat baru di dalam system 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.
·
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
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.
·
Menempatkan kembali sebuah berkas
DIrektori yang bertugas untuk mencari berkas yang bersesuaian dan
mengembalikan lokasi berkas pada saat itu. Menempatkan berkas tidak perlu
melibatkan proses I/O. Operasi ini sering disebut pencarian berkas.
·
Menghapus sebuah berkas
Untuk menghapus berkas, perlu dicari berkas tersebut di dalam direktori.
Setelah ditemukan dapat dibebaskan tempat yang dipakai berkas tersebut
(sehingga dapat digunakan oleh berkas lain) dan menghapus tempatnya di direktori.
·
Memendekkan berkas
Ada suatu
keadaan dimana pengguna menginginkan atribut dari berkas tetap sama tetapi
ingin menghapus isi dari berkas tersebut. Fungsi ini mengizinkan semua atribut
tetap sama tetapi panjang berkas menjadi nol, hal ini lebih baik daripada
memaksa pengguna untuk menghapus berkas dan membuatnya lagi.
Beberapa
informasi yang terkait dengan pembukaan berkas, yaitu :
·
Penunjuk berkas
Pada system yang tidak mengikutkan batas berkas sebagai bagian dari
system call baca dan tulis, system tersebut harus mengikuti posisi dimana
terakhir proses baca dan tulis sebagai penunjuk. Penunjuk ini unik untuk setiap
operasi pada berkas, maka dari itu harus disimpan terpisah dari atribut berkas
yang ada pada disk.
·
Penghitung berkas yang terbuka
Setelah berkas ditutup, system harus mengosongkan kembali table berkas
yang dibuka yang digunakan oleh berkas tadi atau tempat di table akan habis.
KArena mungkin ada beberapa proses yang membuka berkas secara bersamaan dan
system harus menunggu sampai berkas tersebut ditutup sebelum mengosongkan
tempatnya di table. Penghitung ini mencatat banyaknya berkas yang telah dibuka
dan ditutup dan menjadi nol ketika yang terakhir membaca berkas menutup berkas
tersebut barulah system dapat mengosongkan tempatnya di table.
·
Lokasi berkas pada disk
Kebanyakan operasi pada berkas memerlukan system untuk mengubah data yang
ada pada berkas. Informasi mengenai lokasi berka spada disk disimpan di memori
agar menghindari banyak pembacaan pada disk untuk setiap operasi.
Jenis Berkas
Jenis
berkas
|
akhiran
|
fungsi
|
Executable
|
.exe, .com,
.bat, .bin
|
Program yang
siap dijalankan
|
Objek
|
.obj, .o
|
Bahas mesin,
kode terkompilasi
|
Source Code
|
.c, .cc, .pas,
.java, .asm
|
Kode asal dari
berbagai bahasa
|
Batch
|
.bat, .sh
|
Perintah pada
shell
|
Text
|
.txt, .doc
|
Data text,
document
|
Pengolah kata
|
.wpd, .tex,
.doc
|
Format jenis
pengolah data
|
Library
|
.lib, .a, .dll
|
Library untuk
rutin program
|
Print, gambar
|
.ps, .dvi,
.gif
|
Format ASCII
atau biner untuk dicetak
|
Archive
|
.arc, .zip,
.tar
|
Beberapa
berkas yang dikumpulkan
|
Berkas Dan Akses
Sistem penyimpanan,
pengelolaan dan penyimpanan data pada alat penyimpan eksternal. Pada berkas dan
akses penyimpanan data dilakukan secara fisik.
File
Kumpulan dari record-record yang saling berhubungan.
Klasifikasi Data
1.
Kelompok Data
Tetap
Kelompok data yang tidak mengalami perubahan, paling
tidak dalam kurun waktu yang lama.
Contoh : Data pribadi mahasiswa.
2.
Kelompok Data
Tak Tetap
Kelompok data yang secara rutin mengalami perubahan.
Contoh : Data rencana studi mahasiswa.
3.
Kelompok Data
Yang Bertambah Menurut Waktu
Kelompok data ini biasanya merupakan data akumulasi
dari kelompok data tetap dan data tak tetap.
Contoh : Data transkrip.
KLasifikasi File
1.
Master File (Berkas Induk)
2.
Transaction File (Berkas Transaksi)
3.
Report File (Berkas Laporan)
4.
Work File (Berkas Kerja)
5.
Program File (Berkas Program)
6.
Text File (Berkas Teks)
7.
Dump File (Berkas Tampung)
8.
Library File (Berkas Pustaka)
9.
History File (Berkas Sejarah)
1. MASTER FILE;
Adalah file yang berisi data yang relatif tetap.
Ada 2 jenis Master File :
1.
Reference Master File;
File yang berisi record yang tak
berubah / jarang berubah.
2.
Dynamic Master File;
File yang berisi record yang terus menerus berubah
dalam kurun waktu tertentu atau berdasarkan suatu peristiwa transaksi.
2. TRANSACTION FILE
Adalah file yang berisi record-recod yang akan
memperbaharui / meng-update record-record yang ada pada master file.
Meng-update dapat berupa : Penambahan
record, penghapusan dan perbaikan record.
3. REPORT FILE
Adalah file yang berisi data yang dibuat untuk
laporan / keperluan user.
File tersebut dapat dicetak pada kertas
printer atau hanya ditampilkan di layar.
4. WORK FILE
Merupakan file sementara dalam sistem.
Suatu work file merupakan alat untuk
melewatkan data yang dibuat oleh sebuah program ke program lain. Biasanya file
ini dibuat pada waktu proses sortir.
5. PROGRAM FILE
Adalah file yang berisi instruksi-instruksi untuk
memproses data yang akan disimpan pada file lain / pada memori utama.
6. TEXT FILE
Adalah file yang berisi input data alphanumeric dan
grafik yang digunakan oleh sebuah text editor program. Text file hanya dapat
diproses dengan text editor.
7. DUMP FILE
Adalah file yang digunakan untuk tujuan pengamanan
(security), mencatat tentang kegiatan peng-update-an, sekumpulan transaksi yang
telah diproses atau sebuah program yang mengalami kekeliruan.
8. LIBRARY FILE
Adalah file yang digunakan untuk penyimpanan program
aplikasi, program utilitas atau program lainnya.
9. HISTORY FILE
File ini merupakan tempat akumulasi dari hasil
pemrosesan master file dan transaction file. File ini berisikan data yang
selalu bertambah, sehingga file ini terus berkembang, sesuai dengan kegiatan
yang terjadi.
Contoh
:
Gambar
di bawah ini menunjukkan system flow diagram dari suatu sistem penggajian
sementara untuk menghasilkan paycheck berdasarkan timecard dan payroll
information.
Tabel dibawah ini
menunjukkan klasifikasi file dari sistem flow diagram.
FILE |
FUNGSI
|
Time cards
Sort Program
Sort Work File
Sorted – Time Cards
Payroll Master
Pay Record Update
Program
Reject Time Cards
Pay Check Detail
Reconciliation
Detail
List Utility
Program
Reject Report
Paycheck Writer
Program
Pay Checks
Reconciliation
Report Writer Program
Reconciliation
Report
|
Transaction
Program
Work
Transaction
Master
Program
Work
Work
Work
Program
Report
Program
Report
Program
Report
|
MODEL AKSES FILE
Ada 3 model akses yang
mungkin oleh sebuah program terhadap file, yaitu :
1.
Input
2.
Output
3.
Input / Output
1. INPUT FILE;
Adalah file yang hanya dapat dibaca dengan program.
2. OUTPUT FILE;
Adalah file yang hanya dapat ditulis oleh sebuah
program / file yang dibuat dengan program.
3. INPUT / OUTPUT FILE;
Adalah file yang dapat dibaca dari dan ditulis ke
selama eksekusi program.
Tabel di bawah ini
menunjukkan model akses dari sistem flow diagram.
Program File |
Input
File
|
Output
File
|
I / O
File
|
1.
Sort
|
timecard
|
sorted
timecards
|
sort
workfile
|
2.
Pay record update
|
sorted
timecards
|
reject timecards
paycheck deetail reconciliation detail
|
payroll
master
|
3.
Paycheck writer
|
paycheck
detail
|
paychecks
|
|
4.
Reconciliation report
writer
|
reconciliation
detail
|
reconciliation
report
|
|
5.
List utility
|
reject
timecards
|
reject
report
|
Note :
Sebuah file
mempunyai lebih dari satu fungsi jika digunakan oleh lebih dari satu program.
ORGANISASI FILE
Adalah suatu
teknik atau cara yang digunakan menyatakan dan menyimpan record-record dalam
sebuah file.
Ada 4 teknik dasar
organisasi file, yaitu :
1.
Sequential
2.
Relative
3.
Indexed Sequential
4.
Multi – Key
Secara umum
keempat teknik dasar tersebut berbeda dalam cara pengaksesannya, yaitu :
1.
Direct Access
2.
Sequential Access
1. Direct Access;
Adalah suatu cara pengaksesan record yang langsung,
tanpa mengakses seluruh record yang ada.
2. Sequential Access;
Adalah suatu cara pengaksesan record, yang didahului
pengaksesan record-record di depannya.
Faktor-faktor
yang mempengaruhi dalam proses pemilihan organisasi file :
·
Karakteristik dari media penyimpanan yang
digunakan
·
Volume dan frekuensi dari transaksi yang
diproses
·
Respontime yang diperlukan
Cara
memilih organisasi file todak terlepas dari 2 aspek utama, yaitu :
1.
Model Penggunaannya
2.
Model Operasi File
Ø
Menurut penggunaannya
ada 2 cara :
1.
Batch;
Suatu proses yang
dilakukan secara group atau kelompok.
2.
Interactive;
Suatu
proses yang dilakukan secara satu persatu, yaitu record demi record.
Ø
Menurut operasi
file ada 4 cara :
1. Creation;
Ø
Membuat struktur file lebih dahulu, menentukan
banyak record baru, kemudian record-record dimuat ke dalam file tersebut.
Ø
Membuat file dengan cara merekam record demi
record.
2. Update;
Untuk menjaga agar file tetap up to date.
Insert / Add, Modification, Deletion.
3. Retrieval;
Pengaksesan
sebuah file dengan tujuan untuk mendapatkan informasi.
Inquiry;
Volume
data rendah, model proses interactive.
Report
Generation;
Volume data
tinggi, model proses batch.
File
Retrieval terbagi 2, yaitu :
1.
Comprehensive
Retrieval;
Mendapatkan informasi dari semua record
dalam sebuah file.
Contoh
: * Display all
* List nama, alamat
2.
Selective
Retrieval;
Mendapatkan informasi dari record-record
tertentu berdasarkan persyaratan tertentu.
Contoh
: * List for gaji = 100000
4. Maintenance;
Perubahan
yang dibuat terhadap file dengan tujuan memperbaiki penampilan program dalam
mengakses file tersebut.
q Restructuring
Perubahan struktur file.
Misalnya
:
Panjang
field diubah, penambahan field baru, panjang record dirubah.
q Reorganization
Perubahan
organisasi file dari organisasi yang satu, menjadi organisasi file yang lain.
Misalnya
:
*
Dari organisasi file sequential menjadi indeks sequential.
Secara umum dapat disimpulkan :
ü
Untuk master
file dan program file kita dapat
melakukan created, update, retrieval from dan maintenanced.
ü
Untuk work
file kita dapat melakukan created, update dan retrieved from tapi tidak
dapat kita maintenanced.
ü
Untuk report file umumnya tidak di-update,
retrieve from atau maintenanced.
ü
Untuk transaction file, umumnya hanya dapat di
created dan digunakan untuk sekali proses.
Sistem File :
Sebuah
sistem file sangat membantu para programmer untuk memungkinkan mereka mengakses
file, tanpa memperhatikan detail dari karakteristik dan waktu penyimpanan.
Sistem file ini juga yang mengatur direktori, device access dan buffer.
Tugas dari sistem file :
v
Memelihara direktori dari identifikasi file dan
lokasi informasi.
v
Menetukan jalan (pathway) bagi aliran data
antara main memory dan alat penyimpan sekunder.
v
Mengkoordinasi komunikasi antara CPU dan alat
penyimpan sekunder dan sebaliknya.
v
Menyiapkan file penggunaan input atau output.
v
Mengatur file, bila penggunaan input atau output
telah selesai.