Главное меню:
Полезные советы и статьи > Статьи > Операционные системы
Перейдем к обзору файловых систем, которые стандартно поддерживаются этими ОС (а нестандартно, с помощью сторонних драйверов, можно обеспечить работу с любой файловой системой). Следует учесть, что NTFS (New Technology File System) существует в виде нескольких версий, совпадающих с номером NT (5.1 для XP, например; наличие Service Pack'ов эту закономерность может нарушить), соответственно нововведения ФС (Файловой Системы) не будут поддерживаться старой версией NT, поэтому лучше использовать с ОС родную версию ФС. Вот список файловых систем, поддержка которых стандартно включена в Windows 2000/XP:
Также поддерживается распределенная файловая система (Distributed File System — DFS) и файловая система с шифрованием (Encrypted File System — EFS). Строго говоря, это не настоящие ФС. DFS представляет собой расширение сетевого сервиса и позволяет объединять в единый логически том сетевые ресурсы, а EFS — надстройка над NTFS, обеспечивающая функции шифрования. Ну, а теперь остановимся подробнее на каждой файловой системе.
CDFS
CDFS (Compact Disk File System), используемая в Windows 2000 (вроде, и в XP) выполнена по стандарту ISO 9660, согласно которому к именам файлов предъявляются следующие требования:
Опытные пользователи заметят, что эти ограничения в большинстве случаев обходятся без проблем. В XP встроены средства для записи дисков с этой ФС.
UDF
UDF (Universal Disk Format) — файловая система, соответствующая стандарту ISO 13346, предназначенная для доступа в режиме чтения к DVD-ROM- и CD-ROM-дискам. В будущем планируется обеспечить доступ и на запись.
FAT12
ФС FAT (File Allocation Table) получила свое название из-за способа организации данных — таблицы размещения файлов. Она ориентирована на небольшие диски и простые структуры каталога. FAT12 является 12-битной верcией FAT, соответственно она может адресовывать 212 кластеров (минимальных логически адресуемых единиц данных на диске). Это ограничение и небольшое количество вхождений в корневой каталог определяет использование этой ФС. Сейчас она применяется на дискетах, раньше ее использовали на винчестерах, но эта ФС была быстро вытеснена улучшенной версией — FAT16. Диск с использованием любой FAT имеет следующую структуру (см. рис.1).
Корневой каталог имеет фиксированный размер. Каталоги — специальные файлы с элементами для каждого файла, содержащегося в этом каталоге. Эти элементы включают:
Специальная надстройка над FAT, называемая VFAT (Virtual FAT), обеспечивает поддержку длинных имен файлов. Это следует учесть, так как некоторые старые DOS-утилиты могут запороть диск с длинными именами файлов, считая поврежденной структуру FAT. Все версии FAT не обладают функциями защиты данных и автоматического восстановления, посему я рекомендую их применять только для обеспечения совместимости.
FAT16
Улучшенная версия FAT. Максимальный размер тома равен 4095 Мб, размер кластера определяется размером тома и находится в диапазоне от 512 байт до 64 Кб. Число кластеров не превышает 216.
FAT32
Модифицированная версия FAT. Размер тома увеличен до 127 Гб, число кластеров — до 232. Позволяет использовать при одинаковых размерах томов кластеры меньшего размера, чем FAT16, что увеличивает эффективность организации данных. Впервые поддержка этой ФС появилась в Windows 95 OSR2. Все версии NT до 4.0 включительно ее не поддерживают (для поддержки в NT 4.0 нужен соответствующий Service Pack).
NTFS
Ну вот и дошли до самого интересного. Данная ФС является основной для NT. Без нее Windows NT уже и не NT (с этим трудно поспорить ввиду отсутствия в других ФС поддержки управления избирательным доступом и аудита). Эта файловая система обеспечивает эффективность, надежность и совместимость, невозможные в других поддерживаемых файловых системах, способна адресовывать до 264 кластеров (в текущей реализации — до 232) и работать с кластерами оптимальных размеров. NTFS — журналируемая, основанная на транзакциях ФС, обладающая функциями самовосстановления. Здесь необходимы небольшие пояснения.
Все операции с метаданными в NTFS разбиваются на неделимые блоки — транзакции. Каждая транзакция может быть выполнена успешно либо, в случае сбоя, откачана назад. Незавершенные транзакции не допускаются. Все транзакции регистрируются в файле журнала. Такой механизм обеспечивает абсолютную целостность структуры ФС, но допускает потерю пользовательских данных (архиредкое явление), так как журналировать все данные было бы неэффективно. В случае сбоя системы, например, в результате потери питания, при загрузке запускается программа AUTOCHK, проверяющая флаг "Грязный" тома. Если он установлен, запускается утилита CHKDSK, выполняющая 3 прохода: анализа, повторов и откатов. Таким образом обеспечивается выполнение либо откат всех незавершенных транзакций. Это очень упрощенная схема, но она позволяет понять преимущества журналируемой ФС над другими.
Структура NTFS довольно проста, хотя и сложнее, чем в FAT. Каждый распределенный на томе сектор принадлежит некоторому файлу, даже метаданные — информация, описывающая саму ФС. NTFS основана на атрибутах и обрабатывает все файлы как объекты с набором атрибутов, определенных как системой, так и пользователем. Каждый файл на томе с NTFS представлен записью в главной файловой таблице (MFT — Master File Table), аналоге FAT. Записи в MFT сортируются по алфавиту, что позволяет использовать двоичный поиск, существенно ускоряющий работу ФС. Для еще большей оптимизации диспетчером кэша используется алгоритм отложенной (lazy — ленивый) записи, когда данные не пишутся сразу на диск, а хранятся в памяти до тех пор, пока нагрузка на процессор не уменьшиться, а затем сбрасываются на диск фоновым процессом. Однако подобная практика чревата нехорошими последствиями в случае отказа питания. Журналирование не спасет пользовательских данных, хотя и обеспечит целостность структуры ФС. Вот почему любой уважающий себя администратор не ставит сервер без ИБП (Источник Бесперебойного Питания). В итоге, согласно авторитетным тестам, по быстродействию FAT выигрывает только на небольших томах с небольшим количеством файлов, в остальных случаях пальма лидерства остается за NTFS. Если вы хотите еще больше ускорить работу NTFS, воспользуйтесь следующим советом: отключите автоматическое обновление времени последнего доступа к файлу. Для этого в реестр по адресу HKLM\SYSTEM\CurrentControlSet\Control\FileSystem добавьте параметр NtfsDisableLastAccessUpdate типа REG_DWORD и установите его в 1. Существуют и другие способы оптимизации работы ФС, однако о них как-нибудь в другой раз. Ну, а сейчас я перечислю те функции, которые поддерживает наша героиня.
В дополнение ко всему вышесказанному: существующий том с FAT можно преобразовать в NTFS без потери данных с помощью команды CONVERT, однако эффективность такого решения не очень высокая из-за особенностей процесса преобразования. Вот, собственно, и все, что должен знать пользователь о файловых системах. Если нужна более подробная информация — ищите соответствующую литературу. Я же широко использовал в данной статье материалы книги Федора Зубанова "Microsoft Windows 2000. Планирование, развертывание, управление.