5.25" 软盘:单面 180 KiB

相当小的文件系统
文件的实现方式
struct block * 的链表目录的实现方式
struct dentry[];哪种方式的缺陷是致命、难以解决的?
集中存储的指针容易损坏?存 $n$ 份就行!


RTFM 得到必要的细节
if (CountofClusters < 4085) {
// Volume is FAT12 (2 MiB for 512B cluster)
} else if (CountofCluster < 65525) {
// Volume is FAT16 (32 MiB for 512B cluster)
} else {
// Volume is FAT32
}
“FAT” 的 “next” 数组
0: free; 2...MAX: allocated; ffffff7: bad cluster; ffffff8-ffffffe, -1: end-of-file
以普通文件的方式存储 “目录” 这个数据结构
vector<struct block *> file 的头部?
首先,观察 “快速格式化” (mkfs.fat) 是如何工作的
然后,把整个磁盘镜像 mmap 进内存
另一个有趣的问题:文件系统恢复
SecPerClus, BytsPerSec, FATSz32, BPB_RootClus, ...)性能
可靠性