词汇

文件 - $AttrDef (4)

前一页 后一页

概述

这是一个包含所有在卷中用到的文件属性信息的系统文件。

属性结尾标记为 0xFFFFFFFF

属性

类型 描述 名称
0x10 标准信息 ($STANDARD_INFORMATION)  
0x30 文件名 ($FILE_NAME) $AttrDef
0x50 安全描述符 ($SECURITY_DESCRIPTOR)  
0x80 数据 ($DATA) [未命名]

文件结构

未命名数据流

它的结构为一序列的记录,每个记录定义一个文件属性,它的结构如下:

偏移量 大小 描述
0x00 128 Unicode 编码的标签
0x80 4 类型
0x84 4 显示规则
0x88 4 整理规则
0x8C 4 标记
0x90 8 最小尺寸
0x98 8 最大尺寸

注意

显示规则
此时总为零
整理规则
此时一般为零,但有可能是:
标记 描述
0x00 二进制
0x01 文件名
0x02 Unicode 编码字串
0x10 无符号的长
0x11 SID
0x12 安全的无用信息
0x13 多重无符号的长
标记
我们只证明3个标记:0x02, 0x40 and 0x80. 0x40 和 0x80好像从不在一起。 因此推测如下:
标记 描述
0x02 被编入索引的
0x40 常驻的
0x80 非常驻的
观察下面表格中的IRN一栏

Windows NT Example

Type Name Flags IRN Min Size Max Size
0x10 $STANDARD_INFORMATION 0x40 R 0x30 0x30
0x20 $ATTRIBUTE_LIST 0x80 N - -
0x30 $FILE_NAME 0x42 IR 0x44 0x242
0x40 $VOLUME_VERSION 0x40 R 0x8 0x8
0x50 $SECURITY_DESCRIPTOR 0x80 N - -
0x60 $VOLUME_NAME 0x40 R 0x2 0x100
0x70 $VOLUME_INFORMATION 0x40 R 0xC 0xC
0x80 $DATA 0x00   - -
0x90 $INDEX_ROOT 0x40 R - -
0xA0 $INDEX_ALLOCATION 0x80 N - -
0xB0 $BITMAP 0x80 N - -
0xC0 $SYMBOLIC_LINK 0x80 N - -
0xD0 $EA_INFORMATION 0x40 R 0x8 0x8
0xE0 $EA 0x00   - 0x10000

$VOLUME_VERSION 和 $SYMBOLIC_LINK 出现在WINNT中但是不用,它们不出现在win2k和winxp中。

Windows 2000 and Windows XP Example

Type Name Flags IRN Min Size Max Size
0x10 $STANDARD_INFORMATION 0x40 R 0x30 0x48
0x20 $ATTRIBUTE_LIST 0x80 N - -
0x30 $FILE_NAME 0x42 IR 0x44 0x242
0x40 $OBJECT_ID 0x40 R - 0x100
0x50 $SECURITY_DESCRIPTOR 0x80 N - -
0x60 $VOLUME_NAME 0x40 R 0x2 0x100
0x70 $VOLUME_INFORMATION 0x40 R 0xC 0xC
0x80 $DATA 0x00   - -
0x90 $INDEX_ROOT 0x40 R - -
0xA0 $INDEX_ALLOCATION 0x80 N - -
0xB0 $BITMAP 0x80 N - -
0xC0 $REPARSE_POINT 0x80 N - 0x4000
0xD0 $EA_INFORMATION 0x40 R 0x8 0x8
0xE0 $EA 0x00   - 0x10000
0xF0 $PROPERTY_SET ? ? ? ?
0x100 $LOGGED_UTILITY_STREAM 0x80 N - 0x10000

$PROPERTY_SET 简单地出现在NTFSv3.0中,它偏向于支持本地结构存储(NSS)。

其他信息

添加用户定义的属性到此文件里是可能的。

    $AttrDef有多大?36k?
    在NT4里36k大部分是空白的
    现在2560=15属性+1空白(2.5k)
    

Online 中文在线 Validate HTML Validate CSS $Id: attrdef.html,v 1.11 2001/07/11 16:31:44 flatcap Exp $