APP下载

exFAT文件系统分析及DBR手动修复

2018-09-06王赟

山西电子技术 2018年4期

王 赟

(山西职业技术学院,山西 太原 030006)

0 引言

随着信息化的不断发展,闪存中单个大文件的存储需求越来越高,FAT32文件系统的闪存很多时候已不能满足需求,NTFS文件系统则不适用于闪存介质(执行每一个读写操作都需要对介质进行多次访问,对闪存芯片损伤较大)。exFAT(Extended File Allocation Table File System)文件系统的出现有效解决了这一难题,同时exFAT文件系统下数据恢复需求也随之增加,只有深入了解exFAT文件系统结构,才能有效恢复丢失数据,减少用户损失。

1 exFAT文件系统简介

1.1 exFAT文件系统结构

exFAT文件系统是由DBR、FAT表、位图文件(BITMAP)、大写文件(UPCASE)、数据区(DATA)组成[1]。结构示意图如图1所示。

DBRFAT表位图文件大写文件数据区(包括目录存放区以及用户数据)

图1 EXFAT结构示意图

1.2 DBR参数信息标注图(如图2所示)

下面对这些参数做详细的分析。

1) 跳转指令:固定值。

2) 铭文标志:EXFAT。微软将此处设置为EXFAT。

3) MBR保留:MBR到当前位置的扇区数。

4) 分区大小:分区所占用扇区数。

5) FAT表起始扇区:FAT表开始的扇区号。

6) FAT表大小:FAT表所占用扇区数。

7) 首簇起始扇区号:首簇即第二簇(位图文件)开始的扇区号。

8) 分区内总簇数:分区内一共有多少个簇(也是从二号簇开始计算)。

9) 根目录首簇号:根目录位于第几簇。

10) 卷序列号:无意义。

11) 每扇区字节数:2的9次,512。

12) 每簇扇区数:2的6次,64。

图2 DBR信息标注

在exFAT文件系统下0-8扇区都是作用分区,即结尾都写55 AA结束标志,一旦55AA被破坏,分区则提示未格式化。

1.3 FAT表分析

exFAT文件系统和FAT32有极大的相似性,数据都从第二簇开始记录,也都有FAT表[2]。在FAT32中,有两个FAT表,用来记录簇的占用情况。而在exFAT中,只有一个FAT表,并且只有产生碎片文件时,才会在FAT表中记录[3]。……

登录APP查看全文