Литмир - Электронная Библиотека
Содержание  
A
A
$STANDARD_INFORMATION

Атрибут стандартной информации описывает время создания/изменения/последнего доступа к файлу и права доступа, а также некоторую другую вспомогательную информацию (например, квоты). Структура атрибута стандартной информации кратко описана в табл. 6.7.

Таблица 6.7. Структура атрибута

<i>$STANDARD_INFORMATION</i>

Смещение Размер ОС Описание
- - Любая Стандартный атрибутный заголовок (standard attribute header)
00h
8 Любая
C
— время создания (creation) файла
08h
8 Любая
A
— время изменения (altered) файла
10h
8 Любая
M
— время изменения файловой записи (MFT changed)
18h
8 Любая
R
— время последнего чтения (read) файла
20h
4 Любая Права доступа MS-DOS (MS-DOS file permissions)
Значение Описание
0001h
Только на чтение (read-only)
0002h
Скрытый (hidden)
0004h
Системный (system)
0020h
Архивный (archive)
0040h
Устройство (device)
0080h
Обычный (normal)
0100h
Временный (temporary)
0200h
Разреженный (sparse) файл
0400h
Точка передачи (reparse point)
0800h
Сжатый (compressed)
1000h
Оффлайновый (offline)
2000h
Неиндексируемый (not content indexed)
4000h
Зашифрованный (encrypted)
24h
4 Любая Старшее двойное слово номера версии (maximum number of versions)
28h
4 Любая Младшее двойное слово номера версии (version number)
2Ch
4 Любая Идентификатор класса (class ID)
30h
4 Windows 2000 Идентификатор владельца (owner ID)
34h
4 Windows 2000 Идентификатор безопасности (security ID)
38h
8 Windows 2000 Количество квотируемых байт (quota charged)
40h
8 Windows 2000 Номер последней последовательности обновления (update sequence number USN)
$ATTRIBUTE_LIST

Атрибут списка атрибутов (прямо каламбур) используется в тех случаях, когда все атрибуты файла не умещаются в базовой файловой записи, и файловая система вынуждена располагать их в расширенных файловых записях. Индексы расширенных файловых записей содержатся в атрибуте списка атрибутов, помещаемом в базовую файловую запись.

При каких обстоятельствах атрибуты не умещаются в одной файловой записи? Это может произойти в следующих случаях:

□ файл содержит много альтернативных имен или жестких ссылок;

□ файл сильно фрагментирован;

□ файл содержит очень сложный дескриптор безопасности;

□ файл имеет очень много потоков данных (т.е. атрибутов типа

$DATA
).

Структура атрибута списка атрибутов приведена в табл. 6.8.

Таблица 6.8. Структура атрибута

<i>$ATTRIBUTE_LIST</i>

Смещение Размер Описание
- - Стандартный атрибутный заголовок (standard attribute header)
00h
4 Тип (type) атрибута (см. табл. 6.6)
04h
2 Длина записи (record length)
06h
1 Длина имени (name length), или ноль, если нет, условно —
N
07h
1 Смещение имени (offset to name), или ноль если нет
08h
8 Начальный виртуальный кластер (starting VCN)
10h
8 Ссылка на базовую/расширенную файловую запись
18h
2 Идентификатор атрибута (attribute ID)
1Ah
2
N
Если
N&gt;0
, то имя в формате UNICODE
40
{"b":"837815","o":1}