Professional Documents
Culture Documents
OS 9atnaujinta
OS 9atnaujinta
FAILŲ SISTEMOS
9 paskaita.
Failų sistemos
Faktiškai visos programos turi gauti, naudoti ir saugoti
duomenis.
Procesai:
1. Vykdymo metu duomenis saugo virtualioje atmintyje;
2. Kai procesas baigia darbą, duomenys dingsta;
3. Procesai virtualioje atmintyje turi mažai duomenų;
4. Problemos kyla dėl bendro naudojimo. (Pav. jei telefonų
knyga bus vieno proceso nuosavybė, jį bus patalpinta jo
adresų erdvėje ir tik tas procesas galės ja naudotis.)
OS nesikiša.
OS spendžia, kur
prijungti naują šaką.
Paprastai ieško
įrašo pagal raktą.
Įrašai gali būti
skirtingu dydžių.
Naudojama
Meinfreimuose.
Failai (vartotojo požiūriu)
• Failo sūkūrimo metu jam yra suteikiamas vardas, kuriuo
vėliau galima kreiptis į failą.
• Nustatytos tikslios vardų suteikimo taisyklės, kurios
priklauso nuo operacinės sistemos. Pav. vardo ilgis – 255.
Paprastai failo vardas sudarytas iš dviejų dalių:
Failo_vadas.plėtinys
• Delete (pašalinti)
• Open (atidaryti)
• Close (uždaryti)
• Read (skaityti)
• Write (rašyti)
• Append (papildyti)
• Seek (paieška)
• Rename (pervardinti)
Failų atributai
• Apsauga
• Įrašo ilgis
• Slaptažodis
• Sukūrimo laikas
• Failo kūrėjas
• Paskutinio kreipinio laikas
• Savininkas
• Paskutinio pakeitimo laikas
• Atributas “tik skaitymui”
• Esamas failo dydis
• Atributas “paslėptas”
• Galimas maksimalus failo dydis
• Atributas “sisteminis”
• Atributas “archyvinis”
• Atributas “ASCII/dvejetainis”
• Atributas “laikinas”
Failų atributai
Katalogai
A B C
A A B C C C
Hierarchinė katalogų sistema
UNIX katalogų medis
Veiksmai su katalogais
• Create (sukurti)
• Delete (pašalinti)
• Opendir (atidaryti)
• Closedir (uždaryti)
• Readdir (skaityti)
• Rename (pervardinti)
• Unlink
Failų sistemos realizacija
• Svarbiausias klausimas, kaip saugoti failo blokus
atmintyje.
Būdai:
• Nepertraukiamas failų išdėstymas;
• Venkryptis sąrašas;
• I- mazgai
Nepertraukiamas failų išdėstymas
(Contiguous Allocation)
Trūkumai:
• Jei mums reikia kreiptis į 9 loką, OS turi perskaityti 8
blokus. Suprantama, kad tokia schema bus lėta.
• Bloko rodyklei reikia 2 Baitų. Os skaito 512B 1024B,
2048B. Tai reiškia, kad rodyklei reikės papildomo bloko.
Ši problema dingsta, jei rodykles sudedame į atminties
lentelę.
Vienkryptis sąrašas ir atminties lentelė
File allocation table (FAT)
•Lentelė turi vieną įrašą vienam
disko blokui.
•Visi failų blokai sujingti
vienkrypčio sąrašo principu
•Katalogai turi kiekvieno failo
pirmo bloko numerį.
•FAT lentelė saugoma
operatyviojoje atmintyje
Naudojama: MS-DOS
Vienkryptis sąrašas ir atminties lentelė
Trūkumai:
•FAT lentelė saugoma operatyviojoje atmintyje ir joje yra
visi failai;
• Visų failų rodyklės yra sumaišytos vienoje lentelėje.
Pav.
20GB – diskas;
1KB – bloko dydis;
Lentelės dydis: 20 milijonų įrašų.
Įrašo dydis min= 3B, jei norime efektyvesnės paieškos 4B;
Lentelė bus: 60MB arba 80 MB
Galėtume naudoti virtualią atmintį, bet kiek sugaišime
perkėlimui iš/į RAM.
I - mazgai
Kiekvienas failas turi lentelę
I-mazgą. Per I-mazgą galima
rasti visus failo blokus.
Vienas iš sprendimų:
rezervuoti paskutinį bloką ne
duomenims, o papildomam
adresų blokui. Kaip parodyta
paveiksle.
Katalogų realizacija(1)
• Norint perskaityti failą, reikia jį atidaryti.
• Failų atidarymui Os naudoja vartotojo nustatytus kelius,
kad rasti failą kataloge.
• Kataloge saugoma informacija, reikalinga disko bloko
radimui, kuri priklauso nuo sistemos:
1. Viso failo disko adresas (nepertraukiamu failų atveju);
2. Pirmo bloko numeris ( vienkrypčio sąrašo ir vienkrypčio
sąrašo su atminties lentele atvejais)
3. i- mazgo numeris
Bendru atveju katalogų sistemos funkcija yra paversti vardo
informaciją į informaciją, kur yra failas.
Katalogų realizacija(2)
Kyla klausimas, kur saugoti atributus?
B – atveju.
Kataloge vienoje krūvoje saugomos nuorodos į failo
vardus ir atributai. O patys failų vardai saugomi kitoje
krūvoje „Heap“.
Tiek A ir B katalogų schemos, jei turėsime 1000 failų, bus
lėtos. Nes skaitome nuosekliai.
Bendras failų naudojimas