- •Диски, разделы и тома
- •1 Примером неразделимых дисков служат компакт-диски и dvd, которые имеют только одни раздел.
- •Базовые диски
- •Тома и диспетчеры томов
- •Пространство имен устройств
- •Системные файлы ntfs
- •Логические и виртуальные номера кластеров ntfs
- •Структура записи mft в файловой системе ntfs
- •Атрибуты файла
- •Каталоги ntfs
- •Разреженные файлы ntfs
- •Сжатые файлы ntfs
- •Пользовательские квоты дискового пространства
Структура записи mft в файловой системе ntfs
Как уже отмечалось, каждый файл и каталог в NTFS имеет собственную запись в главной таблице файлов. Эта запись иногда упоминается как запись MFT. Каждая запись MFT имеет фиксированный размер, который определяется в момент форматирования диска и находится в диапазоне 1024— 4096 байт. В Windows NT 3.51 запись MFT имела размер 4 Кбайт. В Windows NT 4.0 компания Microsoft изменила минимальный размер записи, чтобы он составлял 1 Кбайт или был равен размеру кластера, в зависимости от того, что больше. Это было сделано после проведения анализа, показавшего, что записи MFT чрезмерно занимают дисковое пространство.
Запись MFT содержит стандартный заголовок, после которого идет последовательность атрибутов, сохраняемых в такой форме:
-
заголовок атрибута;
-
название атрибута;
-
данные атрибута.
В качестве примера атрибутов можно указать имя файла, список управления доступом файла и данные файла.
Если данные атрибута имеют небольшой размер, они будут сохранены непосредственно в записи MFT. Такие атрибуты называются резидентными. С другой стороны, если данные слишком велики для хранения в MFT, сохраняется информация о расположении этих данных (номера кластеров, в которых размещены необходимые данные). Такие атрибуты называются нерезидентными. Ничего особенного в этих атрибутах нет, поскольку любой атрибут может быть резидентным или нерезидентным.
данные файлов, сохраненные в виде нерезидентных атрибутов. -- структура данных включает три элемента.
-
Виртуальный номер кластера (VCN), который указывает расположение кластера относительно начала файла. Например, виртуальный номер кластера, равный 0, указывает, что необходимый кластер является первым кластером атрибута файла.
-
Логический номер кластера (LCN), который указывает расположение кластера относительно тома или раздела. Например, логический номер кластера, равный 25, указывает, что необходимый кластер является 2б-м кластером от начала тома или раздела.
-
Количество кластеров в определенной "цепочке", т.е. количество кластеров в непрерывной последовательности, выделенных для хранения атрибутов файла.
MFT
|
|
|
|
|
Атрибуты файла
Стандартный Стандартные |
Заголовок |
Данные |
Заголовок [Данные |
Заголовок |
Данные |
|
заголовок |
данные |
имени |
имени |
безопасности! безопасности |
данных |
файла |
информации |
информации |
|
|
|
файла |
|
Цепочка кластеров
VCN 1 LCN |
Количество кластеров |
|
0 |
25' |
7 |
8 |
125 |
7 |
Рис. Структура записи MFT
Если цепочка кластеров файла не помещается в одну запись MFT, он сохраняется в дополнительных записях MFT.
Кроме того, NTFS поддерживает несколько потоков данных. Поток, принятый по умолчанию, открывается при использовании функции CreateFile с именем файла в виде относительного или абсолютного пути. Указав имя файла и имя потока через двоеточие, можно открыть другой поток данных, например \directoryl\Filel:DataStream2. Файловая система NTFS хранит эту информацию как еще один атрибут в MFT, а данные второго потока хранит в виде другого атрибута.