Transcript BAB 3

PENGURUSAN FAIL
BAB 8
1
8.1 Fungsi Pengurus Fail




Menjejaki di mana setiap fail disimpan.
Menggunakan polisi bagi menentukan di
mana dan bagaimana fail perlu disimpan.
Memperuntukkan fail kepada pengguna yang
mempunyai permit capaian yang sah.
Melepaskan peruntukan fail di dalam ingatan
semasa fail dipulangkan semula ke dalam
storan dan mengisytiharkan kesediagunaan
fail kepada pengguna lain.
2
8.2 Apa itu Fail?

Data disimpan dalam bentuk fail


dimana fail disimpan di dalam storan sekunder
seperti cakera liut, cakera magnetik, cakera padat
dan kaset.
Polisi pencapaian yang ditetapkan oleh
Pengurus Fail akan memastikan hanya
pengguna yang mempunyai capaian yang sah
(melalui penggunaan kata laluan) sahaja
yang boleh mencapai fail di dalam storan
sekunder.
3

Apabila pengguna perlu menggunakan
fail-fail tersebut, Pengurus Fail akan
menyalin fail tersebut ke dalam ingatan
dan pada yang sama memastikan status
pengguna sebagai “pengguna fail
tersebut” dicatat.
4
Fail
Nama
No ID
Jantina ……….
Umur
Medan
Rekod
5
Fail n
Fail 1
Fail 2 Fail 3
Pangkalan
Data
6
Medan


Sekumpulan bait yang diberi nama,
jenis, dan saiz supaya boleh dikenali
sebagai pengguna sebagai unit data
yang paling kecil.
Contoh:
Nama medan : Nama Pelajar
Jenis data : Aksara
Saiz : 40 aksara
7
Rekod


Rekod merupakan sekumpulan medan
yang mempunyai kaitan di antara satu
sama lain.
Contoh:
Rekod seorang pelajar yang
mengandungi medan-medan seperti
nama pelajar, jantina, nombor ID, umur,
dan alamat.
8
Fail


Sekumpulan rekod yang mempunyai kaitan di
antara satu sama lain akan membentuk
sebuah fail yang boleh digunakan oleh
pengguna.
Contoh:
Sebanyak 100 rekod pelajar boleh disimpan
sebagai sebuah fail pelajar.
Seperti medan dan rekod fail juga perlu diberi
nama khusus, jenis, dan saiz.
Pengguna boleh mencapai fail dengan
menggunakan nama fail.
9
Pangkalan data


Sekumpulan fail-fail yang mempunyai kaitan
di antara satu sama lain dan disimpan
mengikut struktur tertentu seperti hirarki
(hierarchical), hubungan (relational), dan
rangkaian (network).
Penyimpanan fail secara berstruktur
bertujuan memudahkan pengguna mencapai
data dari mana-mana fail di dalam pangkalan
data.
10
Fail program

Mengandungi arahan-arahan atau
program yang ditulis oleh pengguna
bagi melaksanakan aplikasi-aplikasi
tertentu.
11
Fail data

Mengandungi sekumpulan data yang
boleh dicapai oleh pengguna bagi
kegunaan sesuatu program aplikasi.
12
8.3 Atribut Fail (secara am)

Setiap fail disertakan maklumat-maklumat
mengenainya seperti berikut:







Nama (myfile, inventory, dll)
Jenis (.doc, .txt, dll)
Saiz (dalam unit bait)
Lokasi fizikal fail dalam storan sekunder
Tahap kawalan perlindungan capaian
Hak (Ownership) ke atas fail
Tarikh dan masa (penjanaan, penggunaan,
modifikasi)
13



Maklumat-maklumat ini disimpan di dalam fail
direktori bagi memudahkan Pengurus Fail
mencapai fail tersebut apabila diminta oleh
pengguna.
Pencarian fail memerlukan pengguna memberikan
laluan (path) kepada Pengurus Fail.
Contoh:
C: \PELAJAR\MARKAH.DOC (MS-DOS)
/usr/fakulti/pelajar/markah.doc (UNIX)
14
8.4 Operasi ke atas Fail







Jana (membentuk fail baru)
Tulis (menulis ke dalam fail yang sedia ada)
Baca (membuka fail dan melihat kandungan fail)
Cari (mencari fail mengikut laluan di mana fail
disimpan)
Hapus (membuang fail dari storan sekunder di mana
ianya disimpan)
Potong (membuang sebahagian kandungan fail)
Tambah (menambah input ke dalam fail yang sedia
ada)
15
8.5 Organisasi Fail Secara
Logikal


Fail terdiri daripada medan dan rekod.
Format rekod:




panjang tetap (fixed-length),
panjang tidak tetap (variable-length),
berblok dan
tidak berblok.
16


Rekod yang mempunyai panjang yang
tetap lebih mudah dicapai secara terus
berbanding dengan rekod yang
mempunyai panjang boleh-ubah.
Bagaimanapun rekod panjang tetap
lebih kerap menyebabkan penyesiaan
ruang.
17
Tidak berblok, panjang rekod tetap
R1
R2
R3
R4
R5
R6
Berblok, panjang rekod tetap
Blok
1
Bil.
rekod
R1
R2
R3
R4
R5
Blok
2
18
Tidak berblok, panjang rekod berubah-ubah
Panjan
g R1
R1
Panjan
g R2
R2
Panjan
g R3
R3
Berblok, panjang rekod berubah-ubah
Blo
k1
Sai
z
blo
k
Bil.
reko
d
Panjan
g R1
R1
Panjan
g R2
19
8.6 Organisasi Fail Secara
Fizikal


Merujuk kepada pemetaan dan
penyusunan rekod-rekod bagi sesuatu
fail ke atas storan secara fizikal.
Oleh demikian perlu dipertimbangkan
ciri media storan dan kaedah capaian
yang digunakan.
20

Terdapat 3 kaedah untuk
mengorganisasikan rekod :


Secara berjujukan (sequential)
Terus (direct)
Jujukan berindeks (indexed sequential)
21

Kaedah dipilih berdasarkan kriteria berikut:



Keruapan data - frekuensi berlakunya operasi
tambah dan hapus
Aktiviti Data - peratusan pemprosesan rekodrekod dalam masa larian tertentu
Saiz Fail
Masa Tindak balas - jumlah masa pengguna
bersedia tunggu sebelum operasi yang dimintanya
disempurnakan
22
(a) Organisasi Rekod Secara
Berjujukan


Kaedah pengorganisasian ini
mempunyai ciri-ciri berikut :
Paling mudah kerana maklumat dalam
fail dicapai dan diproses satu persatu
mengikut turutan
23



Operasi ‘Read’ akan baca bahagian fail
yang seterusnya.
Operasi ‘Write’ akan menambah
bahagian baru di hujung fail.
Kelemahan : algoritma
penyelenggaraan susunan asal rumit
kerana perlu dipelihara setiap kali rekod
ditambah atau dihapuskan.
24
(b) Organisasi Rekod Secara
Terus




Capaian kepada rekod adalah secara terus.
Pengguna boleh capai sebarang rekod pada
sebarang turutan tanpa perlu mencari pada
bahagian permulaan fail.
Rekod dikenal pasti melalui alamat relatif blok
rekod.
Alamat ini merujuk kepada nilai indeks yang
relatif kepada permulaan fail selalunya 0.
25



Memudahkan penentuan lokasi untuk
simpan fail.
Guna satu medan kunci untuk
menakrifkan setiap rekod secara unik.
Guna algoritma cincang (hashing
algorithm), setiap kunci ini akan ditukar
kepada nombor perwakilan alamat di
mana rekod tersebut disimpan.
26


Cepat untuk dikemaskinikan kerana
rekod yang telah diubahsuai boleh terus
ditulis kepada alamat asalnya tanpa
perlu mengekalkan susunan rekod.
Kelemahan: boleh menyebabkan
pelanggaran data (collision).
27
(c) Organisasi Rekod Secara
Jujukan Indeks





Kombinasi kaedah jujukan & capaian terus.
Guna pakej perisian Kaedah Capaian Jujukan
Berindeks.
Guna algoritma ‘hashing’/cincang untuk
menjana fail indeks --> sebagai penunjuk
(pointer).
Untuk capai fail, sistem perlu menggelintar
fail indeks untuk mendapatkan lokasi fizikal
fail dalam storan.
Kelemahan : jika untuk kuantiti rekod yang
banyak, proses capaian adalah perlahan. 28



Capaian boleh dibuat dengan pengguna
membekalkan nilai kunci di mana kunci
tersebut memberi nombor indeks blok rekod
yang ingin dicapai relatif kepada permulaan
fail.
Untuk kebanyakan jenis fail yang dinamik,
organisasi ini adalah sesuai kerana ia
membenarkan kedua-dua capaian terus dan
berjujukan kepada rekod-rekod.
Masa tindakbalas adalah pendek – baik.
29
8.7 Peruntukan Storan Fizikal


Data disimpan dalam storan sekunder dalam
bentuk fail.
Masalah utama ialah bagaimana untuk
memperuntukkan bahagian dalam ruang
cakera kepada setiap fail supaya :


Ruang cakera dapat dgunakan sepenuhnya
dengan berkesan dan
Fail mudah untuk dicapai bila masa ianya
diperlukan.
30

Dapat dilaksanakan melalui kaedah
peruntukan ruang cakeranya berikut:


Peruntukan Storan Secara Bersambungan /
Berterusan,
Tidak Bersambungan : guna konsep
pautan
Indeks
31
Storan Bersambungan



Setiap fail perlu ada 1 set blok data
yang bersambungan/berterusan atas
storan/cakera.
Pengalamatan : susunan linear.
Peruntukan fail : guna alamat blok bagi
permulaan fail dengan panjang blok
yang digunakan (dalam unit blok).
32



Direktori kemasukan setiap fail adalah
alamat mula blok dan panjang blok
yang diperuntukkan kepada fail tersebut
Capaian kepada fail : mudah
Sokong capaian : berjujukan & terus.
33

Untuk capaian berjujukan : sistem fail
hanya perlukan alamat cakera bagi blok
terakhir yang dirujuk;


jika perlu, ia harus baca alamat blok
selepas blok yang dirujuk
Untuk capaian secara terus ke blok i
dalam sesuatu fail yang bermula di
blok b, kita boleh terus capai blok b+i.
34
Storan Tidak Bersambungan



Blok-blok data sesuatu fail boleh terletak
secara berselerak di atas cakera.
Jika ruang cukup, blok-blok boleh disusun
secara sebelah menyebelah.
Jika tidak, baki yang tidak muat boleh
disimpan di bahagian lain yang kosong di
cakera iaitu tidak perlu bersebelahan tetapi
dipautkan bersama-sama menggunakan
penunding.
35


Direktori mengandungi penunding
kepada blok pertama dan blok terakhir
bagi sesuatu fail.
Contoh: Terdapat fail yang terdiri
daripada 5 blok yang bermula di blok
no. 9, bersambung ke blok 16,
kemudian blok 1, blok 10 dan akhir
sekali blok 25.
36

Kelemahan :


Kurang sesuai bagi fail capaian berjujukan
Contoh : untuk mencari blok ke i bagi sesuatu
fail, terpaksa bermula daripada awalan fail,
kemudian ikut jejak penunding sehingga
sampai ke blok ke i tersebut



Penunding perlu ruang storan tambahan
Kebolehpercayaan kurang kerana sekiranya ada di
antara penunding rosak atau
hilang, blok-blok tidak dapat dijejaki dengan
lengkap.
37
Storan Indeks




Setiap fail ada blok indeks sendiri yang terdiri
daripada 1 tata susunan alamat blok-blok
atas storan.
Senarai indeks bagi setiap masukan adalah
dalam turutan sama dengan pautan blokblok.
Kemasukan ke i dalam blok indeks
menunding ke blok ke i bagi fail tersebut.
Capaian ke rekod : secara terus.
38
8.8 Kaedah-Kaedah Capaian

Fail yang mempunyai organisasi dalam
bentuk jujukan hanya boleh menyokong
capaian berjujukan ke atas rekod-rekod
fail tersebut.
ABS= Alamat Bait Semasa,
PR= Panjang Rekod
39
Capaian Secara Berjujukan


Bagi panjang rekod yang tetap, ABS
dikemaskinikan dengan rumus di bawah:
ABS = ABS + PR
Bagi panjang rekod yang berubah-ubah,
panjang rekod (PRk) perlu ditambah dengan
nombor bait yang digunakan (N), tambah
dengan ABS.
ABS = ABS + N + PRk
40
Capaian Terus

Jika fail diorganisasikan secara terus,
ianya boleh dicapai dengan mudah
melalui turutan terus atau secara
berjujukan jika rekod adalah panjang
tetap
ABS = (NR – 1) + PR
NR = adalah no. rekod yang diingini
41
8.9 Modul Pengesahan Bagi
Kawalan Capaian




Sebagai mekanisme perlindungan
capaian.
perlu dalam persekitaran perkongsian
fail.
penting bagi mengekalkan integriti fail.
menyediakan mekanisme untuk kawal
siapa yang dibenarkan capai fail dan
jenis capaian yang dibenarkan.
42

Terdapat 4 kemungkinan operasi atas fail iaitu
:






READ ONLY (R),
WRITE ONLY (W),
EXECUTE ONLY (E),
DELETE ONLY (D).
Tidak dibenarkan capaian ditandakan dgn (-).
Setiap sistem pengurusan fail mempunyai
mekanisme kawalannya sendiri.
43

Antara mekanisme yang paling biasa
digunakan adalah:



matriks kawalan capaian – Jadual di bawah
adalah contoh matriks kawalan capaian.
senarai kawalan capaian
senarai keupayaan
kawalan kata-kunci
44
Matriks Kawalan Capaian




Mudah, sesuai bagi sistem dengan kapasiti
pengguna dan fail yang kecil.
Lajur mewakili pengguna, baris wakil fail.
Persilangan : hak capaian sah pengguna
kepada sesuatu fail.
Kelemahan:


Semakin besar sistem, semakin besar matriks,
perlu lebih ruang.
Pembaziran sebab terdapat banyak kemasukan
‘null’.
45
Senarai Kawalan Capaian


Menyenaraikan satu senarai pengguna
dan fail yang boleh mereka capai, turut
boleh menyenaraikan hak capaian
pengguna kepada sesuatu peranti.
Selalu digunakan (popular).
46
Senarai Keupayaan

Senarai yang mengandungi:


kemasukan fail serta nama pengguna yang
boleh mencapai fail tersebut
jenis capaian yang dibenarkan.
Hanya mereka yang menggunakan fail
akan disenaraikan nama manakala
pengguna lain akan dikumpulkan di
bawah tajuk global iaitu ‘WORLD’.
47
Kata-Kunci





Melindungi sebuah fail sahaja.
Bila fail dijana, pemilik fail tersebut boleh
melindunginya dengan memberikannya satu
kata-kunci.
Untuk mencapai fail ini, pengguna perlu beri
kata kunci yang tepat.
Kebaikan : memerlukan jumlah storan yang
kecil.
Kelemahan :


kata-kunci mudah diteka,
sukar kawal jenis capaian terhadap fail
48
8.10 Kaedah Pemadatan

Terdapat tiga kaedah pemadatan yang
boleh digunakan :
 Aksara Berulang
 Istilah Berulang
 “Front-end”
49
Aksara Berulang



Contoh:
Rentetan asal ialah ‘ADAMS’, disimpan
dalam medan sebagai 15 aksara (b –
aksara ruang kosong) iaitu
‘ADAMSbbbbbbbbb’.
Boleh dipadatkan untuk menjadi
‘ADAMb10’ .
50
Istilah Berulang


Setiap perkataan yang biasa digunakan di
dalam pangkalan data boleh diwakilkan
dengan aksara tunggal atau simbol.
Contoh:
Bagi pangkalan data universiti, perkataanperkataan seperti pelajar, kursus, pensyarah
boleh diwakilkan setiap satunya dengan 1
aksara /huruf tunggal.
51
“Front-end”



Dalam skima pemadatan jenis ini, data perlu
disusun dalam susunan supaya data boleh
dipadatkan
berdasarkan
kepada
data
sebelumnya.
Tambah untuk tambahan data yang unik
sahaja
Contoh:
Pangkalan data pelajar di mana nama-nama
pelajar disimpan mengikut susunan abjad
(berturutan) boleh dipadatkan.
52
Senarai Asal
Aziz,Lina
Aziz,Ida
Aziz,Ibrahim
Senarai Dipadatkan
Aziz,Lina
5Ida
5Ibrahim
53