Файловая система NTFS содержит несколько системных областей и областей
хранения данных. Одной из основных системных областей является область Master file table (MFT). Эта область содержит информацию обо всех файлах в системе. Когда создается новый файл или какой-либо файл удаляется из системы.
Первые 16 записей носят служебный характер и недоступны операционной системе —
они называются метафайлами, причем самый первый метафайл — сам MFT.
Вторая запись содержит информацию о копии таблицы MFT, которая используется для восстановления самой MFT, если она окажется поврежденной.
Третья запись представляет собой системный журнал, используемый для восстановления файлов. Записи с 4 по 16 хранят информацию о прочих служебных файлах.
Эти первые 16 элементов MFT — единственная часть диска, имеющая строго фиксированное положение. Копия этих же 16 записей хранится в середине тома для надежности. Остальные части MFT файла могут располагаться, как и любой другой файл, в произвольных местах диска. Метафайлы носят служебный характер, каждый из них отвечает за какой-либо аспект работы системы. Метафайлы находятся в корневом каталоге NTFS тома. Все они начинаются с символа имени «$», хотя получить какую-либо информацию о них стандартными средствами сложно. Основные особенности NTFS:
∙ работа на дисках большого объема происходит эффективно;
∙ имеются средства для ограничения доступа к файлам и каталогам => разделы NTFS
обеспечивают локальную безопасность как файлов, так и каталогов;
∙ введен механизм транзакций, при котором осуществляется журналирование файловых операций Þ существенное увеличение надежности;
∙ сняты многие ограничения на максимальное количество дисковых секторов и/или
кластеров;
∙ имя файла в NTFS, в отличие от файловых систем FAT и HPFS, может содержать
любые символы, включая полный набор национальных алфавитов, так как данные
представлены в Unicode — 16 битном представлении, которое дает 65535 разных
символов. Максимальная длина имени файла в NTFS — 255 символов.
∙ система NTFS также обладает встроенными средствами сжатия, которые можно
применять к отдельным файлам, целым каталогам и даже томам.
Одной из интересных особенностей NTFS является поддержка потоков данных в файлах. Причем с файлом может быть ассоциирован не один файл, а несколько. Это позволяет хранить в файле не только основные данные, но и приписывать дополнительные, например информацию об авторе файла, правах на копирование.
NTFS делит все полезное место на кластеры - блоки данных, используемые единовременно. NTFS поддерживает почти любые размеры кластеров - от 512 байт до 64 Кбайт, стандартом считается кластер размером 4 Кбайт.
Диск NTFS условно делится на две части. 12% - отводятся под MFT зону - пространство, в которое растет метафайл MFT. Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. 88% - обычное пространство для хранения файлов.
| | |место под файлы||место под файлы|
MTF, MTF зона, копия первых записей MTF
Свободное место диска включает в себя всё физически свободное место - незаполненные куски MFT-зоны туда тоже включаются. Механизм использования MFT-зоны: когда файлы уже нельзя записывать в обычное пространство, MFT-зона просто сокращается (в текущих версиях операционных систем ровно в два раза), освобождая таким образом место для записи файлов. При освобождении места в обычной области MFT зона может снова расширится.
MFT и его структура
каждый элемент системы представляет собой файл - даже служебная информация.
Самый главный файл - MFT (Master File Table) - общая таблица файлов. Файл (размещается в MFT зоне) - централизованный каталог всех остальных файлов диска и себя самого.
MFT поделен на записи фиксированного размера (обычно 1 Кбайт), каждая запись соответствует какому либо файлу. Первые 16 файлов носят служебный характер и недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT. Эти первые 16 элементов MFT - единственная часть диска, имеющая фиксированное положение. Вторая копия первых трех записей, для надежности хранится ровно посередине диска. Остальной MFT-файл может располагаться, как и любой другой файл, в произвольных местах диска.
Метафайлы находятся в корневом каталоге NTFS диска - они начинаются с символа имени "$".
Основные метафайлы:
$MFT - сам MFT
$MFTmirr - копия первых 16 записей MFT, размещенная посередине диска
$LogFile - файл журнала
$Volume - служебная информация - метка тома, версия файловой системы, т.д.
$AttrDef - список стандартных атрибутов файлов на томе
$. - корневой каталог
$Bitmap - карта свободного места тома
$Boot - загрузочный сектор (если раздел загрузочный)
$Quota - файл, в котором записаны права пользователей на использование дискового пространства
$Upcase - Файл с таблицей соответствия строчных и прописных букв в именах файлов. В NTFS имена файлов в Unicode.