1、FAT32分区结构分区结构一分析引导扇区分析引导扇区二簇的概念簇的概念三四修复引导扇区修复引导扇区四计算数据区位置计算数据区位置五u 重点u 难点u FAT文件系统是一种用于个人计算机小型操作系统的文件管理方案,最初由IBM公司用于DOS操作系统。u FAT文件系统结构较简单,管理方便,但不具备用于商业系统的安全性、容错性、保密性等特点。u FAT12用于软盘,FAT16用于早期操作系统,FAT32用于现代操作系统及大容量硬盘。u 在FAT32分区内部,由保留扇区、FAT表和数据区三个部分组成。u 引导扇区,也称DBR扇区,该扇区是最重要的一个扇区,系统访问该分区时首先访问它。FAT1 FAT
2、2根目录数据区引导扇区保留区FAT32分区u 保留扇区是指分区内FAT表之前的扇区,也包括引导扇区。u 在硬盘中FAT有两份,系统在写入信息时会同时写入两份FAT,但只会读取第一份的内容。u 格式化程序会创建文件系统,也就是划分该分区的各部分的位置,并写入适当的参数。同时,格式化后首先会创建根目录,由于目录也被当做文件处理,因此根目录通常位于数据区的起始位置。u 引导扇区,也称DBR扇区,它由BPB(BIOS参数块)、DBR(磁盘引导记录)、以及引导扇区结束标志(55 AA)组成。u BPB中记录了该分区的各项参数信息,因此至关重要,如果BPB部分被破坏,此分区将不可用。u DBR在安装系统的
3、时候写入,这是一段系统引导代码,如果这部分缺失或被破坏,则该分区不可用于启动系统。u 引导扇区结束标志用于引导程序判断该扇区是否为引导扇区。跳转指令,跳至引导程序处BPB记录了该分区的参数信息DBR负责执行系统引导功能引导扇区结束标志55H AAH偏移偏移长度长度描描 述述0H3B跳转指令,跳至后面引导记录开始处(FAT32从5AH处开始)3H8B文件系统和版本的OEM标志(MSDOS 5.0或MSWIN4.1)0BH2B每扇区字节数(通常为200H)0DH1B每簇扇区数(值为2的N次方,通常小于64)*0EH2B保留扇区数(本分区中FAT表之前的扇区总数,通常FAT16为1,FAT32为20
4、H或24H)*10H1BFAT表个数(通常为2)11H2BFAT16系统为根目录最大项,FAT32系统为0 13H2B小卷(32MB)的分区扇区总数,大硬盘为015H1B介质描述,恒为F816H2B在小卷中为每FAT占用扇区数,大硬盘为018H2B每磁道扇区数(通常为3FH,63)1AH2B磁头数(通常为FFH,255)1CH4B隐含扇区数(本分区前的扇区总数,也就是本分区的起始逻辑扇区号)20H4B大卷的本分区占用扇区数*24H4B大卷的每FAT占用扇区数*28H2B延迟标记(通常为0)偏移偏移长度长度描描 述述2AH2B版本(通常为0)2CH4B根目录起始簇号(通常为02)30H2BFS信
5、息扇区,即BOOT扇区占用扇区数(通常为1)32H2B备份引导扇区的位置34H12B保留未用(全为0)40H1B磁片的BIOS驱动信息(软盘从0开始,硬盘从80H开始)41H1B未用42H1B扩展引导标记(通常为29H)43H4B卷序列号(由格式化程序随机产生)47H12B卷标(如果没有设定卷标,则为“NO NAME”)52H8B文件系统名称的文本标识,如:FAT325AH420BDBR引导程序(FAT32通常从此处开始)1FEH2B结束标识“55H AAH”注:带星号的是重要字段u FAT分区的数据区用于存储文件数据,存储文件的基本单位是簇。一个簇由1128个扇区组成,但必须是2的n次方倍。
6、u 一个分区中的簇大小是固定的,在格式化的时候决定,其大小在引导扇区的BPB中给出。u 如果簇设置得大些,则会造成浪费空间较多,如果簇空间过小,则会造成FAT项增大,使得链表加长,增加管理成本,而且使访问速度降低。u 簇大小一般由格式化程序自动指定,在32位系统中一般为4KB16KB。u 在BPB参数中有一个参数是备份引导扇区位置,通常位于6号扇区。如果主引导扇区受到破坏,可以使用这个备份引导扇区进行修复。u 演示通过备份引导扇区修复分区的实验过程。u 在PBP中唯一没有直接给出的值就是数据区的起始扇区位置,它可以通过计算得来。u FAT32文件系统没有专门的根目录区,数据区的起始位置也就是首簇地址,因此数据区的起始扇区位置为:保留扇区数+FAT表扇区数2u 如果连备份引导扇区也被破坏,则只有从其他容量相近的FAT32分区复制引导扇区,但复制后需要对BPB的关键参数信息进行修改。u 演示对BPB关键参数的逆推算过程。n1.FAT32分区的组成结构n2.引导扇区中的重要BPB参数n3.计算数据区起始扇区位置1.请在自己的计算机上寻找一个FAT分区(虚拟机系统也可),仔细观察并写出BPB的重点字段,然后计算出数据区的起始扇区号。