我有一个 .fat32 文件,从主引导记录中我读到了以下内容:
- 每扇区 512 字节
- 每簇 8 个扇区
- 共 800 个区域
- 根簇号为 2
- 32 个保留扇区
- 2 个 FAT
- 每个 FAT 1 个扇区
800 个扇区 × 512 字节 = 400kiB
当我在终端中检查时,df -Bk ./
我得到了 380k。
那么 20kiB 或者说 40 个扇区到哪里去了?
我猜测 FAT 之前的 32 个保留扇区是其中的一部分,但仍然缺少 8 个。
然后我想到 FAT 本身,所以又有 2×1 个扇区,但仍然剩下 6 个。
除了一些奇怪的理论我什么也想不出来,而且我不确定它们是否正确:
甚至在保留扇区之前仍然有空间(引导扇区是保留扇区的一部分吗?)还是最后未使用的空间?
如果任何簇被写入,则该簇为“满”。那么 FAT 是簇的一部分吗?该簇的剩余 6 个扇区就是我遗漏的 6 个扇区?但 FAT 后面紧接着的是根簇,这意味着 FAT 是其簇的最后 2 个扇区吗?
答案1
- 每扇区 512 字节
- 每簇 8 个扇区
- 共 800 个区域
- 根簇号为 2
- 32 个保留扇区
- 2 个 FAT
- 每个 FAT 1 个扇区
32 个保留扇区,2 个 FAT 扇区为数据区留出 800 - 34 = 766 个扇区。
766 mod 8 = 6,所以我们需要减去另外 6 个(因为我们不能有部分集群)。
这样我们就有 760 个可寻址扇区或 95 (760 / 8) 个 4 KB 簇 = 380 KB。
文件系统未使用分区的最后 6 个扇区。