Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Fájl rendszer Terminológia Fájl és könyvtár (mappa) koncepció Elérési módok Fájlattribútumok Fájlműveletek ---------------------------------------- Könyvtár szerkezet ---------------------------------------- Fájlrendszerek megvalósítása
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
1
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Könyvtár szerkezet Bejegyzések (node) együttese, amely információt tárol a fájlokról. A könyvtárszerkezet és a fájlok is a lemezen, a háttértáron tárolódnak. Kapcsolódó fogalmak: kötet (volume), partíció (partition), VTOC (Volume Table of Contents, IBM mainframes). Egy könyvtárban (fájl-jegyzékben) tárolt információ: Név, típus, cím, aktuális hossz, maximális hossz, legutóbbi elérés (access) időpontja, legutóbbi módosítás (update) időpontja, tulajdonos azonosító (owner ID), védelemmel kapcsolatos adatok (kinek mire milyen jogosultsága van).
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
2
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Egy könyvtárral kapcsolatban végrehajtható műveletek: Fájl vagy alkönyvtár keresése (file search, dir search), fájl vagy alkönyvtár létrehozása (create), fájl vagy alkönyvtár törlése (delete), könyvtár tartalmának listazása (dir, list, ls), fájl vagy alkönyvtár átnevezés (rename), a fájl vagy alkönyvtár pásztázása (traverse), a könyvtár teljes bejárása (pl. listázásnál). A könyvtárszervezéssel szemben támasztott elvárások: -
Hatékonyság: minden fájl könnyen visszakereshető legyen. Névadás (naming): Egynél több user használhassa ugyanazt a nevet más fájlokhoz. Ugyanannak a fájlnak lehessenek különböző azonosítói. Csoportosítás (grouping): fájlok csoportosítása tulajdonságaik alapján. (com, bat, pss, nfs ntfs, ... dtv)
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
3
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Egyszintű könyvtár – Az összes felhasználó állományai egyetlen jegyzéket (directory) alkotnak. – Névadási- (névütközési-) és csoportosítási problémák
4 fájl közvetlenül a gyökér (root) alatt Egy vagy több tulajdonos (owner)
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
4
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Kétszintű directory – Egy-egy felhasználó állományai elkülönített jegyzéket (directory) alkotnak. – Szintek: MFD - UFD (master/user file directory) – Megoldja a névütközés problémáját, de nincs csoportosítás. – A felhasználók nem tudnak kooperálni (nehéz egymás állományait elérni). – Új fogalom jelenik meg: elérési út (path) – A rendszer fájlok (programok) használatának problémája
Minden User-nek van saját „könyvtára”
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
5
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Fa-szerkezetű directory
Egy fájljegyzék bizonyos elemei lehetnek újabb fájljegyzékek, így fájljegyzékeknek egy hierarchikus rendszere jön létre. Egy fájljegyzék által (fájlként) tartalmazott fájljegyzék = alfájljegyzék (subdirectory, folder - mappa).
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
6
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
A jegyzékben minden esetben egy speciális bit jelezheti, hogy fájlról, vagy aljegyzékről (mappáról, alkönyvtárról) van-e szó. Fájljegyzéket létrehozni és törölni speciális rendszer-hívásokkal lehet. Pl. make: mkdir; remove: rmdir. Aktuális directory váltás: cd. Abszolút- és relatív elérési út, keresési utak, pásztázás (traverse). Megoldja a névütközés problémáját, és lehet csoportosítani. Az elérési utak megadása sokszor körülményes. Egy megoldás: DeskTop file (Mac) vagy DeskTop mappa (Windows) Keresési út (search path) fogalma. Pl. MS-DOS: PATH környezeti változó (environment variable) - keresési útvonal beállítása, a futtatható fájlokhoz.
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
7
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Egy Windows-os Desktop – munkaasztal
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
8
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
és megfelelő mappa
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
9
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
UNIX – könyvtárak szerkezete Minden USER-nek van saját könyvtára
Minden USER saját könyvtárrendszert hoz létre
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
10
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
FAT (File Allocation Table) tábla A legismertebb fájlrendszer (MS-DOS, MS-Windows) által használt formátum. Biztosítja, hogy elérhető legyen egy fix méretű blokkokból (block size, blokk méret) álló sorozat (file). Ezeket az általában 512 byte méretű (vagy k*512 byte, ahol k =1,2,3, …) blokkokat gyakran szektoroknak is nevezik. Lásd ábrát a következő oldalon! ). A fájlrendszer szoftvere biztosítja, hogy ezeket a szektorokat fájlokká és a katalógusokká szervezze össze, és tartsa nyilván, melyik szektor melyik fájlhoz tartozik, és melyik szektorok nem használhatók már tárolásra. Változatai: FAT-12, FAT16, FAT-32. Klaszter (cluster) a fájlrendszerek legkisebb (nem fragmentalható!) címezhető foglalási egysége fájlok és könyvtárak számára. Egy vagy több egymás után következő szektorokból álló adategységet jelent.
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
11
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
12
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
A FAT tábla tartalmazza azokat az adatokat, hogy egy fájl tartalmának végigolvasásához melyik klaszter után melyik klasztert kell olvasni. Fat rekord (bejegyzés):
Attribútum – 8 bites mező
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
13
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
A FAT tábla minden bejegyzése tehát egy klaszterre mutat. A 12 bites FAT tábla 12 bites számokkal azonosította a klasztereket, tehát maximum 212=4096 klasztert tudott kijelölni. A hajlékonylemezeknél (floppy disk) alkalmazták. A 16 bites FAT tábla már 216=65536 klasztert azonosíthatott, maximum 2GB-os partíciókat lehetett vele kezelni. A FAT táblából fontossága miatt két példányt is eltároltak a lemezen, így az egyik megsérülése esetén a másikat lehetett használni. Manapság a FAT típusú rendszerekből csak a 32 bitest használjuk, mely a 32 bitből 26-ot használ a klaszterek kijelölésére (226=?).
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
14
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Attribútum byte felépítése
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
15
Nyíregyházi Egyetem Matematika és Informatika Intézete
10
Fájlok tárolása a klaszterekben
Dr. Bajalinov Erik
Operációs rendszerek (PMB1206)
16