词汇

概念 - Attribute Header

前一页 后一页

概述

每一个MFT记录的每个属性都有一个标准标题。这个标题存储了有关属性类型,大小,名称(可选)和是否常驻的信息。

此属性的大小取决于两方面:是否有名称,是否常驻。为了简化表格,所有四个可能性都全部显示(有些值已经填好了)。

标准属性标题

常驻,无名称

偏移量 大小 描述
0x00 4   属性类型 (如 0x10, 0x60)
0x04 4   长度 (包括此标题)
0x08 1 0x00 非常驻标记
0x09 1 0x00 名称长度
0x0A 2 0x18 到名称的偏移量
0x0C 2 0x00 标记
0x0E 2   属性标识符 (a)
0x10 4 L 属性长度
0x14 2 0x18 到属性的偏移量
0x16 1   编入索引的标记
0x17 1 0x00 填料
0x18 L   属性

(a) 每个属性都有一个唯一的标识符。

常驻, 命名的

偏移量 大小 描述
0x00 4   属性类型 (如 0x90, 0xB0)
0x04 4   长度 (包括此标题)
0x08 1 0x00 非常驻标记
0x09 1 N 名称的长度
0x0A 2 0x18 到名称的偏移量
0x0C 2 0x00 标记
0x0E 2   属性标识符 (a)
0x10 4 L 属性长度
0x14 2 2N+0x18 到属性的偏移量(b)
0x16 1   编入索引的标记
0x17 1 0x00 填料
0x18 2N Unicode 属性名称
2N+0x18 L   属性 (c)

(a) 常驻属性不能压缩
(b) 每个属性有唯一的标识符
(c) 上舍入成4字节的倍数

非常驻, 无名称

偏移量 大小 描述
0x00 4   属性类型 (如 0x20, 0x80)
0x04 4   长度 (包括此标题)
0x08 1 0x01 非常驻标记
0x09 1 0x00 名称长度
0x0A 2 0x00 到名称的偏移量
0x0C 2   标记
0x0E 2   属性标识符 (a)
0x10 8   起始VCN
0x18 8   最后的VCN
0x20 2 0x40 到数据运转的偏移量
0x22 2   压缩单位大小(b)
0x24 4 0x00 填料
0x28 8   属性的分配大小 (c)
0x30 8   属性的实际大小
0x38 8   流的初始数据大小 (d)
0x40 ...   数据运转

(a) 每个属性有唯一的标识符
(b) 压缩单位大小 = 2x 簇。0表示未压缩
(c) 属性大小上舍入到簇的大小
(d) 什么时候它不等于分配大小?

非常驻,命名的

偏移量 大小 描述
0x00 4   属性类型 (如 0x80, 0xA0)
0x04 4   长度 (包括此标题)
0x08 1 0x01 非常驻标记
0x09 1 N 名称长度
0x0A 2 0x40 到名称的偏移量
0x0C 2   标记
0x0E 2   属性标识符 (a)
0x10 8   起始VCN
0x18 8   最后的VCN
0x20 2 2N+0x40 到数据运转的偏移量(b)
0x22 2   压缩单位大小(c)
0x24 4 0x00 填料
0x28 8   属性的分配大小 (d)
0x30 8   属性的实际大小
0x38 8   流的初始数据大小 (e)
0x40 2N Unicode 属性名称
2N+0x40 ...   数据运转 (b)

(a) 每个属性有唯一的标识符
(b) 上舍入到4字节的倍数
(c) 压缩单位大小 = 2x 簇。0表示未压缩
(d) 属性大小上舍入到簇的大小
(e) 什么时候它不等于分配大小?

标记

标记 描述
0x0001 压缩
0x4000 加密
0x8000 稀少

注意

其他信息

只有数据属性是非常驻时才能被压缩或者稀少。

尽管压缩标记存储在标题里,但不影响标题的大小。

    名称不能以零终止
    
    FIXME
    0x40 __s64 compressed_size;
    压缩后的属性值的字节数。
    只有被压缩后才存在,总是簇的倍数大小。
    表示磁盘上在用的实际磁盘空间数量。
    

FIXME: 编入索引的标记只在常驻属性里出现,这是不是意味着你只能索引常驻属性?


Online 中文在线 Validate HTML Validate CSS $Id: attribute_header.html,v 1.12 2001/07/11 11:04:05 flatcap Exp $