..檔案系統的更改(針對fat32)
1.對資料首扇區數,進行更改:如果檔案系統剛格式完的話,資料首扇區為firstdatasector,如果不是的話,
將用變數datseccur來儲存錄音檔案資料的首扇區。由於檔案是以簇為單位來儲存的,當寫完乙個錄音檔案後,
datseccur要更新以備指向下乙個錄音的資料首扇區,方便下次寫檔案操作。而更新,
datseccur+=recclusters*sectorspercluster。可以在寫資料最後,更新變數。
2.對資料首簇數,進行更改:如果檔案系統剛格式完的話,資料首簇為firstdatacluster(其大小也是可以根據
你個人的設定,但是要大於或等於(dbr+保留扇區+fat個數*每個fat扇區數)),如果不是的話,將用變數
datclucur來儲存錄音資料的首簇。當資料不足一簇的話,也是使用一簇的大小的儲存的。而更新的話,
datclucur+=recclusters。可以在寫資料簇號的最後,更新變數。(fat32中缺少了dpt表,所以原來在fat12/16
中的dpt表操作,在32中,就是對資料簇號的處理,系統中,連續的簇號優先處理)
3.對根目錄,進行更改:根目錄首扇區位址=fat表首扇區+fat個數*每個fat扇區數。由於fat32沒有pdt,直接
在資料區開闢儲存空間。如果剛格式完的話,寫入第乙個檔案的目錄時,就直接寫在首扇區的位址0上,接下來
寫檔案目錄的話,就要從位址32開始,要建個變數來儲存位址和已寫扇區個數,從而方便下次檔案目錄的建立
。乙個檔案的目錄占用32個位元組(這個是短檔案目錄,長檔案目錄就先不提了),由於乙個扇區一般都512個位元組
,所以乙個扇區也只能建立16個目錄而已,而一簇(8個扇區/簇)也才126個目錄,遠遠不能滿足需要,先開闢8
個簇來儲存目錄,這樣的話,一張至少可以建立1024個目錄。由於根目錄是開闢在資料區,使資料首扇區(=根
目錄首扇區+根目錄的扇區數)往後推移,這個要在初始化時就確定的。
4.對fat表,進行更改:參考資料簇的更改(其實資料簇和fat表是一樣的,只要乙個就可以了,剛剛試過了)。
**
FAT32檔案系統
windows95 osr2和windows 98開始支援fat32檔案系統,它是對早期dos的fat16檔案系統的增強,由於檔案系統的核心 檔案分配表fat由16位擴充為32位,所以稱為fat32檔案系統。在一邏輯盤 硬碟的一分割槽 超過 512 兆位元組時使用這種格式,會更高效地儲存資料,減少硬...
檔案系統 淺解釋FAT32
了解完linux下的檔案系統之後,順便對fat32也研究一下。假如乙個fat32表如下所示。檔案的簇應該保留在目錄中,根據此簇,應該能得到乙個塊。要找到檔案的下一塊,就要根據簇在fat中尋找,所以fat中儲存的不是本簇的簇號,而是下一簇的簇號。每個簇都是4位元組。clear?fat中儲存的值有幾個特...
解析Fat32檔案系統
1.第一分區的起始扇區 2.第乙個檔案檔案配置表 fat 的位置 3.資料區域的位置 4.檔案 file1.txt 所在的簇 1 首先,用hxd開啟所要解析的fat32的檔案 2 選擇所要分析的檔案,開啟後,在起始的sector0,也就是0扇區我們就會看到該系統的主引導,在結束標誌的55aa之前的6...