Az ms-dos operációs rendszer fájlrendszere

Az MS-DOS fájlrendszer az SR / M fájlrendszer továbbfejlesztett és továbbfejlesztett verziója. Ez csak Intel CPU-n futó platformokon működik. nem támogatja a többfeladatos feladatokat, és csak az IBM PC valós üzemmódjában működik. Az MS-DOS fájlrendszer nagyon hasonlít az SR / M fájlrendszerre, beleértve a 8 + 3 nagybetűs fájlnevek használatát. A rendszer első verziójában (MS-DOS 1.0) csak egy könyvtár volt, mint az SR / M. Azonban az MS-DOS 2.0 operációs rendszer verziójától kezdve. a fájlrendszer funkcionalitása jelentősen bővült. A legsúlyosabb javulás az volt, hogy áttérjenek egy hierarchikus fájlrendszerre, amelyben a könyvtárak tetszés szerinti mélységbe ágyazódhatnak. Ez azt jelentette, hogy a gyökérkönyvtár (amelynek mérete még mindig korlátozott) tartalmazhat olyan alkönyvtárakat, amelyek szintén tartalmazhatnak alkönyvtárakat. A UNIX-ban elfogadott linkek. nem engedélyezett, így a fájlrendszer olyan fát jelent, amely a gyökérkönyvtárban kezdődött.

Az alkalmazásprogramok gyakran megkezdődnek a gyökérkönyvtár alkönyvtárának megadásával, amelyben fájlokat írnak, így a programok elkerülhetik a konfliktusokat. Mivel a könyvtárak MS-DOS fájlként tárolódnak fájlként, nincs korlátozás a könyvtárak vagy fájlok számán. Azonban ellentétben a CP / M. az MS-DOS-ban nem létezik a különböző felhasználók fogalma. Ennek megfelelően minden bejelentkezett felhasználó hozzáférést kap minden fájlhoz.

A fájl olvasásához az MS-DOS rendszeren futó program. elõször meg kell nyitnia a rendszerhívást. hogy megkapja a fájlleírót [4]. A nyílt rendszerhívásnak, mint az egyik bemeneti argumentumnak meg kell adnia a fájl elérési útját, amely lehet abszolút vagy relatív (az aktuális könyvtárhoz képest). A fájlrendszer egyenként megnyitja az útvonalon felsorolt ​​könyvtárakat, amíg fel nem ismeri az utolsó könyvtárat, amely a RAM-ba kerül. Ezután az olvasási könyvtárban megkeresi a megnyitni kívánt fájlleírást.

Bár az MS-DOS fájlrendszer könyvtárai változó méretűek, a könyvtárbejegyzéseket használják, mint az SR / M. fix méretű 32 bájt (1. ábra). A fájlleíró tartalmazza: a fájlnevet, annak attribútumait, a létrehozás dátumát és időpontját, a kezdeti blokk számát és a pontos fájlméretet. A fájlnevek rövidebbek, mint a 8 + 3 karakter a mezők bal oldalára igazítva, és szóközökkel kiegészítve. Az Attribútumok mező egy új mező, amely tartalmazza a fájl típusát (archivált, rendszer vagy rejtett), valamint a megengedett műveleteket (olvasni vagy olvasni és írni). A csak olvasható fájlra történő írás nem megengedett. Így a fájlok véletlen rögzítéssel vagy törléssel történő védelmét végzik el.

Az archivált (archív fájl) bit nincs telepítve, és az operációs rendszer nem ellenőrzi. A felhasználói szintű archiválási programok leírásában van fenntartva, amely visszaállítja ezt a bitet a fájl biztonsági másolatának létrehozásakor, míg a fájlokat módosító programok ezt a bitet állítják be. Így az archiválóprogram határozza meg, hogy mely fájlokat kell archiválni. A rejtett bit (rejtett fájl) lehetővé teszi, hogy ne jelenítse meg a fájlt a könyvtárban lévő könyvtárlistában, amely lehetővé teszi a fájlok elrejtését a tapasztalatlan felhasználóktól, akiknek a célját nem ismerik. A rendszer (rendszer) bitet is elrejti a fájlok és megvédi őket, hogy véletlenül törölni kell a del parancsot. az MS-DOS rendszer fő összetevőin telepítve van.

A katalógus bejegyzés tartalmazza a fájl létrehozásának vagy módosításának dátumát és időpontját is. Az időt ± 2 másodperces pontossággal tárolják, mivel 2 bájtos mezőt osztanak ki, amely csak 65536 egyedi értéket képes tárolni, napközben 86400 másodpercig. Az időmező almappákra oszlik: másodperc (5 bit), perc (6 bit) és óra (5 bit). A tizenhat számjegyű dátum mező három almezőre oszlik: nap (5 bit), hónap (4 bit) és 1980-as év (7 bit). A 7 bites év tárolás és az 1980-as év kiindulópontjaként az év maximális értéke 2107, így az MS-DOS fájlrendszer beépített 2108-as problémája.

Ábra. 2. Fájlosztási táblázat

A lemezen lévő blokkok számától függően az MS-DOS rendszer a FAT fájlrendszer három verzióját használja. FAT-12. FAT-16 és FAT-32. Az összes FAT fájlrendszerben a lemezblokkok mérete bájtban 512-es számú többszörözéssel állítható be, az egyes FAT-változatokhoz eltérő blokk-méretek (klaszterek) készleteivel. Az MS-DOS rendszer első verziója 512 bájtos tömböt használt a FAT-12-re, ami lehetővé tette a 212 x 512 byte méretű lemezmegosztások létrehozását. Ugyanakkor a lemezpartíció maximális mérete 2 MB lehet, és a RAM FAT esetében a táblázat 4096 elemet tartalmaz, két byte-ot. Egy ilyen rendszer jól működött a hajlékonylemezeken. A merevlemezeken végzett munka érdekében a Microsoft úgy döntött, hogy 1,2 és 4 KB méretű blokkokat (fürtöket) használ, amelyek megmentették a FAT-12 táblázat szerkezetét és méretét, és növelték a lemezmegosztás méretét 16 MB-ra.

Mivel az MS-DOS legfeljebb négy lemezpartíciót támogatott, a FAT-12 fájlrendszer akár 64 MB-os lemezekkel is dolgozhatott. A nagyobb merevlemezek támogatására a 16 bites lemezmeghajtókkal rendelkező FAT-16 fájlrendszert fejlesztették ki. Ezenkívül engedélyezték a 8, 16 és 32 KB méretű klasztereket is. A FAT-16 asztal 128 KB RAM-mal rendelkezett, a fájlrendszer által támogatott lemezmegosztás maximális mérete 2 GB volt (64 KB 32 KB-os címke), a maximális lemezméret 8 GB volt (mindkettő 4 darab 2 GB).

Kapcsolódó cikkek