浅尝辄止50-FAT32-拆个优盘2

再把分区引导扇区刨一刨

分区引导扇区
=跳转指令(3B)
+硬盘分区类型(8B)
+BPB(25B)+扩展BPB(54B)
+分区引导代码(420B)
+结束符(0x55 0xAA)

对于这里面我们需要关注的是BPB扩展BPB

BPB

字节数 内容
2 扇区字节数:一般是512,我也见过4096的
1 每簇扇区数:在Windows的格式化对话框中,可以选8~64KB。
如果是自己实现的话,理论上可以是1、2、4、8、16、32、64、128扇区。
2 保留扇区数:从分区开头开始的若干个扇区,包含分区引导扇区
1 FAT表个数:一般是2个,两个是一样的内容,用于校验
2 根目录最大目录项数,FAT32不用
2 分区容量小鱼32MB时的扇区数,忽略吧,一般不会这么小
1 介质类型:略
2 每个FAT表扇区数,FAT32不用
2 每磁道扇区数:略
2 磁头数:略
4 分区前已用扇区数:略
4 磁盘总扇区数:顾名思义

扩展BPB

字节数 内容
4 一个FAT表占用扇区数
2 FAT工作方式:略
2 版本号:略
4 根目录入口簇号:一般为2。0和1号簇只在概念上存在,没有实际空间。在FAT表中,0和1号项不代表任何簇的管理信息,所以真正有空间的簇是从2号开始的,里面存的是根目录的信息。
2 文件系统信息扇区:略
2 备份引导扇区的扇区:顾名思义
12 保留,没用
1 物理磁盘号:略
1 保留,没用
1 扩展引导标志:保留,没用
4 磁盘序列号:顾名思义
11 卷标:字符
8 文件系统格式:字符

对于上面两个表,目前只关注粗体部分就好。因为表中粗体字信息,已经可以把分区内容安排得明明白白了。当然,还需要几个潜规则:

  1. 保留扇区后面紧接着的扇区就是FAT表的起始扇区
    所以上述表格里没有说FAT表从哪里开始
  2. 两个FAT表也是以扇区对齐紧挨着的
  3. 2号簇,是以簇大小对齐,紧跟着FAT表的

安排!

你可能感兴趣的:(浅尝辄止50-FAT32-拆个优盘2)