Том NTFS и файловая структура

NTFS использует следующие концепции дискового хранения:

Сектор. Наименьшая единица физического хранения на диске. Размер данных в байтах является степенью двойки и почти всегда равен 512 байт;

Кластер. Один или несколько последовательных секторов на одной дорожке. Размер кластера в секторах является степенью двойки;

Том. Логический раздел диска, состоящий из некоторого количества кластеров и используемый файловой системой для распределения пространства. В любой момент времени том состоит из информации файловой системы, набора файлов и нераспределенного пространства, оставшегося в томе, которое может быть выделено файлам. Том может занимать как весь диск, так и его часть или охватывать несколько дисков. При использовании RAID 5 том состоит из полос, охватывающих несколько дисков. Максимальный размер тома NTFS составляет 264 байт.

Кластер является фундаментальной единицей размещения в файловой системе NTFS, которая не распознает секторы. Предположим, например, что размер каждого сектора составляет 512 байт и что система настроена так, что в одном кластере содержатся по два сектора (один кластер = 1 Кбайт). При создании пользователем файла размером 1600 байт файлу отводятся два кластера. Если впоследствии пользователь обновляет файл, и он увеличивается до 3200 байт, то ему выделяются еще два кластера. Кластеры, выделяемые файлу, не обязательно должны образовывать непрерывный блок; в NTFS допускается фрагментация файла на диске. В настоящее время максимальный размер файла, поддерживаемый NTFS, составляет 232 кластеров, что эквивалентно максимум 248 байт.

Использование кластеров при размещении файлов делает систему NTFS независимой от размеров физических секторов. Это позволяет системе NTFS без препятствий поддерживать нестандартные диски с размером сектора, не равным 512 байт, а также эффективно поддерживать диски очень большой емкости и файлы больших размеров посредством большего размера кластера. Эффективность обеспечивается тем, что файловая система должна отслеживать каждый кластер, выделенный файлу; использование кластеров большего размера облегчает эту задачу.

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

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

 

Таблица 4.2. Разделы NTFS и размеры кластеров

Размер тома Количество секторов в кластере Размер кластера
< 512 Мбайт 512 Мбайт – 1 Гбайт 1 Гбайт – 2 Гбайт 2 Г байт – 4 Гбайт 4 Гбайт – 8 Гбайт 8 Гбайт – 16 Г байт 16 Гбайт – 32 Г байт >32 Гбайт 512 байт 1 Кбайт 2 Кбайт 4 Кбайт 8 Кбайт 16 Кбайт 32 Кбайт 64 Кбайт

 

 

 


Рис. 4.7. Схема тома NTFS

На рис. 4.7. показана схема тома NTFS, состоящего из четырех областей. Первые несколько секторов любого тома занимает загрузочный сектор раздел раздела (несмотря на название, размер этой области может быть до 16 секторов), содержащий информацию о схеме тома и структурах файловой системы, а также начальная загрузочная информация и код загрузки. За этой областью следует главная файловая таблица (master file table — MFT), содержащая информации обо всех файлах и папках (каталогах) этого тома NTFS, а также информацию о свободном пространстве. По сути, MFT представляет собой список всего содержимого тома NTFS, организованный в виде множества строк в структуре peляционной базы данных.

За областью MFT следует область, обычно длиной 1 Мбайт, содержащие I системные файлы. Среди файлов этой области находятся следующие.

MFT2. Зеркальное отображение первых трех строк MFT, используемых для гарантированного доступа к MFT в случае сбоя одного сектора.

Системный журнал. Список шагов транзакций, используемый при восстановлении данных в NTFS.

Битовая карта кластеров. Представление тома, указывающее используемые кластеры.

Таблица определения атрибутов. Определяет типы атрибутов, поддерживаемых в этом томе, и показывает, могут ли они быть проиндексированы, а также могут ли они быть восстановлены во время системной операции восстановления.