Next: A könyvtárszerkezet Up: A Linux jellemzői és eltérések más OS-ektől Previous: A Linux felépítése   Tartalomjegyzék


2.3.3        A fájlrendszerek

A Linux ős fájlrendszere Andrew Tannenbaum Minix operációs rendszerének fájlrendszere volt. Linus Torvalds ennek szerkezetét használta kezdetben (ennek neve Minix-1 volt). Ez a legstabilabb rendszer. Frank Xia elkészítette a xiafs-t, amely a Minix-1 továbbfejlesztett változata volt. Ez a leggyorsabb rendszer. A következő fájlrendszert Remy Card fejlesztette ki, amely a „kiterjesztett” nevet kapta, azaz extfs. 255 karakteres fájlneveket és hatalmas partíciókat támogat, de nagyon lassú. Ennek kiküszöbölésére Remy Card átdolgozta a rendszert és megszületett a második verzió, azaz az ext2fs.

A fájlrendszer a lemezen tárolt adatok kezelhetőségét biztosítja. Annak érdekében, hogy a Linux más fájlrendszerek támogatását is tudja biztosítani, a kernel és a fájlrendszerek között létezik egy szint, amelyet virtuális fájlrendszernek neveznek. Ez rendelkezik azokkal a rutinokkal, amelyek szükségesek egy fájlrendszeren történő műveletvégzéshez. Ez biztosítja a különböző fájlrendszerek közötti átjárhatóságot, mert a felhasználónak nem is kell tudnia, hogy milyen fájlrendszeren történik a műveletvégzés, csak kiadja a parancsot, és az érintett fájlrendszer-kezelő lefordítja a megfelelő fájlrendszer-hívásokra.

A Linux saját fájlrendszere az ext2fs de az operációs rendszer a legtöbb ismert fájlrendszert támogatja (pl. ext, hfs, hpfs, iso9660, fat16 – msdos, fat32 – vfat, minix, nfs, ntfs (csak olvasni), smbfs, stb.)

A lemezpartíció és a rajta levő fájlrendszer közti különbség nagyon fontos. Néhány program, mint pl. a fájlrendszereket létrehozó programok, közvetlenül a lemez szektoraival dolgoznak. Ilyen program egy már esetleg meglevő fájlrendszert súlyosan megrongálhat. A legtöbb program viszont csak a fájlrendszert használva ír a lemezre, ezért ezek csak megfelelő fájlrendszert már tartalmazó partíción működnek.

Mielőtt egy lemezpartíciót fájlrendszerként kezdünk használni, inicializálni kell, és a nyilvántartó adatstruktúrákat a lemezre kell írni. Ezt a folyamatot fájlrendszer készítésnek, formázásnak nevezzük.

A Linux ext2fs fájlrendszerében az adatstruktúrát a szuperblokk, az inode-ok és az indirekt blokkok hordozzák:

·         A szuperblokk az ext2 fájlrendszer egészéről tartalmaz információkat, mint pl. a teljes méret.

·         Az inode-ok egy-egy fájl minden adatát tartalmazzák a nevén kívül. A név ugyanis a könyvtárban tárolódik az inode sorszámával együtt. Az inode több adatblokk sorszámát tartalmazza, melyek a fájl adatait tárolják.

·        Az inode-ban csak néhány adatblokk sorszámának van hely, és ha ennél több szükséges, automatikusan több terület kerül lefoglalásra. Ezek a dinamikusan lefoglalt blokkok az indirekt blokkok.


Next: A könyvtárszerkezet Up: A Linux jellemzői és eltérések más OS-ektől Previous: A Linux felépítése   Tartalomjegyzék

 
Misóka Zoltán 2000. 10. 05.