Kezdőoldal » Számítástechnika » Programozás » Hol tudnék utána nézni a...

Hol tudnék utána nézni a FAT12-FAT16 fájlrendszer pontos leírásának, dokumentációjának?

Figyelt kérdés

Konkrétan egy boot-olható floppy-ról lenne szó (MS-DOS 6.22), és sok minden van rajta, amit nem értek, hogy miért, vagy miért úgy.

Pl. nem értem, hogy miért csak a 18-20 szektortól kezdődik a fájltábla leírása (gondolom az, mert benne vannak sorban a fájlnevek, de amit pl. egyáltalán nem értek, hogy nagyon soknak le van hagyva az első betűje, pedig az tényleg ott van a floopy-n), miért marad ki előtte annyi üres hely (aminek a nagy-nagy része tényleg üres).

Vagy pl. nem értem, hogy neten úgy láttam, hogy a DOS boot szektora az csak a legelső szektor, de itt még a második szektorban is van folytatása. Illetve közben is vannak blokkok, még a fájltábla előtt, amikről csak annyira jöttem rá, hogy a rendszer betöltéskor valóban használja őket, de tovább fogalmam sincs, hogy mi vélt szolgálnak.


Valaki tudna ezekben segíteni (?informatikus, programozó?), információval szolgálni?



2014. máj. 19. 14:04
 1/3 anonim ***** válasza:

Ha figyelmesen elolvasod a következő kis szöveget:


[link]


Kiderül belőle többek között, hogy a könyvtárban lévő fájlok nevei SPACE-szel vannak kipótolva, és az első karakternek speciális funkciói vannak... (lehet, hogy amit a FAT táblában látsz az már egy előzőleg letörölt fájl maradványa)


+szerintem azért kezdődik a FAT tábla olyan "messze", hogyha véletlenül a BOOT szektor meghibásodna, akkor azt megjelölik hibásnak, majd felhasználják a rákövetkező szektorokat... ...végülis lehet értelme, hiszen ne kelljen már egy hibás szektor-ért kidobni egy tárolóeszközt... :-)

2014. máj. 19. 14:51
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:

"hogyha véletlenül a BOOT szektor meghibásodna"


Na jó, de olyan messze rakni?! Amúgy meg az, hogy csak az első szektor sérül meg, és a fájlok, esetleg a kritikus rendszerfájlok (pl. egy COMMAND.COM) nem, arra azért igen kicsi a valószínűség (gondolom 1 a 2880-hoz az esély). Ha meg mégis, akkor is várható, hogy hamarosan mégtöbb szektor meg fog dögleni.


Nekem továbbra is mérnöki meggondolatlanságnak tűnik a dolog. Mert a 20. szektor ugyanolyan valószínűséggel fog meghibásodni, mint a 0.-ik, vagy az 1., így viszont ott marad az a sok szektor kihasználatlanul, majdhogynem 10 KiloByte, ami azért egy floppy esetében még igenis sokat jelenthet. Pl. 10 KiloByte-ba már egy komplett DOS-os alkalmazás is belefér, sőt, akár több is. (demoscenery-k közül akár ~20 db is, bár azért ez meg a másik véglet, de vannak olyan hasznos programok is, amik demoscenery-khez hasonló optimalizálási minőségben lettek megírva).


Erre nem gondoltak?



Na mindegyis, most engem inkább egy RÉSZLETES és lehetőleg MAGYAR leírás érdekelne a TELJES FAT12-ről? (ti. rossz angolos vagyok)

Valaki? Linket tudna adni?

2014. máj. 19. 17:10
 3/3 anonim ***** válasza:

Több oka is van annak, hogy csak a 20. szektortól kezdve látsz fájlneveket, és ez még igen szerencsés eset, de majd el mondom miért.


Először is azt kell tudni, hogy a boot szektorban sok mindent be lehet állítani, többek között:

- Szektor méret

- Cluster méret

- Lefoglalt szektorok száma

- FAT méret

- FAT másolatok száma

- Gyökérkönyvtár bejegyzések maximális száma

- Fájlrendszer mérete


Csak azokat írtam le, amik szükségesek a dolgok megértéséhez. Kezdjük azzal hogy mi az a cluster. A cluster a legkisebb címezhető egység a FAT fájlrendszeren. 1 cluster több szektorból állhat, és ezt nevezted te mérnöki meggondolatlanságnak. Igaz hogy a fájl-méret =/= fizikai méret és egy csomó helyet lehetne spórolni ha nem lenne, de több a haszna mint a hátránya. Olvasd el ezt:

[link]


Ezt azt jelenti hogy clusterekről beszélünk, nem szektorokról. Ha a boot szektor az első clusteren van, csak a 2. clustertől kezdődik az adat terület. Lehet 1 cluster akár 128 szektor méretű is, és akkor a 2. szktortól kezdődően 127 szektor kihasználatlanul maradna. Szerencsére a floppy lemezeknél 1 szektor az általánosan elfogadott cluster méret.


A boot szektor után (floppy-n általában 512 bájt egy szektor) jönnek a lefoglalt szektorok ahova nem lehet írni. Ez FAT12-nél 0 szektor szokott lenni.


Ez után kezdődik a tényleges adat-terület. A következő régiót nevezik FAT régiónak, ami általában 9 szektor méretű és van közvetlenül utána egy másolat is belőle mert fontos adat területről beszélünk. Ez a terület mondja meg, hogy egyes fájlok melyik clusterben vannak és milyen sorrendben. Itt nem a fájl tulajdonságai kerülnek leírásra, hanem a clusterek tulajdonságai. Minden 3 bit (FAT12-nél) 1 clustert jelöl, ha fájl van ott akkor a következő cluster számát tárolja (ezáltal a fájlokból mintegy láncot képezve), ha nem akkor pedig jelölheti hogy hibás szektor van a clusterben, szabad hely van ott, vagy akár a fájl végét is.


Ha ahol a fájlrendszerben üres hely van, ott 0x00-kat látsz, ezért érthető hogy a FAT régió végén 0x00-k vannak, hiszen valószínüneg nincs megtelítve a lemez bájtra pontosan.


Csak a FAT régió után jön a gyökérkönyvtár bejegyzések leírása, ami megmondja a gyökérkönyvtárban milyen mappák és fájlok vannak és azoknak milyen tulajdonságaik van. (valószínűleg ezt láttad te, ennek pontosabb leírását a fentebb említett wiki oldalon megtalálod). Ennek méretét is be lehet állítani a boot szektorban, mivel mérete fix ezért érdemes előre tudni, hogy a gyökérkönyvtárban sok kicsit fájlod lesz vagy csak pár könyvtár, mert véges hogy hány fájlt tárolhatsz ott. A többi fájl tulajdonságai az ez után következő tényleges adatterületen van. Én semmi értelmét nem látom, hogy külön régióra szedték a gyökérkönyvtár tartalmát, de ezt a FAT32-vel meg is szüntették ahol ez a régió már nem létezik. (valószínűleg teljesítmény okok voltak a háttérben)


Ha összeszámolod, akkor legszerencsésebb esetben (1 szektor = 1 cluster, nincsenek lefoglalt területek és a minimum ajánlottnak eleget téve) 1+9+9=19 (boot + fat + fat_copy) szektor van az előtt hogy egyáltalán fájlneveket látnál, tehát a 20. szektornál kezdődnek a gyökérkönyvtárbeli fájlok leírásai, de még mindig nem a tényleges adatai a fájloknak! (kivéve FAT32)


Persze az értékek egy standardod követnek, de ha a sebességet és a területfelhasználási hatákonyságot maximalizálni akarod egy adott könyvtárszerkezetre, akár magadnak is beállíthatod ezeket az értékeket a megfelelő programmal.

2014. máj. 21. 01:29
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!