我需要在C中創建自己的文件系統實現。我計劃創建類似於FAT系統的系統。我們獲得了一個大小爲10MB的文件,它充當我們自己的「磁盤」。我知道FAT表存儲簇號,根目錄存儲關於我們創建的每個文件的其他相關信息(例如文件名,大小,上次修改的日期和時間,FAT中的起始塊等)。但是我很困惑如何將簇號轉換爲磁盤上數據區域中的物理地址。內存轉換如何在FAT文件系統中工作?
例如,假設根目錄中的條目表示文件在FAT表中的塊100中開始,並且在FAT表的塊100中是整數327,這是文件的下一個簇位於。這些地址如何轉換爲磁盤數據區域中的物理地址?這些物理地址在哪裏翻譯和存儲?
沒有。根目錄將有關文件的信息存儲在根目錄中。 FAT表存儲有關您的文件的元數據。起始簇,大小,文件名,等等等等等等。 – 2014-11-20 21:39:31
如果您想模擬該體系結構,則可能需要查找FAT如何工作的舊DOS 3或4時代參考。我同意馬克,你不太對。 – 2014-11-20 21:57:43