1. 主页
  2. 文档
  3. exFAT文件系统结构
  4. 位图分配表(Allocation Bitmap Table)

位图分配表(Allocation Bitmap Table)

图8 扩展FAT文件系统(exFAT)位图分配表

exFAT的位图分配表最大个数是2,但是现在还不支持TexFAT,因此只有一个位图分配表。

FAT表位于簇集之外,但是位图分配表位于簇集之内,包括一系列簇。格式化的时候首先建立位图分配表,并指定为第2簇(簇集的第一个簇)。但是这不是一成不变的,格式化程序建立位图分配表时可以把它放在簇集的任何位置或者以后修改到任何位置。

位图目录项指向位图分配表的第一个簇,这个项在8.3章详细解释。

位图分配表的数据流由一系列的位构成,每一个字节代表卷的8个簇,每一位代表簇集中一个簇的分配状态。值是0的位表示未分配(空闲簇),值是1代表已分配。注意位图分配表的第一个字节代表9号簇到2号簇,字节0的位0,是2号簇。低位代表前面的簇,高位代表后面的簇。位图分配表的第一个字节的第一个位代表卷的第一个簇(2号簇)。在位图分配表中找一个簇的分配状态时,先用这个簇数减去2,得到一个值,除以8,得到的商是位图分配表中的字节偏移,得到的余数描述它的位(位从0到7)。

例如101簇,101-2=99,99除以8的商是12,余数是3。因此101簇如图8所示,位于位图的12字节的3位(因为是从0开始的,所以是位图的第13字节从右向左第4位)。

例如图7的例子,图8显示了位图中40号簇和41号簇是分配的。位的位置是从右到左的,在这个例子中从左到右显示的是41号簇到34号簇,它的前两个位设置为1,说明它们是已经分配的。

我们要如何帮助您?

评论 抢沙发

评论前必须登录!