FAT32文件系统
先判断绝对0扇区的第一字节是否为0xeb,
如果绝对0扇区的第一字节不是0xeb,则第一扇区为MBR(最后两字节为0x55,0xaa)
如果绝对0扇区0xeb,则第一扇区不是MBR。
0扇区最后一般有4个分区记录DPT(有些可移动磁盘可能只有1个分区记录)
偏移量
介绍
值
0
0x80表示有效,0x00无效
0x80
1
分区的开始头
0x03
2~3
开始柱面与扇区
0x3d 0x00
4
分区类型
0x0b
5
分区结束头
0x1f
6~7
结束柱面与扇区
0xff 0xd8
8~11
分区的第一扇区
0xf9 0x00 0x00 0x00
12~15
分区的大小(磁盘大小(字节))
0xe7 0x4b 0x1e 0x00
DPT表
由绝对0扇区的分区记录(分区的第一扇区)指向DBR(大小为一个扇区),BPB被包含在DBR中
FAT32文件系统提取我们所需要的参数
标识
介绍
来源
BPB-sector-No
BPB所在扇区号
MBR的DPT表
Total-Size
总容量
FirstDirclust
第一个目录所在的簇
来自于DBR的BPB中
Bytespersector
每一个扇区的字节数
FATsectors
FAT表占用的扇区数
Sectorsperclust
每一个簇的扇区数
FirstFATsector
第一个FAT表的扇区号
FirstDirsector
第一个目录的扇区号
FirstFATsector=BPB-sector-No+保留扇区
FirstDirsector=FirstFATsector+FAT表数*FATsectors
FAT32的根目录大小为一个簇的大小,切记切记!!!
FAT文件系统学习心得 来自淘豆网m.daumloan.com转载请标明出处.