Структура тома NTFS

 

В отличие от разделов FAT и s5/ufs все пространство тома NTFS представляет собой либо файл, либо часть файла. Основой структуры тома NTFS является главная таблица файлов (Master File Table, MFT), которая содержит по крайней мере одну запись для каждого файла тома, включая одну запись для самой себя (рис. 5.11). Каждая запись MFT имеет фиксированную длину, зависящую от объема диска: - 1, 2 или 4 Кбайт. Для большинства дисков, используемых сегодня, размер записи MFT равен
2 Кбайт. Далее мы будем считать его размером записи по умолчанию.

Все файлы на томе NTFS идентифицируются номером файла, который определяется позицией файла в MFT. Этот способ идентификации файла близок к способу, используемому в файловых системах s5 и ufs, где файл однозначно идентифицируется номером его записи в области индексных дескрипторов.

 

Загрузочный блок
: :
Системный файл 1
Системный файл 2
: :
Системный файл n
Копия MFT (первые три записи)
Файл n-1
Копия загрузочного блока
MFT
Файл m
MFT

 

 

1-й отрезок MFT

 

2-й отрезок MFT

 

3-й отрезок MFT

 

Рис. 5.11. Структура тома NTFS

В Windows NT логический раздел принято называть томом. Весь том NTFS состоит из последовательности кластеров, что отличает эту файловую систему от рассмотренных ранее, где на кластеры делилась только область данных. Порядковый номер кластера в томе NTFS называется логическим номером кластера (Logical Cluster Number, LCN). Файл NTFS также состоит из последовательности кластеров, при этом порядковый номер кластера внутри файла называется виртуальным номером кластера
(Virtual Cluster Number, VCN).

Базовая единица распределения дискового пространства для файловой системы NTFS - непрерывная область кластеров, называемая отрезком.
В качестве адреса отрезка NTFS использует логический номер его первого кластера, а также количество кластеров в отрезке k, т.е. пару (LCN, k). Таким образом, часть файла, помещенная в отрезок и начинающаяся с виртуального кластера VCN, характеризуется адресом, состоящим из трех чисел: (VCN, LCN, k).

Для хранения номера кластера в NTFS используются 64-разрядные указатели, что дает возможность поддерживать тома и файлы размером до 264 кластеров. При размере кластера в 4 Кбайтов это позволяет использовать тома и файлы, состоящие из 64 миллиардов килобайт.

Загрузочный блок тома NTFS располагается в начале тома, а его ко-пия - в середине тома. Загрузочный блок содержит стандартный блок параметров BIOS, количество блоков в томе, а также начальный логический номер кластера основной копии MFT и зеркальную копию MFT.

Далее располагается первый отрезок MFT, содержащий 16 стандартных, создаваемых при форматировании, записей о системных файлах NTFS. Назначение этих файлов описано в табл. 5.1.

 

Структура записей главной таблицы файлов (MFT)

 

Таблица 5.1

№ файла Имя Описание
$MFT Сам MFT
$MFTmirr Зеркальная копия первых трех записей MFT
$LogFile Список транзакций, который используется для восстановления файловой системы после сбоев
$Volume Имя тома, версия NTFS и другая информация о томе
$AttrDef Таблица имен, номеров и описаний атрибутов
$. Индекс корневого каталога
$Bitmap Битовая карта кластеров
$Boot Загрузочный сектор раздела
$BadClus Файл плохих кластеров
$Quota Таблица квот
$Upcase Таблица преобразования регистра символов для кодировки Unicode
11-15 Зарезервированы для будущего использования Не используется