1. 程式人生 > >FAT32檔案系統的FAT表分析(二)

FAT32檔案系統的FAT表分析(二)

1.      FAT表的作用及結構特點

FAT32與FAT16表的作用和結構類似,這裡只道不同

A:FAT32的FAT表也是由FAT表項構成的,每個FAT項的大小為4個位元組

B:FAT項的大小為4個位元組,即32位,但是隻用到了26位,最多管理226 =67108864 -1個簇

 C2000之後的系統中,能管理的簇的大小可以達到128個扇區,而FAT32最多可管理的簇數為67108863個,67108863*128*512約等於4T。但這個只是理論值,實際上FAT32只能管理32GB的分割槽,原因就是Windows系統用的是26位的暫存器寄存文系統中簇的個數,那麼同時也就用26位暫存器寄存分割槽訪問的扇區數,這樣分割槽能夠管理的扇區總數就是

226個,換算下剛好226* 512 = 32GB,所以在Windows系統不可能把一個大於32GB的分割槽格式化為FAT32檔案系統,但第三工具不是用26位定址,就可以格式化大於32GB的分割槽為FAT32檔案系統。

 D:FAT32檔案系統的FAT表中,未使用的簇對應的中FAT項用“00 00 0000”這4位元組表示;一個已分配的簇號對應的FAT項取值範圍為“00 00 00 02  ~ 0F FF FF FE”;十六進位制“0F FF FFF0  ~ 0F FF FF F6”這個範圍的取值是保留的;壞簇對應的FAT項用“0F FF FF F7”表示;檔案結束簇對應的FAT項取值是“0F FF FF F8  ~ 0F FF FF FF”,一般取0F FF FFFF這個值,按照小端的位元組來寫就是FF FF FF 0F