NTFS文件系统-MFT的属性头

前面说过MFT是有一个个属性组成,那么每个属性的具体结构又是如何呢?MFT属性的类型很多,但它们都有个共同的特点,那就是每个属性都有属性头和属性体。属性头又分为常驻属性和非常驻属性。常驻属性和非常驻数据最大的区别是常驻属性的只是在MFT内部记录,非常驻数据由于MFT记录不下(一个MFT项只有1024)所以需要在其它数据区记录。不管是常驻属性还是非常驻属性,它的属性头的前面16个字节是一样的。

MFT属性结构图


从上图可以看出MFT头很小,只有几行代码 ,剩下都是MFT的属性。图中10属性和30属性都是常驻属性,而80属性是非常驻属性 ,因为80属性是记录文件内容的属性,一般不是几个字节就能记录的。下面我们来看下非常驻属性的属性头具体结构

偏移字节(16进制) 描述
00-03 属性类型
04-07 属性长度
08 常驻属性标志00:常驻 ;01表示非常驻
09属性名长度(为0表示没有属性名)
0A-0B 属性名偏移(相对于属性头)
0C-0D 标志
0E-0F属性ID标志
10-13 属性体大小 
14-15 属性头的大小
16 索引
17 保留

非常驻属性头的数据结构

偏移字节(16进制) 描述
00-03 属性类型
04-07 属性长度
08 常驻属性标志00:常驻 ;01表示非常驻
09属性名长度(为0表示没有属性名)
0A-0B 属性名偏移(相对于属性头)
0C-0D 标志
0E-0F属性ID标志
10-17簇流的起始虚拟簇号(总是从0开始)
18-1F簇流的结束虚拟簇号
20-21簇流列表相对本属性头起始处偏移
22-23压缩单位大小
24-27保留
28-2F为属性内容分配的空间大小字节数 
30-37属性内容实际占用的大小字节数
38-3F属性内容初始大小字节数

非常驻属性头的最后3个参数都表示属性内容的大小, 这里可以写成一样大的。



评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值