FAT32文件系统的存储组织结构

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

FAT32文件系统的存储组织结构(一) (2012-05-19 16:57)

标签: FAT32 文件系统分类:文件系统

对磁盘的物理结构,逻辑结构和存储结构有了比较深入的了解后,我们来仔细探讨FAT32文件系统的存储组织结构。说到文件系统的组织结构,我们应该马上意识到,这指的是文件系统在同一个分区内的组织结构,在这个话题上,我们完全可以不管分区之外的所有事情。

为了分析FAT32文件系统的存储组织结构,我们来建立一个实实在在的文件系统:将U盘插入电脑,将U盘格式化成FAT32分区格式:

以建好的U盘FAT32文件系统为基础,下面从文件系统的各个组成来分别加以介绍。

分区引导扇区DBR

用winhex打开U盘显示如下:

这是FAT32分区引导记录,定义如下:

偏移00H: 3字节的跳转指令 EB 58 90,跳过下面的BPB和扩展BPB部分

偏移03H:8字节的硬盘分区类型文本字符名:4D 53 44 4F 53 35 2E 30 即:MSDOS5.0

偏移0BH: 25字节的分区参数块(BPB),细分如下:

偏移0BH:扇区字节数 00 02 即0X0200,512字节

偏移0DH:每簇扇区数 08即每簇包括8个扇区

偏移0EH:保留扇区数 24 00即保留36个扇区

偏移10H:FAT表份数 02即两个FAT表

偏移11H:未用 00 00

偏移13H:未用 00 00

偏移15H:介质类型 F8即本地硬盘

偏移16H:未用 00 00

偏移18H:每磁道扇区数 3F 00 即每磁道63扇区

偏移1AH:磁头数 FF 00即255个磁头

偏移1CH:隐藏扇区数 80 1F即8064个隐藏扇区

偏移20H:磁盘总扇区数 80 F0 77 00即总共7860352个扇区

(7860352*512=4024500224,因为我的U盘是4G)

偏移24H:52字节的扩展分区参数块(扩展BPB),细分如下:

偏移24H:FAT表占用扇区数 EE 1D 00 00即FAT表占7662个扇区

偏移28H:未用 00 00 00 00

偏移2CH:根目录入口簇号 02 00 00 00即根目录从02号簇开始

偏移30H:文件系统信息扇区号 01 00即扇区1

偏移32H:备份引导扇区的位置 06 00即6号扇区(第7个扇区),从WINHEX中我们也可以看到,6号扇区的内容和0号引导扇区内容是一样的

偏移34H:未用 00 00 00 00 00 00 00 00 00 00 00 00

偏移40H:物理磁盘号 00

偏移41H:未用 00

偏移42H:扩展引导标志 29即0X29

偏移43H:磁盘序列号F1 2A 27 04通常为一随机数

偏移47H:卷标ASCII 4E 4F 20 4E 41 4D 45 20 20 20 20 即NO NAME

偏移52H:文件系统格式ASCII 46 41 54 33 32 20 20 20即FAT32

偏移5AH:分区引导代码 420字节:

33C98ED1BCF47B8EC18ED9BD007C884E028A5640B408CD1 37305B9FFFF8AF166

0FB6C640660FB6D180E23FF7E286CDC0ED0641660FB7C96 6F7E1668946F8837E1

6007538837E2A007732668B461C6683C00CBB0080B90100 E82B00E94803A0FA7DB

47D8BF0AC84C074173CFF7409B40EBB0700CD10EBEEA0FB 7DEBE5A0F97DEBE0

98CD16CD196660663B46F80F824A00666A0066500653666 810000100807E02000F8

52000B441BBAA558A5640CD130F821C0081FB55AA0F8514 00F6C1010F840D00FE4

602B4428A56408BF4CD13B0F96658665866586658EB2A66 33D2660FB74E1866F7F1

FEC28ACA668BD066C1EA10F7761A86D68A56408AE8C0E40 60ACCB80102CD13666

10F8254FF81C300026640490F8571FFC34E544C44522020 2020202000000000000000

00000000000000000000000000000000000000000000000 000000000000000000000000

00000000000000D0A52656D6F7665206469736B73206F72 206F74686572206D656469

612EFF0D0A4469736B206572726F72FF0D0A50726573732 0616E79206B657920746F2

0726573746172740D0A0000000000ACCBD80000

偏移1FEH:有效扇区结束标志 55 AA

到此分区引导扇区介绍结束。

文件分配表FAT

简介:

FAT表(文件分配表),是FAT文件系统中用于磁盘数据索引和定位而引进的一种链式结构。在FAT文件系统中,文件的存储依照FAT表制定的簇链式数据结构来进行。同时,FAT文件系统将组织数据时使用的目录也抽象为文件,以简化对数据的管理。

FAT1表位置的定位:

在我们前面介绍分区引导记录的时候提到,在偏移0EH处存储了保留扇区的个数,这个保留扇区数指的就是当前分区内DBR到FAT表之间的所有扇区的个数(包括DBR但不包括FAT表)。因此,我们可以定位FAT表所在的起始偏移位置了,即24H*200H=4800H。我们贴出4800H处得部分内容如下:

显然没有错,这就是我们FAT1所存储的位置,只是当前没有存储文件,所以FAT比较简单罢了。

FAT2表位置的定位:

在我们前面介绍分区引导记录的时候提到,在偏移24H处存储了FAT表所占用的扇区个数,我们又知道FAT2是紧邻FAT1的,所以可以很容易得到FAT2的存储位置的偏移地址:FAT1的起始偏移地址+FAT1的大小

=4800H+1DEEH*200H=3C2400H,我们贴出3C2400H处的部分内容如下:

相关文档
最新文档