Fájlrendszer
A fájlrendszer fogalma: A számítástechnika egy fájlrendszer alatt a számítógépes fájlok tárolásának és rendszerezésének a módszerét érti, ideértve a tárolt adatokhoz való hozzáférést és az adatok egyszerű megtalálását is. A fájlrendszerek használhatják a adattároló eszközöket, mint a merevlemez vagy CD-ROM és használhatók a fájlok fizikai elhelyezésének karbantartására is.
Állomány (fájl) fogalma: Valamelyik háttértároló egységen tárolt, névvel és kiterjesztéssel azonosított összetartozó adategyüttes.
A számítógépen, a háttértárolókon lévő információ tárolási egysége az állomány vagy fájl (file). Egy fájl tartalma a gép szempontjából vagy adat, vagy program, amely a processzor által végrehajtható utasításokat tartalmaz: A fájlban tárolt adat tetszőleges, lehet szöveg, grafikus kép, hang stb.
Fájl jellemzők: Név és kiterjesztés A fájl mérete A fájl tulajdonos Hozzáférési jogok Létrehozás, módosítás dátuma Attribútumok Rejtett (hidden) Rendszer (system) Csak olvasható Archiválandó
Mappa (katalógus, könyvtár) fogalma: Olyan speciális állomány, mely az adatokat tartalmazó állományok jellemzőit tárolja, lehetővé téve csoportosításukat. Mappa alatt az informatikában egy fájlrendszeren belüli entitást értenek, ami fájlokat és almappákat tartalmazhat.(Entitás: valaminek a létszerűsége, ahol a hangsúly azon van, hogy létezik valami)
A windows-os rendszerekben hierarchikus a könyvtárszerkezet: könyvtárak fastruktúrát alkotnak, a gyökérkönyvtárnál feljebb nem léphetünk, de onnét mehetünk le a mappák almappáinak az almappájáig, ameddig csak szeretnénk.
Unix rendszereken az egész fájlrendszer egyetlen fastruktúrát alkot egyetlen gyökérrel, míg Windows rendszereken minden meghajtóhoz külön gyökérkönyvtár tartozik.
Kötet (volume, meghajtó) Névvel, betűjellel ellátott logikai egység, amely segítségével az operációs rendszer a háttértárolókat kezeli. A háttértárat az operációs rendszerek többsége logikai kötetekként kezelik. (Pl. a UNIX nem).
Hivatkozások Ha egy állományra hivatkozni akarunk nem csak a nevét kell megadni hanem azt a kötetet ill. katalógust is amelyben megtalálható. A gyökérkönyvtárból kiindulva: abszolút hivatkozás Az aktuális könyvtárból kiindulva: relatív hivatkozás
Fájlrendszerek feladata : A fájlrendszer szoftvere biztosítja, hogy az adattárolón található 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
Egy fájlrendszer akár használ, akár nem használ tároló berendezést, általában rendelkezik egy szótárral, amely összekapcsolja a fájlneveket a fájlokkal. Általában az összekapcsolás indexeléssel történik, a fájlnév egy index vagy egy fájl elhelyezési táblában, amilyen például az MS-DOS fájlrendszerében a FAT tábla (a FAT a File Allocation Table rövidítése. Néhány fájlrendszer esetében a fájlnevek struktúráltak, speciális szintaktikával, (például fájlnév, kiterjesztés, verziószám). Más rendszereknél a fájlnév egyszerű string, és fájlonként a metaadatok másutt vannak tárolva (NTFS)
Fájlrendszer típusok : A fájlrendszerek alapvetően három osztályba sorolhatók: lemezes fájlrendszerek hálózati fájlrendszerek speciális célú fájlrendszerek.
Lemezes fájlrendszerek A lemezes fájlrendszereket úgy tervezték, hogy a fájlok tárolására a számítógépek adattároló eszközei szolgálnak, amelyek leggyakrabban lemezes egységek. Ezek az egységek közvetlenül vagy közvetett módon kapcsolódhatnak a számítógéphez. Például a lemezes fájlrendszerek közé tartozik a FAT, az NTFS, a HFS a HFS+, az ext3, az ext4, az ISO 9660, az ODS-5.
Hálózati fájlrendszerek: A hálózati fájlrendszerek olyan fájlrendszerek, amelyek úgy viselkednek, mint egy távoli fájlelérési protokollal rendelkező kliens, ami biztosítja a szerveren lévő fájl elérését. Példák hálózati fájlrendszerekre: az NFS, a SMB, az AFP és a 9P protokollok, és fájlrendszer-szerű kliensek a FTP-vel.
Speciális célú fájlrendszerek: Speciális célú fájlrendszer alapvetően minden olyan fájlrendszer, amely sem lemezes-, sem hálózati fájlrendszer. A mélyűri felfedező űrhajók, mint a Voyager–1 és a Voyager–2 egy speciális, digitális szalag-alapú fájlrendszert használnak. A Mars Roverek is egy valós idejű fájlrendszert használnak, amelyet flash memóriával valósítottak meg.
Fájlrendszerek és operációs rendszerek : A legtöbb operációs rendszer rendelkezik fájlrendszerrel, azaz a fájlrendszer a modern operációs rendszerek integráns része. A korai mikroszámítógépes operációs rendszerekben ténylegesen elkülönült feladat volt a fájlkezelés; – ez a tény visszatükröződik az elnevezéseikben is (lásd DOS és QDOS).
Szükséges, hogy legyen egy interfész az operációs rendszer, a fájlkezelő rendszer és a felhasználó között. Ez az interfész lehet szöveges vagy grafikus (mint amit egy grafikus felhasználói felület biztosít, mint például a fájlböngészők). Ha grafikus, akkor megfelel valamilyen gyakran használt mappaábrázolásnak, ami dokumentumokat és egyéb fájlokat illetve beágyazott mappákat tartalmaz.
Egyszerű fájlrendszerek: Az egyszerű fájlrendszerek esetében nincsenek katalógusok – minden azonos szinten (gyökér) rögzítődik, (a hordozó szintjén), legyen az merevlemez, hajlékonylemez stb. Az egyszerűsége miatt, a rendszer a fájlok számának növekedésével egyre kevésbé lesz hatékony, a felhasználó(k) számára egyre nehezebb lesz az adatcsoportok kezelése.
Unix és Unix-szerű rendszerek fájlrendszerei : A Unix és a Unix-szerű operációs rendszerek minden eszközhöz egy eszköznevet rendelnek. Valójában a Unix létrehoz egy virtuális fájlrendszert, amelyben minden eszközön lévő minden fájl egy hierarchiába rendeződik. Unix rendszereken az egész fájlrendszer egyetlen fastruktúrát alkot egyetlen gyökérrel Ez azt jelenti, hogy a Unix-ban van egy gyökérkönyvtár, és minden létező fájl valahol ebben a gyökértől induló struktúrában helyezkedik el. Sőt, ennek a gyökérnek nem is kell tényleges fizikai hely. Nem kell az első merevlemezen lennie, még csak a gépben sem kell lennie, a Unix képes egy megosztott hálózati erőforrást gyökérkönyvtárként kezelni.
Fájlrendszerek a Microsoft Windows alatt Ma a Windows használja mind a FAT (File Allocation Table) mind pedig a NTFS (New Technology File System) fájlrendszereket. A FAT12 és a FAT16 nyolc karakterre korlátozza a fájlnév hosszát, és három karakterre a kiterjesztést. (Erre általában a 8.3 korlát néven hivatkoznak.)
FAT fájlrendszerek (FAT12, FAT16, FAT32) A Microsoft operációs rendszerei számára a FAT (Fat Allocation Table, Fájl Allokációs Tábla) fájlrendszereket fejlesztette ki. 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. A FAT tábla minden bejegyzése tehát egy klaszterre mutat.
FAT Amikor FAT-ról beszélünk általában nem szokás mondani, de a FAT16-ról van szó (létezik FAT12 is). Az MS-DOS idejéből származó, ma már korszerűtlen fájlrendszer legnagyobb előnye pont a korából származik, ugyanis támogatja szinte az összes operációs rendszer a világon, beleértve a Unix, Linux rendszereket, de akár a digitális fényképezőgépeket is ide sorolhatjuk.
FAT-ra formázott kötetek alkotóegységei a klaszterek (clusters) FAT-ra formázott kötetek alkotóegységei a klaszterek (clusters). A klaszter méretét a kötet mérete határozza meg 512 bájt és 64 KB közötti lehet.
FAT 12 A 12 bites FAT tábla 12 bites számokkal azonosította a klasztereket, tehát maximum 4096 klasztert tudott kijelölni(212). A hajlékony lemezeknél alkalmazták.
FAT 16 A 16 bites FAT tábla már 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 lehett 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.
0 MB–32 MB 1 512 bájt 33 MB–64 MB 2 1 KB 65 MB–128 MB 4 2 KB Kötetméret Szektor/cluster Clusterméret 0 MB–32 MB 1 512 bájt 33 MB–64 MB 2 1 KB 65 MB–128 MB 4 2 KB 129 MB–255 MB 8 4 KB 256 MB–511 MB 16 8 KB 512 MB–1,023 MB 1,024 MB–2,047 MB 64 32 KB 2,048 MB–4,095 MB 128 64 KB
A legtöbb operációs rendszertől eltérően, a Windows használja a meghajtó betűjel fogalmat felhasználói szinten, két lemez vagy partíció egymástól való megkülönböztetésére. Például, a C:\WINDOWS\ elérési út egy WINDOWS könyvtárat jelent, ami a C betűvel jelölt partíción helyezkedik el. A C meghajtó a leggyakrabban használt elsődleges lemezpartíció, ami a Windows-ban létrejött, és amiről betöltődik.
FAT32 Eleinte úgy tűnt a FAT16 korlátjai sokáig kiszolgálják az operációs rendszereket, de a hardvergyártók fejlesztési tempója már a Windows 95 idejében felvetette a nagyobb kapacitás, jobb kihasználásának igényét. Így született meg a FAT32 fájlrendszer, mely a FAT16 továbbfejlesztése a korlátok kiterjesztésével és a hátrányok mind jobban történő redukálásával.
Kötetméret Klaszterméret 0 MB - 7,9 GB 4 K 8 GB - 15,9 GB 8 K 16 GB - 31,9 GB 16 K 32 GB - 32 K
Látható, hogy a lényegesen nagyobb kapacitás mellett csökkent a klaszter méret, így jobb lett a helykihasználás. 32 GB-nál nagyobb kötetméret eléréséhez külön meghajtó programra van szükség . A FAT32 fájlrendszerben használható meghajtók maximális kapacitása akár 2 terabájt is lehet.
NTFS New Technology File System Elsőként a Windows NT 4.0-ban találkozhattunk vele. A Windows 2000 egy újabb verzióval rukkolt elő az NTFS 5.0-val. Ez a fájlrendszer jelenti az igazi áttörést, tovább tolja a legfelsőbb kötetméretet, minimális klaszter mérettel és fájlrendszer szinten számos szolgáltatást tartalmaz.
Belső működés Az NTFS-en belül minden fájlokkal kapcsolatos információt (fájlnév, létrehozás dátuma, hozzáférési jogok, tartalom) metaadatként tárolnak, valamint már rendelkezik hozzáférésvédelmi listával (ACL acces control list)és megtalálható benne a naplózás is A fájlnevek Unicode (UTF-16) formátumban vannak tárolva. UTF-16 változó hosszúságú (16 vagy 32 bites) karakterkódolási módszer.
Egy NTFS partíció formázása során 11 ilyen meta-adat file jön létre, ezeket a 2. táblázat foglalja össze. A meta-adat file-ok Windows NT Intézőből, vagy a DIR parancs hatására sem láthatóak, viszont, ha tudjuk mi a meta-adat file neve, akkor kilistáztathatjuk, dátumát, méretét.
Az MFT (Master File Table - Mester File Tábla) Az MFT az NTFS legközpontibb része. Az MFT a DOS file-rendszerének a FAT táblájához (file allokációs tábla) hasonlítható, hisz minden file-t, könyvtárat, és meta-adat file-t magába foglal.
Az MFT különálló egységekből, rekordokból áll Az MFT különálló egységekből, rekordokból áll. Az NTFS egy vagy több MFT rekordot használ egy file vagy könyvtár meta-adatainak (biztonsági információk, általános attribútumok), illetve annak elhelyezkedési jellemzőjének tárolására
Mivel az MFT maga is egy file az NTFS MFT rekordokat használva állapítja meg elhelyezkedését, méretét. Ez a felépítés teszi lehetővé, hogy az MFT növekedjen (ha új file-ok adatait kell eltárolni), vagy mérete csökkenjen a meta-adatok helyszükségének függvényében.
Egy általános MFT rekord
PL: a cikk.doc fájl MFT rekordja
NTFS könyvtárak Az NTFS alatt a könyvtár egy index attribútum, amelyet a file-nevek tárolására és egyeztetésére hoz létre a file-rendszer. A könyvtárbejegyzés tartalmazza a file nevét és az általános attribútumainak másolatát, így az NTFS gyors listázást tesz lehetővé anélkül, hogy be kellene olvasnia a file-ok MFT rekordjait
NTFS képességek
1.) ADS Alternatív adatfolyam (ADS – alternative data stream) Az alternatív adatfolyamok lehetővé teszik egy fájl csatolását több adatfolyamhoz. Például a szöveg.txt nevű fájl tartalmazhat egy ADS-t szöveg.txt:titok.txt néven.
2.) KVÓTA A fájlrendszer kvótákat az NTFS 5-ben vezették be. Lehetővé teszik az adminisztrátorok számára, hogy korlátozzák az egyes felhasználók által lefoglalható tárterületet. Lehetővé teszi az adminisztrátor számára azt is, hogy lekérdezze az egyes felhasználók által lefoglalt terület méretét. Beállítható, hogy a felhasználó mikor kapjon figyelmeztetést, majd mikor tiltsa le a lemezfoglalást a rendszer
3.)Kötet csatolási pont Hasonló a Unix csatolási pontokhoz, ahol egy másik fájlrendszer gyökerét csatolják egy könyvtárba. Az NTFS esetén ez lehetővé teszi fájlrendszerek csatolását külön meghajtó betűjel (például d:) használata nélkül.
4.) NTFS jogosultságok Minden állományhoz és mappához rendelhetők hozzáférési jogok, amelyek meghatározzák, hogy ki és hogyan kezelheti az adott objektumot. Ezzel a módszerrel szinte a teljes rendszer levédhető az illetéktelen hozzáférésektől
A 64 bites indexeknek köszönhetően elvileg az NTFS partíció mérete 16 EB (exabyte !) lehet, de a gyakorlatban 2 TB-nál (terrabyte) nagyobb partíciókat nem kezel, egyenlőre nincs is szükség rá.
Korlátozások: A könyvtár vagy fájlnév legfeljebb 255 karakter hosszúságú lehet. A nevek megőrzik kis- vagy nagybetűs írásmódjukat, ám a program nem tesz különbséget kisbetűk és nagybetűk között, tehát az NTFS fájlrendszer ugyanúgy értelmezi az adott fájlnév kisbetűs és nagybetűs írásmódját
CDFS (CD_ROM File System) Ezt csak a CD-ROM-ok olvasására használja a Windows NT és mivel ez egy speciális, csak olvasható