0

Been seaching google for a good explanation for how FAT systems identify free space and the structure of FAT Entry files.

Alot of the explanations ive found are quite hard to follow can anyone help brief sum these up?

i understand that clusters are marked as unused but is this within the root directory or data region? and is the information on clusters status just marked in a table?

I haven't managed to gain any knowledge on the structure of the entry files either, just that they use chains to keep the clusters together

Anyone help?

4

2 回答 2

1

可以认为文件系统具有三 (3) 种类型的数据:文件数据、文件元数据和文件系统元数据。文件数据是文件或目录的内容。文件元数据告诉我们文件数据在磁盘上的存储位置。文件系统元数据告诉我们文件系统如何分配文件系统中使用的块。

然而,FAT 文件系统并没有保持如此清晰的线条。它的磁盘结构经常模糊这些区别。

文件分配表 (FAT) 本身模糊了文件元数据和文件系统元数据的界限。也就是说,FAT 条目既标识了可以找到下一个文件(或目录)数据簇的簇号,也向文件系统指示了由 FAT 索引标识的簇是否可用(或不可用)。 )。正如您在问题中指出的那样,这形成了一个链条。一个特殊的标记(具体值不在我的记忆中)表明由索引标识到 FAT 中的簇是链中的最后一个簇。

基于 FAT 的文件系统中的目录条目既是文件数据又是文件元数据。它们读起来像文件,它们的条目是“文件数据”。但是,它们的条目也被解释为文件元数据,因为它们包含文件属性(权限、文件大小和起始簇号——它是 FAT 的索引)。

根目录是 FAT 文件系统上的一个特殊目录。如果没记错的话,它也没有“。” 也没有“..”条目。在 FAT12 和 FAT16 系统上,根目录的大小是在格式化磁盘时指定的,因此是固定大小的——但是,它的簇仍然在 FAT 中标记。在 FAT32 上,根目录大小未在格式化时设置,并且可以增长。根目录的起始簇存储在文件系统元数据结构之一的一个特殊字段中(因为我正在记忆中,这个结构的名称让我难以理解)。

希望这可以帮助。

于 2013-01-06T19:01:59.037 回答
-2

这是一篇相当长的文章,其中包含大量有关胖文件系统的信息。它应该提供您需要的所有详细信息。

http://en.wikipedia.org/wiki/File_Allocation_Table

于 2013-01-06T15:31:25.123 回答