Logiczna struktura
dyskietki dla systemu
plików FAT
UTK
mgr inż. Robert Szczepaniak
Na początku struktury znajduje się sektor zwany
rekordem
ładującym
. Znajduje się on na ścieżce zerowej strony
zerowej dyskietki i umieszczony jest w pierwszym sektorze
(adres CHS = 001). Takie umiejscowienie tej struktury
bierze się stąd, że zawiera ona program ładujący określony
system operacyjny. Ponieważ ilość ścieżek i sektorów na
ścieżce może być różna, rekord ładujący umieszczony jest na
początku dyskietki, jako że każda dyskietka ma stronę
zerową i ścieżkę zerową, a na niej sektor pierwszy. Tak więc
poszukiwany adres jest zawsze taki sam.
Po rekordzie ładującym następują struktury związane
ze sposobem zapisu informacji na dyskietce zwanym
systemem plików FAT
(File Allocation Table). FAT
- tablica rozmieszczenia pliku.
FAT#1
i
FAT#2
to
oryginał i kopia tej samej struktury.
Root directory
jest angielską nazwą katalogu
głównego.
W celu ułatwienia zarządzania plikami są one
grupowane w pewne jednostki zwane
katalogami
albo
podkatalogami
. Katalogi (foldery) tworzą
drzewiastą strukturę, w której każdy katalog może
zawierać pliki oraz inne katalogi zwane wówczas
podkatalogami
tego katalogu. Różne katalogi mogą
zawierać pliki o tej same nazwie lub wręcz te same.
Katalogiem, od którego rozpoczyna się tworzenie
struktury, jest
katalog główny
.
Podstawowym fragmentem dysku z punktu widzenia
systemu operacyjnego jest tak zwany
klaster
(cluster), zwany czasami jednostką alokacji pliku
(JAP). Pojedynczy klaster może się składać z jednego
lub kilku sektorów. Dla konkretnego typu dyskietki jest
to wartość stała.
Klaster jest najmniejszym fragmentem dysku, do
którego potrafi odwołać się system operacyjny. Pliki
zapisywane na dysku, są zapisywane w klasterach, przy
czym jeżeli ostatni fragment pliku w ostatnim klasterze,
do którego jest zapisywany, zajmie tylko jego część,
pozostała część pozostanie niewykorzystana, bowiem
zapis nowego pliku musi zacząć się od nowego klastera.
Ponieważ klastery są jednostkami, w których zapisuje
się plik, to pojęcie klastera dotyczy wyłącznie obszaru
danych dysku.
Informacja o tym, w których klasterach został
zapisany dany plik, znajduje się na dysku w specjalnej
tablicy zwanej tablicą rozmieszczenia (alokacji) plików
(FAT). Każdy klaster na dysku ma odpowiadającą mu
pozycję w tablicy FAT.
Podstawowe informacje o pliku zapisanym na dysku
znajdują się w (pod)katalogu, w którym został
zapisany plik, w odpowiadającej mu pozycji.
Jeżeli plik zmieści się w jednym klasterze, to w pozycji
tablicy FAT jemu odpowiadającej wpisywana jest
sygnatura końca pliku oznaczana przez
EOF
(End Of
File), równa
FFFF
H
. W przeciwnym wypadku system
szuka kolejnego, najbliższego wolnego klastera i
zapisuje w nim kolejną część pliku. Jednocześnie
numer tego klastera jest zapisywany w tablicy FAT na
pozycji odpowiadającej poprzedniemu klasterowi.
Numery łańcucha klasterów, w których
zapisany jest dany plik, można znaleźć w
tablicy FAT, przy czym na kolejnych pozycjach
odpowiadającym kolejnym klasterom, w
których jest zapisany plik, zapisany zostaje
numer następnego klastera. O ostatnim
klasterze informuje sygnatura
EOF
.
Skasowanie pliku polega na zmianie pierwszej
litery nazwy na symbol o kodzie
E5
H
,
oznaczający dla systemu plik skasowany oraz
na wpisaniu zer w tablicy FAT na pozycjach
odpowiadających klasterom, w których został
zapisany dany plik.