File Allocation Table
Z Wikipedie, otevřené encyklopedie
FAT je zkratka anglického názvu File Allocation Table. Jedná se o tabulku obsahující informace o obsazení disku v souborovém systému vytvořeným pro DOS. Zároveň se tak označuje zmíněný souborový systém.
Obsah |
[editovat] Rozšíření
FAT je velmi jednoduchý souborový systém, proto je podporován prakticky všemi operačními systémy. Určitě ho podporují MS-DOS, OS/2, Linux, FreeBSD a BeOS. Kvůli jednoduchosti a rozšíření je velmi často používán na výměnných médiích, jako je disketa (zde se používá verze FAT12), USB flash disk nebo IOMEGA ZIP disk (pozor, na CD se nepoužívá).
[editovat] Historie
Souborový systém FAT byl vytvořen v srpnu 1980 s první verzí QDOSu, předchůdce MS-DOSu. První verze neuměla adresáře a používala 12 bitů pro adresaci sektoru (což omezovalo velikost disku na 2 MB).
V roce 1983 Microsoft vydal další verzi s podporou podadresářů a používající 16 bitů na adresaci clusteru. Cluster mohl být tvořen jedním nebo více sektory (pouze mocniny dvou), maximálně ovšem 64. Při jednosektorovém clusteru tak byla maximální možná velikost logického disku 32 MB, při maximálním 2 GB (U Windows NT/2000/XP až 4 GB). Tato verze se obvykle nazývá FAT16 s tím, že verzi s 12 bity (ovšem s doplněnou podporou podadresářů) se říká FAT12.
V roce 1995 vyšla s Windows 95 další verze, nazývaná VFAT. Novinkou byla podpora dlouhých jmen souborů (delších než původních 8 znaků jména a 3 znaky přípony). Požadováného efektu bylo dosaženo tak, že každý soubor s dlouhým názvem obsahuje v seznamu adreářových položek (v seznamu souborů v adresáři) více záznamů umístěných bezprosředně za sebou, přičemž až poslední záznam je standardním záznamem typu FAT16. Předchozí záznamy mají příznaky souboru nastavené tak, aby byly v rámci FAT16 ignorovány (proto starší operační systémy zobrazují pouze krátký název souboru 8+3 uložený v posledním záznamu), a místo informací o souboru (čas, datum, velikost) obsahují dlouhý název souboru.
V roce 1997 vyšla verze nazývaná FAT32. Novinkou bylo použití 32 bitové adresy clusteru. To zvyšuje limit na 2 terabajty. Praktický limit okolo 128 GB je způsoben chybou ve scandisku [1]. Mezi hlavní omezení FAT32 patří maximální velikost souboru 4 GB, což činí tento souborový systém nevhodný pro ukládání DVD obrazů (DVD image).
[editovat] Struktura
[editovat] Spouštěcí záznam svazku (VBR, boot sektor)
První sektor logické oblasti disku (označované také jako logický oddíl nebo svazek) obsahující souborový systém FAT se skládá ze dvou částí:
[editovat] Blok parametrů disku
Obsahuje specifické informace o svazku jako např. verze, počet sektorů na cluster, počet rezervovaných sektorů před první FAT, počet FAT, počet sektorů kořenového adresáře, celkový počet sektorů na disku, počet sektorů v jedné FAT, název svazku (label), …
[editovat] Spouštěcí kód svazku
Program, který zahájí proces spouštění operačního systému (u Windows 9x načte soubor IO.SYS a předá mu řízení).
[editovat] Alokační tabulka souborů (FAT)
Tato tabulka popisuje přiřazení každého clusteru v oddílu (1 záznam odpovídá 1 clusteru). Obvykle existují 2 kopie (obě jsou uloženy bezprostředně za sebou) – ta druhá je použita v momentě, kdy první se stane nečitelnou.
Přiřazení clusteru může nabývat různých specifických hodnot jako např. volný (0x0000), vadný (0xFFFE), cluster indikující konec souboru (0xFFFF), nebo obsahuje číslo následujícího clusteru souboru.
[editovat] Kořenový adresář
V původní verzi obsahoval jednoduchou databázi obsahující veškeré informace o všech souborech, které jsou známé operačnímu systému, v příslušném oddílu. Se zavedením podadresářů (tedy dalších adresářů kromě tohoto) se stal kořenem stromové hiearchie adresářů: záznam o podadresáři v něm uložený neobsahuje žádné informace o souborech uložených v tomto podadresáři (ani součet velikostí), pouze informace o podadresáři. Pokud bychom tedy chtěli pracovat s databází souborů, museli bychom přečíst všechny adresáře (pro běžnou práci se svazkem to ovšem není nutné).
Od verze FAT 32 může být uložen kdekoliv a jeho velikost může libovolně narůstat.
[editovat] Clustery
[editovat] Diagnostické cylindry pro zápis a čtení
[editovat] Problémy
- Fragmentace
- Ztracené clustery (pokud jsou ve FAT tabulce clustery označené jako používané avšak k žádnému souboru nejsou přiřazeny)
- Překřížené soubory (pokud ve FAT tabulce jsou pro 2 nebo více souborů vyhrazeny clustery se stejným číslem)
- Poškozená FAT (pokud je souboru přiřazen blok několika clusterů, avšak v některém z těchto clusterů není ukazatel na cluster následující)
[editovat] Podívejte se také na
- Souborový systém
- HPFS, NTFS – modernější souborové systémy (používané v OS/2 resp. Windows NT), na jejichž vývoji se také podílel Microsoft