根据我所看到的信息这一页:
- FAT12 最多使用 4086 个簇(2^12 - 10)
- FAT16 使用 65526(2^16 - 10)
- FAT32 使用 ~268435456 (2^28)
我知道 FAT32 使用 28 位而不是 32 位,因为保留了 4 位,但最大簇数的差异又如何呢?为什么 FAT12 和 FAT16 的可用簇比基于可用位数应有的簇少 10 个?
这些集群是否存在但被保留用于某些功能?如果是,它们用于什么用途?
答案1
为什么 FAT12 和 FAT16 的可用簇比可用位数所对应的簇少 10 个?
簇号的前 2 个值(0x0 和 0x1)不可用 - 它们在 FAT 表中的位置用于存储 FAT 签名。第一个簇号是 0x2。
簇号的最后 8 个值(0xff8..0xfff 和 0xfff8..0xffff)保留用于特殊标记(簇链末尾、坏簇等)
对于簇编号编码还有其它可用的值。