Goldenlib.com
Читать книги онлайн бесплатно!
  • Главная
  • Жанры
  • Авторы
  • ТОП книг
  • ТОП авторов
  • Контакты

Восстановление данных. Практическое руководство

Часть 38 из 91 Информация о книге

00000000: 46 49 4C 45-2A 00 03 00-7C 77 1A 04-02 00 00 00 FILE*...|w......

00000010: 01 00 02 00-30 00 01 00-28 02 00 00-00 04 00 00 ....0...(.......

00000020: 00 00 00 00-00 00 00 00-06 00 06 00-00 00 47 11 ..............G.

...

000001F0: 00 00 00 00-00 00 00 00-00 00 00 00-00 00 00 00 ................

<-- Конец первого сектора файловой записи

000003F0: 07 СС E1 0D-00 09 00 00-FF FF FF FF-82 79 47 11 .Іа.....    ВyG.

<-- Конец второго сектора файловой записи

Внимание!

FILE Record
,
INDEX Record
,
RCRD Record
или
RSTR Record
искажены последовательностями обновления и в обязательном порядке должны быть восстановлены перед их использованием, в противном случае вместо актуальных данных вы получите мусор!

Атрибуты

Структурно всякий атрибут состоит из атрибутного заголовка (attribute header) и тела атрибута (attribute body). Заголовок атрибута всегда хранится в файловой записи, расположенной внутри MFT. Тела резидентных атрибутов хранятся там же. Нерезидентные атрибуты хранят свое тело вне MFT, в одном или нескольких кластерах, перечисленных в заголовке данного атрибута в специальном списке. Если 8-разрядное поле, расположенное по смещению

08h
байт от начала атрибутного заголовка, равно нулю, то атрибут считается резидентным, а если единице, то атрибут нерезидентен. Любые другие значения недопустимы.

Первые четыре байта атрибутного заголовка определяют его тип. Тип атрибута, в свою очередь, определяет формат представления тела атрибута. В частности, тело атрибута данных (тип:

80h
—
$DATA
) представляет собой "сырую" последовательность байт. Тело атрибута стандартной информации (тип:
10h
—
$STANDARD_INFORMATION
) описывает время его создания, права доступа и т.д. Более подробно эта тема будет рассмотрена далее в данной главе.

Следующие четыре байта заголовка содержат длину атрибута, выражаемую в байтах. Длина нерезидентного атрибута равна сумме длин его тела и заголовка, а длина резидентного атрибута равна длине его заголовка. Если к смешению атрибута добавить его длину, мы получим указатель на следующий атрибут (или маркер конца, если текущий атрибут — последний в цепочке).

Длина тела резидентных атрибутов, выраженная в байтах, хранится в 32- разрядном поле, расположенном по смещению 10h байт от начала атрибутного заголовка. 16-разрядное поле, следующее за его концом, хранит смещение резидентного тела, отсчитываемое от начала атрибутного заголовка. С нерезидентными атрибутами в этом плане все намного сложнее, и для хранения длины их тела используется множество полей. Реальный размер тела атрибута (real size of attribute), выраженный в байтах, хранится в 64-разрядном поле, находящемся по смещению 30h байт от начала атрибутного заголовка. Следующее за ним 64-разрядное поле хранит инициализированный размер потока (initialized data size of the stream), выраженный в байтах. Судя по всему, инициализированный размер потока всегда равен реальному размеру тела атрибута. 64-разрядное поле, расположенное по смещению

28h
байт от начала атрибутного заголовка, хранит выделенный размер (allocated size of attribute), выраженный в байтах и равный реальному размеру тела атрибута, округленному до размера кластера (в большую сторону).

Два 64-разрядных поля, расположенные по смещениям

10h
и
18h
байт от начала атрибутного заголовка, задают первый (starting VCN) и последний (last VCN) номера виртуального кластера, принадлежащего телу нерезидентного атрибута. Виртуальные кластеры представляют собой логические номера кластеров, не зависящие от своего физического расположения на диске. В подавляющем большинстве случаев номер первого кластера тела нерезидентного атрибута равен нулю, а последний — количеству кластеров, занятых телом атрибута, уменьшенному на единицу. 16-разрядное поле, расположенное по смещению
20h
от начала атрибутного заголовка, содержит указатель на массив
Data Runs
, расположенный внутри этого заголовка и описывающий логический порядок размещения нерезидентного тела атрибута на диске.

Каждый атрибут имеет свой собственный идентификатор (attribute ID), уникальный для данной файловой записи и хранящийся в 16-разрядном поле, расположенном по смещению

0Eh
от начала атрибутного заголовка.

Если атрибут имеет имя (attribute Name), то 16-разрядное поле, расположенное по смещению

0Ah
байт от атрибутного заголовка, содержит указатель на него. Для безымянных атрибутов оно равно нулю (большинство атрибутов имен не имеют). Имя атрибута хранится в атрибутном заголовке в формате UNICODE, а его длина определяется 8-разрядным полем, расположенным по смещению
09h
байт от начала атрибутного заголовка.

Если тело атрибута сжато, зашифровано или разрежено, 16-разрядное поле флагов, расположенное по смещению

0Ch
байт от начала атрибутного заголовка, не равно нулю.

Основные поля резидентных и нерезидентных атрибутов кратко описаны в табл. 6.4 и 6.5. Остальные поля не играют существенной роли, и потому здесь они не рассматриваются.

Таблица 6.4. Структура резидентного атрибута

Смещение Размер (байт) Значение Описание
00h
4 Тип атрибута (например,
0x10
,
0x60
,
0xB0
)
04h
4 Длина атрибута, включая этот заголовок
08h
1
00h
Флаг нерезидентности (non-resident flag)
09h
1
N
Длина имени атрибута (ноль, если атрибут безымянный)
0Ah
2
18h
Смещение имени (ноль, если атрибут безымянный)
0Ch
2
00h
Флаги
Значение Описание
0001h
Сжатый атрибут (compressed)
4000h
Зашифрованный атрибут (encrypted)
8000h
Разреженный атрибут (sparse)
0Eh
2 Идентификатор атрибута (attribute ID)
10h
4
L
Длина тела атрибута, без заголовка
14h
2
2N+18h
Смещение тела атрибута
16h
1 Индексный флаг
17h
1
00h
Используется для выравнивания
18h
2N
UNICODE
Имя атрибута (если есть)
2N+18h
L Тело атрибута

Перейти к странице:
Предыдущая страница
Следующая страница
Жанры
  • Военное дело 5
  • Деловая литература 89
  • Детективы и триллеры 936
  • Детские 31
  • Детские книги 237
  • Документальная литература 186
  • Дом и дача 55
  • Дом и Семья 92
  • Жанр не определен 14
  • Зарубежная литература 253
  • Знания и навыки 137
  • История 132
  • Компьютеры и Интернет 8
  • Легкое чтение 435
  • Любовные романы 4513
  • Научно-образовательная 138
  • Образование 209
  • Поэзия и драматургия 39
  • Приключения 243
  • Проза 636
  • Прочее 225
  • Психология и мотивация 32
  • Публицистика и периодические издания 30
  • Религия и духовность 80
  • Родителям 4
  • Серьезное чтение 56
  • Спорт, здоровье и красота 12
  • Справочная литература 11
  • Старинная литература 27
  • Техника 5
  • Фантастика и фентези 4560
  • Фольклор 4
  • Хобби и досуг 5
  • Юмор 41
Goldenlib.com

Бесплатная онлайн библиотека для чтения книг без регистрации с телефона или компьютера. У нас собраны последние новинки, мировые бестселлеры книжного мира.

Контакты
  • [email protected]
Информация
  • Карта сайта
© goldenlib.com, 2025. | Вход