Главна файлова таблица - долно Windows устройство (гл.
В NTFS всички данни, съхранявани на том, се съдържат във файлове. Това се отнася и за структурите от данни, използвани за намиране и избиране на файлове, за първоначалния код за зареждане и за растерната карта, която записва състоянието на пространството на целия том (NTFS метаданни). Съхраняването на всички видове данни във файлове улеснява файловата система да намира и поддържа данните и всеки файл може да бъде защитен от дескриптор за сигурност. Освен това, когато на диска се появят лоши сектори, NTFS може да премести файловете с метаданни.
Главната файлова таблица (MFT) е централна за структурата на NTFS том. MFT е реализиран като масив от файлови записи. Размерът на всеки запис е фиксиран на 1 KB (вижте раздела Записи във файлове по-късно в тази глава). Логично, MFT съдържа един ред на файл на том, включително ред за самия MFT.В допълнение към MFT, всеки NTFS том има набор от файлове с метаданни с информацията, необходима за прилагане на структурата на файловата система. Всички имена на файлове с метаданни в NTFS започват със знак за долар ($), въпреки че тези знаци са скрити. И така, името на MFT файла е $Mft. Останалите файлове на NTFS тома са обикновени файлове и директории (Фигура 12-24).

Помощната програма Nfi от OEM Support Tools (включена в Windows Debugging Tools; изтеглена от support.mlcrosoft.com/support/eb/articIes/Q253/0/66.asp) ви позволява да изхвърлите съдържанието на MFT на NTFS том и да конвертирате номера на клъстера на тома или номера на сектора на физическия диск (не за RAID томове) в името на съответния файл (ако клъстерът или секторът е зает от файл). Първите 16 записа на MFT са запазени за файлове с метаданни, но записите за незадължителни файлове с метаданни (които присъстват само когато се използват подходящите възможности на тома) са извън тази област: \$Extend\$Quota, \$Extend\$ObjId,\$Extend\$UsnJrnl и \$Extend\$Reparse. Следният дъмп е от том, който използва точки за повторна обработка ($Reparse), квоти ($Quota) и идентификатори на обекти ($ObjId).



Когато NTFS намери запис за MFT, той извлича информацията за съпоставяне на VCN-LCN от своя атрибут на данни и я съхранява в паметта. Всяка група (изпълнение) съхранява VCN-LCN съпоставяне и дължината на тази група - това е цялата информация, необходима за намиране на LCN от VCN. Тази информация казва на NTFS къде да търси на диска групите, съставляващи MFT (вижте "Жилищни и нерезидентни атрибути" по-нататък в тази глава за информация относно групите.) След това NTFS обработва MFT записите за още няколко файла с метаданни и отваря тези файлове. И накрая, NTFS изпълнява операцията по възстановяване на системата за кайма (вижте раздела „Възстановяване“ по-късно в тази глава) и отваря останалите файлове с метаданни. Отсега нататък потребителят има достъп до този дисков том.
ЗАБЕЛЕЖКА За по-лесно разбиране в текста и диаграмите в тази глава групата се нарича обект, съдържащ VCN, LCN и дължина на групата. Но NTFS всъщност компресира тази информация на диска в двойки "LCN - Next VCN". Познавайки началния VCN, NTFS може да определи дължината на групата, като просто извади началния VCN от следващия VCN.
По време на работа на системата NTFS записва в друг важен файл с метаданни, лог файл с име $LogFile. NTFS го използва, за да регистрира всички операции, които засягат структурата на NTFS том, включително регистриране на създаването на файлове и изпълнение на всякакви команди като Копиране, които променят структурата на директорията. Регистрационният файл се използва и при възстановяване на NTFS том след системен срив.
Друг MFT запис е запазен за главната директория (наричана още "\").Неговият запис съдържа индекс на файлове и директории, съхранени в корена на структурата на директорията на NTFS. Когато NTFS за първи път получи заявка за отваряне на файл, той започва да го търси с запис в основната директория. След като файл бъде отворен, NTFS поддържа връзка към MFT файл за този файл и така следващия път, когато трябва да прочете или напише същия файл, той може директно да получи достъп до своя MFT запис.
NTFS регистрира разпределението на дисково пространство във файл с растерна графика, наречен $Bitmap. Атрибутът на данните за файла с растерно изображение съдържа растерно изображение, всеки бит от което представлява клъстер на обем и показва дали клъстерът е свободен или разпределен.
Файлът за сигурност, наречен $Secure, съхранява база данни с дескриптори за сигурност, валидни в рамките на тома. Дескрипторите за защита на NTFS файлове и директории могат да се задават индивидуално, но за да спести място, NTFS съхранява настройките на дескрипторите за сигурност в общ файл, който позволява на файловете и директориите с еднакви настройки за защита да препращат към един и същ дескриптор за сигурност. Тази оптимизация осигурява значителни спестявания в повечето среди, тъй като целите дървета на директориите имат едни и същи настройки за сигурност.
Друг системен файл, файлът за зареждане, наречен $Boot, съхранява кода за зареждане на Windows. За да може системата да стартира успешно, кодът за стартиране трябва да се намира на определено място на диска. При форматиране командата format определя това местоположение като файл, създавайки запис за него в MFT. В същото време NTFS следва свои собствени правила, според които всички данни се съхраняват на диска под формата на файлове. Файлът за зареждане, подобно на файловете с метаданни на NTFS, може да бъде защитен от персонализиран дескриптор за сигурност. В този модел "само файлове на диска" кодът за зареждане може да бъде модифициран отнормален файлов I/O, въпреки че зареждащият файл е защитен от редактиране.
NTFS поддържа файл с лоши клъстери, наречен $BadClus, в който са регистрирани всички лоши секции на дисков том, и файл с том, наречен $Volume, който съдържа името на тома, версията на NTFS, под която е форматиран томът, и бита, който се задава, когато възникне повреда на диска. Ако този бит е зададен, устройството трябва да бъде поправено от помощната програма Chkdsk. Файлът с главни букви, наречен $UpCase, включва таблица за превод на букви между главни и малки букви. NTFS също така поддържа файл, съдържащ таблица за дефиниране на атрибути, наречена IAttrDef; той дефинира типовете атрибути, поддържани от тома и дали те могат да се индексират, дали трябва да бъдат възстановени по време на операция за възстановяване на системата и т.н.
NTFS съхранява някои файлове с метаданни в директорията $Extend, включително файла с идентификатор на обект ($ObjId), файла с квотите ($Quota), файла с регистрационния файл на промените ($UsnJrnl) и файла с точка за повторна обработка ($Reparse). Тези файлове съдържат информация, свързана с разширени функции на NTFS. Файлът с идентификатор на обект съхранява идентификатори на файлов обект, файлът с квота съхранява стойности на квота и информация за поведението на томовете, на които се използват квотите, файлът с точка за повторна обработка съхранява списък с файлове и директории, които включват данните за точката за повторна обработка, а регистрационният файл за промяна записва промените във файлове и директории.