Systemy Plików
Strona Główna
Ogólne informacje
System FAT
System NTFS
Inne Systemy Plików
Właściwości Plików

FAT (akronim z ang. File Allocation Table) – system plików powstały pod koniec lat 70. Zastosowany w systemach operacyjnych, m.in. DOS i Windows. Podobnie jak sam DOS, wywodzi się z systemów CP/M. Określa on rozmieszczenie plików, katalogów i wolnej przestrzeni na takich nośnikach danych jak dyskietki i twarde dyski. Najważniejszym elementem systemu jest tablica informująca o rozmieszczeniu plików na partycji (FAT) - od nazwy tej tablicy pochodzi nazwa systemu.

Typy FAT

W czasach gdy projektowane nośniki danych miały niewielką pojemność (dyskietka 180kB), z biegiem czasu obsługiwane były coraz większe nośniki.

Aktualnie istnieją cztery rodzaje FAT:

- FAT12

- FAT16

- FAT32

- exFAT (FAT64)

Podstawowa różnica między nimi to liczba bitów, na których koduje się numery jednostek alokacji plików zwanych klastrami. Liczbę tę podaje się jako wyróżnik w nazwie systemu w FAT (podana w nazwie).

Klaster

Klaster w całości jest przydzielany jednemu plikowi. Plik w katalogu zawiera numer pierwszego klastra pliku, gdzie znajdują się dalsze części pliku opisuje wpis w FAT. W tablicy FAT pod numerem odpowiadającym numerowi pierwszej części pliku jest umieszczony numer kolejnego klastra przydzielonego plikowi lub liczba z zakresu FFF8h-FFFFh, jeśli to jest ostatni klaster pliku. Jeżeli dany klaster jest wolny, to w FAT odpowiada mu wpis 0000h, a FFF7h oznacza uszkodzony klaster.

Przykład

Wielkość klastra zależy od maksymalnego numeru klastra zależnego od wersji FAT, czyli 12, 16 albo 32, jednak ta nie określa bezpośrednio liczby dostępnych klastrów. Np. w FAT12 będzie ich mniej niż 4096 (212), ponieważ niektóre z nich mają znaczenie wyłącznie systemowe i nie są dostępne dla użytkownika. Liczba dostępnych klastrów jest jednocześnie maksymalną liczbą możliwych do zapisania plików na partycji. FAT12 użyjemy dla dysku o pojemności 20 MiB – dysk ten ma 40960 sektorów, więc klaster musi zawierać 10 sektorów, co odpowiada 5 KiB.

Zalety i wady tablicy alokacji

Tablica FAT umożliwia szybkie odszukanie miejsca dla nowego pliku lub dalszej części, łatwe odszukiwanie kolejnych części plików. Wadą systemu FAT jest to, że dla partycji o dużej pojemności klaster jest równie duży i znaczna część pozostaje pusta (średnio pół klastra na plik), w trakcie zapisywania i kasowania plików ulegają one fragmentacji (kolejne fragmenty pliku mogą leżeć w znacznej odległości od siebie), a przestawianie głowic dysku zajmuje czas. Inną wadą jest to, że każde założenie, skasowanie, każda zmiana wielkości pliku pociąga za sobą konieczność zmiany tablicy FAT, co przy niepoprawnym działaniu komputera może doprowadzić do utraty wszystkich danych na partycji.

Regiony partycji FAT

Partycja systemu FAT składa się z 4 regionów:

1. zarezerwowany (z boot sectorem) – a w nim tablica BPB (Bios Parameter Block) oraz program ładujący system operacyjny (boot loader) dla partycji systemowej. Blok BPB zawiera informacje potrzebne do wyliczenia położenia i rozmiaru pozostałych regionów.

2. tablica alokacji (tablica FAT) – przechowywana zaraz za boot sektorem struktura, zajmująca kilka sektorów, która zawiera informacje dla systemu operacyjnego na temat klastrów. Każda pozycja w tablicy FAT odpowiada jednemu klastrowi. Sposób kodowania informacji opisano wyżej. Na partycji może być kilka kopii tablicy FAT, zazwyczaj dwie.

3. katalog główny (w FAT32 nie istnieje w tej formie) – katalog główny (root directory) i jego podkatalogi zawierają nazwę pliku, atrybuty, informacje o czasie utworzenie i modyfikacji, wskaźnik na pierwszy klaster z danymi.

4. region danych – zajmowany przez podkatalogi i wszystkie pliki; podzielony na logiczne bloki zwane klastrami.

Autor: Jakub Gurak