В каталоге среди основной информации хранится номер первого кластера, который занимает файл, а остальные кластеры можно последовательно определить по записям таблицы FAT.
Теперь мы знаем, каким образом в системе FAT хранится информация о размещении сегментированного файла. Номер первого кластера файла хранится в записи каталога, а остальные кластеры можно последовательно определить по записям таблицы FAT.
Файловые системы VFAT и FAT32
Одной из важнейших характеристик исходной файловой системы FAT было использование имен файлов формата 8.3. К стандартной системе FAT (имеется в виду прежде всего реализация FAT16) добавились еще две разновидности, используемые в широко распространенных ОС от Microsoft (конкретно — в Windows 95 и Windows NT):
· VFAT (виртуальная система FAT);
· система FAT32, используемая в одной из редакций ОС Windows 95 и Windows 98.
1) Ныне файловая система FAT32 поддерживается и такими последними системами, как Windows Millennium Edition, Windows 2000 и Windows XP. Имеются реализации FAT32 и для Windows NT, и для Linux.
2) Файловая система VFAT впервые появилась в Windows 3.11 (Windows for Workgroups).
3) С выходом Windows 95 в VFAT добавилась поддержка длинных имен файлов (Long File Name, LFN). Тем не менее, VFAT сохраняет совместимость с исходным вариантом FAT; это означает, что наряду с длинными именами в ней поддерживаются имена формата 8.3, а также существует специальный механизм для преобразования имен 8.3 в длинные имена, и наоборот.
4) Именно файловая система VFAT поддерживается исходными версиями Windows 95, Windows NT 4, Windows 2000 и Windows XP.
Основными недостатками файловых систем FAT и VFAT, которые привели к разработке новой реализации файловой системы, основанной на той же идее (таблице размещения файлов), являются большие потери на кластеризацию при больших размерах логического диска и ограничения на сам размер логического диска.
Поэтому в Microsoft Windows 95 на смену системе VFAT пришла файловая система FAT32, которая является полностью самостоятельной 32-разрядной файловой системой и содержит многочисленные усовершенствования и дополнения по сравнению с предыдущими реализациями FAT.
Самое принципиальное отличие заключается в том, что FAT32 намного эффективнее расходует дисковое пространство. Прежде всего, кластеры в этой системе меньше, чем кластеры в предыдущих версиях, в которых могло быть не более 65 535 кластеров на логический диск (соответственно с увеличением размера диска приходилось увеличивать и размер кластеров). Следовательно, даже для дисков размером до 8 Гбайт FAT32 может использовать 4-килобайтные кластеры. В результате по сравнению с дисками FAT 16 экономится значительное дисковое пространство (в среднем 10-15 %). В FAT32 проблема решается за счет того, что собственно сама таблица размещения файлов в этой файловой системе может содержать до 228 кластеров (В 32-разрядном слове FAT32, используемом для представления номера кластера, фактически учитываются только 28 разрядов, что приводит к тому, что размер таблицы размещения файлов в этой системе не может превышать 228 элементов).
Помимо повышения максимального объема логического диска и уменьшения эффекта кластеризации, файловая система FAT32 вносит ряд необходимых усовершенствований в структуру корневого каталога. FAT32 также может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Загрузочная запись FAT32 позволяет создавать копии критически важных структур данных; это повышает устойчивость дисков FAT32 к нарушениям структуры таблицы размещения файлов по сравнению с предыдущими версиями. Корневой каталог в FAT32 может находиться в произвольном месте диска, что снимает действовавшее ранее ограничение на размер корневого каталога (512 элементов). В FAT32 было увеличено их количество с 512 до 2048.
FAT32 | |
Длина записи (под номер кластера) | 32 бит |
Количество записей | 228 |
Размер кластера | 4 Кбайт |
Максимальный объем диска | 8 Гбайт |
Кол-во элементов в корневом каталоге | 2048 |
Файловая система NTFS (New Technology File System)
Эта файловая система содержит ряд усовершенствований и изменений по сравнению с другими файловыми системами. Файлы по-прежнему хранятся в каталогах (теперь называемых папками). В NTFS повышена эффективность работы с дисками большого объема. Имеются средства для ограничения доступа, введены механизмы для повышения надежности файловой системы.
Основные возможности файловой системы NTFS
При проектировании NTFS особое внимание было уделено надежности, механизмам ограничения доступа к файлам и каталогам, расширенной функциональности, поддержке дисков большого объема и пр.
Надежность
Высокопроизводительные компьютеры и системы совместного использования должны обладать повышенной надежностью, которая является ключевым элементом структуры и функционирования NTFS. Система NTFS обладает определенными средствами самовосстановления. Она поддерживает различные механизмы проверки целостности системы, включая ведение журналов транзакций, позволяющих воспроизвести файловые операции записи по специальному системному журналу. При протоколировании файловых операций система управления файлами фиксирует в специальном служебном файле (журнале) происходящие изменения. В начале операции, связанной с изменением файловой структуры, делается соответствующая пометка. Если во время файловых операций происходит какой-нибудь сбой, то из-за упомянутой отметки операция остается помеченной как незавершенная. При выполнении процедуры проверки целостности файловой системы после перезагрузки машины эти незавершенные операции отменяются, и файлы возвращаются в исходное состояние. Если же операция изменения данных в файлах завершается нормальным образом, то в файле журнала эта операция отмечается как завершенная.
Поскольку NTFS разрабатывалась как файловая система для серверов, для которых очень важно обеспечить бесперебойную работу без перезагрузок, в ней для повышения надежности был введен механизм аварийной замены дефектных секторов резервными. Другими словами, если обнаруживается сбой при чтении данных, то система постарается прочесть эти данные, переписать их в специально зарезервированное для этой цели пространство диска, а дефектные сектора пометить как плохие и более к ним не обращаться.
Ограничения доступа к файлам и каталогам
Файловая система NTFS поддерживает объектную модель безопасности операционной системы Windows NT и рассматривает все тома, каталоги и файлы как самостоятельные объекты. Система NTFS обеспечивает безопасность на уровне файлов и каталогов. Это означает, что разрешения доступа к томам, каталогам и файлам могут зависеть от учетной записи пользователя и тех групп, к которым он принадлежит.
Каждый раз, когда пользователь обращается к объекту файловой системы, его разрешения на доступ проверяются по списку управления доступом для данного объекта. Если пользователь обладает необходимым уровнем разрешений, его запрос удовлетворяется; в противном случае запрос отклоняется. Эта модель безопасности применяется как при локальной регистрации пользователей на компьютерах с Windows NT, так и при удаленных сетевых запросах.
Поддержка дисков большого объема
Система NTFS создавалась с расчетом на работу с большими дисками. Она уже достаточно хорошо проявляет себя при работе с томами объемом 300-400 Мбайт и выше. Чем больше объем диска и чем больше на нем файлов, тем больший выигрыш мы получаем, используя NTFS вместо FAT16 или FAT32. Максимально возможные размеры тома (и размеры файла) составляют 16 Эбайт (один экзабайт равен 264 байт, или приблизительно 16 000 млрд гигабайт), в то время как при работе под Windows NT/2000/XP диск с FAT 16 не может иметь размер более 4 Гбайт, а с FAT32 — 32 Гбайт. Количество файлов в корневом и некорневом каталогах при использовании NTFS не ограничено. Время поиска файлов в NTFS не связано с их количеством (в отличие от систем на базе FAT). Наконец, помимо немыслимых размеров томов и файлов, система NTFS также обладает встроенными средствами сжатия, что позволяет экономить дисковое пространство и размещать в нем больше файлов. Напомним, что сжатие можно применять как к отдельным файлам, так и целым каталогам и даже томам (и впоследствии отменять или назначать их по своему усмотрению).
Структура тома с файловой системой NTFS
Рассмотрим теперь структуру файловой системы NTFS.
Прежде всего, одним из основных понятий, используемых при работе с NTFS, является понятие тома (volume). Том означает логическое дисковое пространство, которое может быть воспринято как логический диск, то есть том может иметь букву (буквенный идентификатор) диска. Частным случаем тома является логический диск.
Все дисковое пространство в NTFS делится на две неравные части.
1) Зона MFT (Master File Table — главная таблица файлов) - первые 12 % диска. Эта зона содержит служебные файлы файловой системы и таблицу MFT (с учетом ее будущего роста), представляющей собой специальный файл со служебной информацией, позволяющей определять местонахождение всех остальных файлов. Запись каких-либо данных в зону MFT невозможна — она всегда остается пустой, чтобы при росте MFT по возможности не было фрагментации.
2) Остальные 88 % тома представляют собой обычное пространство для хранения файлов.
Первые 16 файлов в MFT-зоне – это метафайлы, В них содержится служебная информация, они имеют фиксированное положение и они недоступны даже операционной системе. Кстати, первым из этих 16 является сам MFT - файл.
Таблица MFT – это файл. Это последовательность записей фиксированного размера (1 кбайт). Каждая запись MFT описывает один файл или один каталог. Она содержит имя файла и список дисковых адресов (где расположены его блоки).