Master File Table

MFT (англ. Master File Table — «Главная файловая таблица») — база данных, в которой хранится информация о содержимом тома с файловой системой NTFS, представляющая собой таблицу, строки которой соответствуют файлам тома, а столбцы — атрибутам файлов.

Строение править

MFT представляет собой файл (разделенный на записи — строки, обычно размером 1 Кб), в котором хранится информация обо всех файлах тома, в том числе и о самом MFT. Файлами, которым отведено первые 16 записей, являются метафайлы, недоступные операционной системе, но важные для файловой системы NTFS, причем они дублируются ровно посередине тома. Система не может выполнять перемещение записей MFT-зоны для ликвидации их фрагментации по мере их расширения, поэтому сразу после форматирования NTFS том делится как бы на две части: служебную область, которая предоставляется под использование пользователем, и зарезервированную под MFT (12,5 %).

Гибкость размера и фрагментация править

Механизм использования MFT-зоны достаточно гибок, и, когда файловое пространство заполняется, MFT-зона просто сокращается, а когда в файловом пространстве появится свободное место, она может быть вновь расширена. MFT-зона сохраняется целой как можно дольше, так как при её расширении она может фрагментироваться, что нежелательно в связи с возможностью понижения скорости работы с томом. Модульность структуры MFT обеспечивает устойчивость NTFS к ошибкам по сравнению с FAT, так как MFT может переместить и фрагментировать все свои области, обойдя повреждения диска (кроме первых 16 записей).

Метафайлы править

Метафайлы NTFS — служебные файлы (области), каждый из которых выполняет ту или иную функцию файловой системы NTFS. Все метафайлы находятся в корневом каталоге NTFS тома, недоступном ОС.[1]

  • $MFT

— основная таблица MFT

  • $MFTmirr

— копия первых шестнадцати записей MFT (размещенная ровно посередине тома)

  • $Boot

— загрузчик (только на первичном томе)

  • .

— (с точкой как название) корневой каталог

  • $LogFile

— журнал файловой системы

  • $Volume

— служебная информация (метка и ID тома, версия файловой системы, т.д.)

  • $Bitmap

— карта свободного места тома

  • $AttrDef

— список стандартных атрибутов файлов на томе

  • $Quota

— записи с правами пользователей на использование дискового пространства (квотами)

  • $Secure

— дескрипторы безопасности файловых объектов (права доступа)

Примечания править

  1. См. Sysinternals (утилиты NTFSInfo и VolumeID).

Ссылки править