欢迎来到天天文库
浏览记录
ID:8388342
大小:270.00 KB
页数:14页
时间:2018-03-24
《剖析fat文件系统结构》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、剖析FAT文件系统结构2009-10-2721:25:49标签:剖析FAT文件系统结构原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://haobinnan.blog.51cto.com/775253/217665 本人写文章,难免有错误的地方请大家谅解,如果有错误请大家指教,现在开始正题,大家都知道FAT文件系统不是什么新鲜的文件系统了,目前用此文件系统的设备很多,比如现在的数码相机、数码摄像机、手机等等设备都以FAT作为它管理文件的一个系统,因为FAT文件系统的结构相对简单,容易理解,FAT文件系统进行
2、了数次的升级,从FAT12进化到FAT16直到FAT的最后版本FAT32(还有一个是exFAT因为和FAT还是略有不同,在此就不多做介绍),今天就以FAT最新的FAT32文件系统作为本将的开始,网上类似讲解FAT文件系统的文章也很多,我就讲解最重要的一些知识,也是我的一些经验,希望能对各位爱好数据恢复的朋友们有所帮助。 了解一个文件系统就要从最基础的开始,我们先从FAT32的DBR(DOSBOOTRECORD,DOS引导记录)讲起,DBR分为两部分:DOS引导程序和BPB(BIOS参数块)。其中DOS引导程序完成DOS系统文件(IO.SYS,MSDOS.SYS)的定位
3、与装载,而BPB用来描述本DOS分区的磁盘信息,如比较重要的参数有“每个扇区的字节数”、“每个簇有多少个扇区”、“保留扇区”、“FAT表数量”、“扇区总数”、“每FAT扇区数”,现在就从上述列出的几个关键的参数做详细的讲述: 1、每个扇区的字节数: 就是一个扇区共有多少个字节来组成,一般情况都是512个字节为一个扇区,16进制表示为200H。 2、每个簇有多少个扇区: 就是一个簇包含了多少个扇区,他的表示都是2的次方(512字节1、2、4、8、16、32、64扇区),比如8个扇区构成一个簇,它的簇大小就是8,16进制表示为8H。 3、保留扇区: 就是DBR到FAT表之
4、间共有多少个扇区。 4、FAT表数量: 表示该分区上的FAT表共有几个副本,一般情况都为2(注:在重建DBR的情况下可以灵活调配)。 5、扇区总数:表示该分区的扇区数量。 6、每FAT扇区数:就是单个FAT表的扇区总数,通过次参数配合上面的参数就能够定位到根目录也就是Root,公式为:保留扇区+FAT表数量*每FAT扇区数=根目录的地址。 上述就是最为重要的几个BPB参数的解释,下面是DBR的截图,让大家看一下: WinHEX扇区截图 WinHex模板解释出来的BPB参数 在此提供一个WinHex调用的模板,大家可以把--------------------
5、--之间的代码复制到一个记事本中,保存为以TPL为扩展名的文件,然后存放到WinHex的目录中即可。 --------------------------------------------------------------------------template"FAT32引导扇区"//TemplatebyStefanFleischmann//X-WaysSoftwareTechnologyAG//适用于FAT32格式逻辑驱动器的0扇区。description"BIOS参数块(BPB)和其它"applies_todisksector-alignedrequire
6、s0x02"90"requires0x52"4641543332"//="FAT32"在偏移地址52requires0x1FE"55AA"beginread-onlyhex3"JMP指令"char[8]"OEM"section"BIOS参数块"uint16"字节/扇区"uint8"扇区/簇"uint16"保留扇区"uint8"FAT计数"uint16"根项目(未使用)"uint16"扇区(小容量)"hex1"媒介描述(16进制)"uint16"扇区/FAT(小容量)"uint16"扇区/磁轨"uint16"头"uint32"隐藏扇区"uint32"扇区(大容量)"se
7、ction"FAT32扇区"uint32"扇区/FAT"uint16"延迟"uint16"版本"uint32"根目录第1簇"uint16"FSInfo扇区"uint16"备份引导扇区"read-onlyhex12"(保留)"endsectionhex1"BIOS驱动(16进制,HD=8x)"read-onlyuint8(未使用)hex1"扩展启动特征(29h)"uint32"卷序列号(10进制)"move-4hex4"卷序列号(16进制)"char[11]"卷标签"char[8]"文件系统"endsectiongoto0x1FEread-onlyhe
此文档下载收益归作者所有