- Файловые системы Windows
- Общие сведения о файловых системах
- Файловая система FAT
- Файловая система FAT32
- Файловая система NTFS
- Устройство NTFS. Главная таблица файлов MFT
- Конвертирование разделов FAT32 в NTFS без потери данных. Утилита convert
- Microsoft Windows и файловые системы
- Файловые системы FAT
- FAT16
- FAT32
- Файловая система NTFS
- Атрибуты файлов в NTFS
- Файловая система CDFS
- Universal Disk Format
- Сравнение файловых систем
- Файловые системы FAT
- Файловая система NTFS
- Файловая система и скорость
- Максимальный размер тома
- Максимальный размер томов FAT
- Максимальный размер томов NTFS
- Управление доступом к файлам и каталогам
- Сжатие файлов и каталогов
- Самовосстановление NTFS
Файловые системы Windows
Операционная система Windows 8, Windows 8.1 поддерживает несколько файловых систем: NTFS, FAT и FAT32. Но работать может только на NTFS , то есть установлена может быть только на раздел жесткого диска, отформатированного в данной файловой системе.
Обусловлено это теми особенностями и инструментами безопасности, которые предусмотрены в NTFS , но отсутствуют в файловых системах Windows предыдущего поколения: FAT16 и FAT32 .
Далее мы остановимся на всей линейке файловых систем для Windows, чтобы понять, какую роль они играют в работе системы и как они развивались в процессе становления Windows плоть до Windows 8.
Общие сведения о файловых системах
Преимущества NTFS касаются практически всего: производительности, надежности и эффективности работы с данными (файлами) на диске. Так, одной из основных целей создания NTFS было обеспечение скоростного выполнения операций над файлами (копирование, чтение, удаление, запись), а также предоставление дополнительных возможностей: сжатие данных, восстановление поврежденных файлов системы на больших дисках и т.д.
Другой основной целью создания NTFS была реализация повышенных требований безопасности, так как файловые системы FAT , FAT32 в этом отношении вообще никуда не годились. Именно в NTFS можно разрешить или запретить доступ к какому-либо файлу или папке (разграничить права доступа).
Сначала рассмотрим сравнительные характеристики файловых систем, а потом остановимся на каждой из них поподробнее. Сравнение, для большей наглядности, приведены в табличной форме.
Файловая система FAT для современных жестких дисков просто не подходит (ввиду ее ограниченных возможностей). Что касается FAT32 , то ее еще можно использовать, но уже с натяжкой.
Если купить жесткий диск на 1000 ГБ, то вам придется разбивать его как минимум на несколько разделов. А если вы собираетесь заниматься видеомонтажом, то вам будет очень мешать ограничение в 4 Гб как максимально возможный размер файла.
Всех перечисленных недостатков лишена файловая система NTFS . Так что, даже не вдаваясь в детали и специальные возможности файловой системы NTFS , можно сделать выбор в ее пользу.
Файловая система | Параметры | |
---|---|---|
Размеры тома | Максимальныйразмерфайла | |
FAT | От 1.44 МБ до 4 ГБ | 2ГБ |
FAT32 | Теоретически возможен размер тома от 512 МБ до 2 Тбайт. Сжатие не поддерживается на уровне файловой системы | 4ГБ |
NTFS | Минимальный рекомендуемый размер составляет 1,44 МБ, а максимальный — 2 Тбайт. Поддержка сжатия на уровне файловой системы для файлов, каталогов и томов. | Максимальный размер ограничен лишь размером тома (Теоретически — 264 байт минус 1 килобайт. Практически — 244 байт минус 64 килобайта) |
Вообще использование FAT32 может быть оправдано лишь в тех случаях, когда у вас на компьютере установлено несколько операционных систем, а какая-либо из них не поддерживает NTFS . Но на сегодняшний день таких практически нет. Разве что вы захотите установить у себя антиквариат типа Windows 98.
Файловая система FAT
Файловая система FAT (обычно под ней понимается FAT 16) была разработана достаточно давно и предназначалась для работы с небольшими дисковыми и файловыми объемами, простой структурой каталогов. Аббревиатура FAT расшифровывается как File Allocation Table (с англ. таблица размещения файлов). Эта таблица размещается в начале тома, причем хранятся две ее копии (в целях обеспечения большей устойчивости).
Данная таблица используется операционной системой для поиска файла и определения его физического расположения на жестком диске. В случае повреждения таблицы (и ее копии) чтение файлов операционной системой становится невозможно. Она просто не может определить, где какой файл, где он начинается и где заканчивается. В таких случаях говорят, что файловая система «упала».
Файловая система FAT изначально разрабатывалась компанией Microsoft для дискет. Только потом они стали ее применять для жестких дисков. Сначала это была FAT12 (для дискет и жестких дисков до 16 МБ), а потом она переросла в FAT16 , которая была введена в эксплуатацию с операционной системой MS-DOS 3.0.
Далее она поддерживается в Windows 3.x, Windows 95, Windows 98, Windows NT/2000 и т.д.
Файловая система FAT32
Начиная с Windows 95 OSR2, компания Microsoft начинает активно использовать в своих операционных системах FAT32 — тридцатидвухразрядную версию FAT . Что поделать, технический прогресс не стоит на месте и возможностей FAT 16 стало явно недостаточно.
По сравнению с ней FAT32 стала обеспечивать более оптимальный доступ к дискам, более высокую скорость выполнения операций ввода/вывода, а также поддержку больших файловых объемов (объем диска до 2 Тбайт).
В FAT32 реализовано более эффективное расходование дискового пространства (путем использования более мелких кластеров). Выгода по сравнению с FAT16 составляет порядка 10.15%. То есть при использовании FAT32 на один и тот же диск может быть записано информации на 10. 15% больше, чем при использовании FAT16.
Кроме того, необходимо отметить, что FAT32 обеспечивает более высокую надежность работы и более высокую скорость запуска программ.
Обусловлено это двумя существенными нововведениями:
- Возможностью перемещения корневого каталога и резервной копии FAT (если основная копия получила повреждения)
- Возможностью хранения резервной копии системных данных.
Файловая система NTFS
Ни одна из версий FAT не обеспечивает хоть сколько-нибудь приемлемого уровня безопасности. Это, а также необходимость в добавочных файловых механизмах (сжатия, шифрования) привело к необходимости создания принципиально новой файловой системы. И ею стала файловая система NT (NTFS)
NTFS — от англ. New Technology File System, файловая система новой технологии. Как уже упоминалось, основным ее достоинством является защищенность: для файлов и папок NTFS могут быть назначены права доступа (на чтение, на запись и т.д.). Благодаря этому существенно повысилась безопасность данных и устойчивость работы системы.
Назначение прав доступа позволяет запретить/разрешить каким-либо пользователям и программам проделывать какие-либо операции над файлами. Например, не обладая достаточными правами, посторонний пользователь не сможет изменить какой-либо файл. Или не обладая достаточными правами, вирус не сможет испортить файл.
Кроме того, NTFS , как было сказано выше, обеспечивает лучшую производительность и возможность работы с большими объемами данных.
Начиная с Windows 2000, используется версия NTFS 5.0, которая, помимо стандартных, позволяет реализовывать следующие возможности:
- Шифрование данных — эта возможность реализуется специальной надстройкой NTFS, которая называется Encrypting File System(EFS) — шифрующая файловая система. Благодаря этому механизму шифрованные данные могут быть прочитаны только на компьютере, на котором произошла шифровка.
- Дисковые квоты — стало возможно назначать пользователям определенный (ограниченный) размер на диске, который они могут использовать.
- Хранение разреженных файлов. Встречаются файлы, в которых содержится большое количество последовательных пустых байтов. Файловая система NTFS позволяет оптимизировать их хранение.
- Использование журнала изменений — позволяет регистрировать все операции доступа к файлам и томам.
И еще одно нововведение NTFS — точки монтирования. С помощью точек монтирования можно определить различные не связанные между собой папки и даже диски в системе, как один диск или папка. Это имеет большую важность для сбора в одном месте разнородной информации, находящейся в системе.
Напоследок необходимо иметь в виду, что если для файла под NTFS были установлены определенные права доступа, а потом вы его скопировали на раздел FAT, то все его права доступа и другие уникальные атрибуты, присущие NTFS, будут утеряны. Так что будьте бдительны.
Устройство NTFS. Главная таблица файлов MFT
Как и любая другая файловая система, NTFS делит все полезное место на кластеры — минимальные блоки данных, на которые разбиваются файлы. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт. Однако общепринятым стандартом считается кластер размером 4 Кбайт. Именно он используется по умолчанию. Принцип существования кластеров можно проиллюстрировать следующим примером.
Если у вас размер кластера составляет 4 Кбайт (что скорее всего), а нужно сохранить файл, размером 5 Кбайт, то реально под него будет выделено 8 Кбайт, так как в один кластер он не помещается, а под файл дисковое пространство выделяется только кластерами.
Для каждого NTFS-диска имеется специальный файл — MFT (Master Allocation Table — главная таблица файлов). В этом файле содержится централизованный каталог всех имеющихся на диске файлов. При создании файла NTFS создает и заполняет в MFT соответствующую запись, в которой содержится информация об атрибутах файла, содержимом файла, имя файла и т.п.
Помимо MFT , имеется еще 15 специальных файлов (вместе с MFT — 16), которые недоступны операционной системе и называются метафайлами . Имена всех метафайлов начинаются с символа $, но стандартными средствами операционной системы просмотреть их и вообще увидеть не представляется возможным. Далее для примера представлены основные метафайлы:
- SMFT — сам MFT.
- $MFTmirr — копия первых 16 записей MFT, размещенная посередине диска (зеркало).
- $LogFile — файл поддержки журналирования.
- $Volume — служебная информация: метка тома, версия файловой системы, и т.д.
- $AttrDef — список стандартных атрибутов файлов на томе.
- $ — корневой каталог.
- $Bitmap — карта свободного места тома.
- $Boot — загрузочный сектор (если раздел загрузочный).
- $Quota — файл, в котором записаны права пользователей на использование дискового пространства.
- $Upcase — файл-таблица соответствия заглавных и прописных букв в именах файлов на текущем томе.
Нужен в основном потому, что в NTFS имена файлов записываются в кодировке Unicode , которую составляют 65 тысяч различных символов, искать большие и малые эквиваленты которых очень нетривиально.
Что касается принципа организации данных на диске NTFS, то он условно делится на две части. Первые 12% диска отводятся под так называемую MFT-зону — пространство, в которое растет метафайл MFT.
Запись каких-либо пользовательских данных в эту область невозможна. MFT-зона всегда держится пустой. Это делается для того, чтобы самый главный служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.
Однако при нехватке дискового пространства MFT-зона может сама уменьшаться (если это возможно), так что никакого дискомфорта вы замечать не будете. При этом новые данные уже будут записываться в бывшую MFT-зону.
В случае последующего высвобождения дискового пространства MFT-зона снова будет увеличиваться, однако в дефрагментированном виде (то есть не единым блоком, а несколькими частями на диске). В этом нет ничего страшного, просто считается, что система более надежна, когда MFT-файл не дефрагментирован.
Кроме того, при не дефрагментированном MFT-файле вся файловая система работает быстрее. Соответственно чем более дефрагментированным является MFT-файл, тем медленней работает файловая система.
Что касается размера MFT-файла, то он примерно вычисляется, исходя из 1 МБ на 1000 файлов.
Конвертирование разделов FAT32 в NTFS без потери данных. Утилита convert
Вы можете без особого труда конвертировать существующий FAT32-раздел в NTFS. Для этого в Windows 8, Windows 8.1 предусмотрена утилита командной строки convert .
Параметры ее работы показаны на скриншоте.
Таким образом, чтобы конвертировать в NTFS диск D:, в командную строку следует ввести следующую команду:
После этого от вас попросят ввести метку тома, если такая есть (метка тома указывается рядом с именем диска в окне Мой компьютер. Она служит для более подробного обозначения дисков и может использоваться, а может не использоваться. Например, это может быть Files Storage (D:).
Здесь Files Storage — это метка тома d:.
Для конвертации флешки команда выглядит так:
Microsoft Windows и файловые системы
Одной из важнейших характеристик операционной системы помимо управления памятью, ресурсами компьютера и задачами является поддержка файловой системы — основного хранилища системной и пользовательской информации. В данном обзоре мы рассмотрим основные файловые системы, поддерживаемые в Microsoft Windows 2000, — FAT16, FAT32, NTFS, а также такие файловые системы, как CDFS и UDF. Каждая файловая система имеет свои достоинства и недостатки, которые мы обсудим ниже.
Начнем с того, что вспомним, какие файловые системы поддерживаются в различных операционных системах фирмы Microsoft (табл. 1).
Как видно из данной таблицы, наиболее популярной и широко используемой файловой системой является FAT. Именно с нее мы и начнем наше знакомство с файловыми системами Windows.
Файловые системы FAT
FAT16
Файловая система FAT16 начала свое существование еще во времена, предшествовавшие MS-DOS, и поддерживается всеми операционными системами Microsoft для обеспечения совместимости. Ее название File Allocation Table (таблица расположения файлов) отлично отражает физическую организацию файловой системы, к основным характеристикам которой можно отнести то, что максимальный размер поддерживаемого тома (жесткого диска или раздела на жестком диске) не превышает 4095 Мбайт. Во времена MS-DOS 4-гигабайтные жесткие диски казались несбыточной мечтой (роскошью были диски объемом 20-40 Мбайт), поэтому такой запас был вполне оправданным.
Том, отформатированный для использования FAT16, разделяется на кластеры. Размер кластера по умолчанию зависит от размера тома и может колебаться от 512 байт до 64 Кбайт. В табл. 2 показано, как размер кластера зависит от размера тома. Отметим, что размер кластера может отличаться от значения по умолчанию, но должен иметь одно из значений, указанных в табл. 2.
Не рекомендуется задействовать файловую систему FAT16 на томах больше 511 Мбайт, так как для относительно небольших по объему файлов дисковое пространство будет использоваться крайне неэффективно (файл размером в 1 байт будет занимать 64 Кбайт). Независимо от размера кластера файловая система FAT16 не поддерживается для томов больше 4 Гбайт.
На рис. 1 показано, как организован том при использовании файловой системы FAT16.
В файловой системе FAT16 кластеры могут иметь различное значение. Например, это может быть свободный (неиспользуемый) кластер, кластер, занятый файлом, дефектный кластер или последний кластер файла.
Единственным различием между корневым и другими каталогами является то, что первый располагается в определенном месте и имеет фиксированное число вхождений. Каждый каталог и файл используют одно или более вхождений. Например, если число фиксированных вхождений для корневого каталога равно 512 и создано 100 подкаталогов, в корневом каталоге можно создать не более 412 файлов (512 – 100).
Для каждого файла и каталога в файловой системе хранится информация (в табл. 3 приведены данные для коротких имен файлов).
В структуре каталогов файлу отводится первый незанятый кластер, доступный на томе. Номер начального кластера позволяет определить местонахождение файла: каждый кластер содержит указатель на следующий кластер или значение FFFF, указывающее на то, что это последний кластер в цепочке кластеров, занимаемых файлом. Расположение файлов по кластерам показано на рис. 2.
Как видно из рис. 2, в папке расположены три файла. Первый из них — FILE1.EXT занимает три кластера (файл не фрагментирован, кластеры 2, 3 и 4 расположены последовательно), второй файл — FILE2.EXT фрагментирован и располагается в кластерах 5, 6 и 8, а третий — FILE2.EXT занимает всего один кластер. Вхождение для каждого файла содержит адрес его начального кластера (2, 5 и 7 соответственно). Последний кластер каждого файла (4, 8 и 7) в качестве адреса следующего кластера содержит значение FFFF, указывающее на то, что это последний кластер для данного файла.
Так как все вхождения имеют одинаковый размер информационного блока, они различаются по байту атрибутов. Один из битов в данном байте может указывать, что это каталог, другой — что это метка тома. Для пользователей доступны четыре бита, позволяющих управлять атрибутами файла — архивный (archive), системный (system), скрытый (hidden) и доступный только для чтения (read-only) (рис. 3).
FAT32
Начиная с Microsoft Windows 95 OEM Service Release 2 (OSR2) в Windows появилась поддержка 32-битной FAT. Для систем на базе Windows NT эта файловая система впервые стала поддерживаться в Microsoft Windows 2000. Если FAT16 может поддерживать тома объемом до 4 Гбайт, то FAT32 способна обслуживать тома объемом до 2 Тбайт. Размер кластера в FAT32 может изменяться от 1 (512 байт) до 64 секторов (32 Кбайт). Для хранения значений кластеров FAT32 требуется 4 байт (32 бит, а не 16, как в FAT16). Это означает, в частности, что некоторые файловые утилиты, рассчитанные на FAT16, не могут работать с FAT32.
Основным отличием FAT32 от FAT16 является то, что изменился размер логического раздела диска. FAT32 поддерживает тома объемом до 127 Гбайт. При этом, если при использовании FAT16 с 2-гигабайтными дисками требовался кластер размером в 32 Кбайт, то в FAT32 кластер размером в 4 Кбайт подходит для дисков объемом от 512 Мбайт до 8 Гбайт (табл. 4).
Это соответственно означает более эффективное использование дискового пространства — чем меньше кластер, тем меньше места требуется для хранения файла и, как следствие, диск реже становится фрагментированным.
При применении FAT32 максимальный размер файла может достигать 4 Гбайт минус 2 байта. Если при использовании FAT16 максимальное число вхождений в корневой каталог ограничивалось 512, то FAT32 позволяет увеличить это число до 65 535.
FAT32 накладывает ограничения на минимальный размер тома — он должен быть не менее 65 527 кластеров. При этом размер кластера не может быть таким, чтобы FAT занимала более 16 Мбайт–64 Кбайт / 4 или 4 млн. кластеров.
При использовании длинных имен файлов данные, необходимые для доступа из FAT16 и FAT32, не перекрываются. При создании файла с длинным именем Windows создает соответствующее имя в формате 8.3 и одно или более вхождений в каталог для хранения длинного имени (по 13 символов из длинного имени файла на каждое вхождение). Каждое последующее вхождение хранит соответствующую часть имени файла в формате Unicode. Такие вхождения имеют атрибуты «идентификатор тома», «только чтение», «системный» и «скрытый» — набор, который игнорируется MS-DOS; в этой операционной системе доступ к файлу осуществляется по его «псевдониму» в формате 8.3.
Файловая система NTFS
В состав Microsoft Windows 2000 входит поддержка новой версии файловой системы NTFS, которая, в частности, обеспечивает работу с сервисами каталогов Active Directory, точки пересчета (reparse points), средства защиты информации, контроль за доступом и ряд других возможностей.
Как и при использовании FAT, основной информационной единицей в NTFS является кластер. В табл. 5 показаны размеры кластеров по умолчанию для томов различной емкости.
При формировании файловой системы NTFS программа форматирования создает файл Master File Table (MTF) и другие области для хранения метаданных. Метаданные используются NTFS для реализации файловой структуры. Первые 16 записей в MFT зарезервированы самой NTFS. Местоположение файлов метаданных $Mft и $MftMirr записано в загрузочном секторе диска. Если первая запись в MFT повреждена, NTFS считывает вторую запись для нахождения копии первой. Полная копия загрузочного сектора располагается в конце тома. В табл. 6 перечислены основные метаданные, хранимые в MFT.
Остальные записи MFT содержат записи для каждого файла и каталога, расположенных на данном томе.
Обычно один файл использует одну запись в MFT, но если у файла большой набор атрибутов или он становится слишком фрагментированным, то для хранения информации о нем могут потребоваться дополнительные записи. В этом случае первая запись о файле, называемая базовой записью, хранит местоположение других записей. Данные о файлах и каталогах небольшого размера (до 1500 байт) полностью содержатся в первой записи.
Атрибуты файлов в NTFS
Каждый занятый сектор на NTFS-томе принадлежит тому или иному файлу. Даже метаданные файловой системы являются частью файла. NTFS рассматривает каждый файл (или каталог) как набор файловых атрибутов. Такие элементы, как имя файла, информация о его защите и даже данные в нем, являются атрибутами файла. Каждый атрибут идентифицируется кодом определенного типа и, опционально, именем атрибута.
Если атрибуты файла вмещаются в файловую запись, они называются резидентными атрибутами. Такими атрибутами всегда являются имя файла и дата его создания. В тех случаях, когда информация о файле слишком велика, чтобы вместиться в одну MFT-запись, некоторые атрибуты файла становятся нерезидентными. Резидентные атрибуты хранятся в одном или более кластерах и представляют собой поток альтернативных данных для текущего тома (об этом — чуть ниже). Для описания местонахождения резидентных и нерезидентных атрибутов NTFS создает атрибут Attribute List.
В табл. 7 показаны основные атрибуты файлов, определенные в NTFS. В будущем этот список может быть расширен.
Файловая система CDFS
В Windows 2000 обеспечивается поддержка файловой системы CDFS, отвечающей стандарту ISO’9660, описывающему расположение информации на CD-ROM. Поддерживаются длинные имена файлов в соответствии с ISO’9660 Level 2.
При создании CD-ROM для использования под управлением Windows 2000 следует иметь в виду следующее:
- все имена каталогов и файлов должны содержать менее 32 символов;
все имена каталогов и файлов должны состоять только из символов верхнего регистра;
глубина каталогов не должна превышать 8 уровней от корня;
Universal Disk Format
Поддержка файловой системы UDF является одним из новшеств в Windows 2000. Universal Disk Format — это файловая система, отвечающая стандарту ISO’13346 и используемая для обмена данными с накопителями CD-ROM и DVD. В настоящее время поддерживаются только диски версий UDF 1.02 и 1.50.
На этом мы закончим рассмотрение файловых систем, поддерживаемых в Microsoft Windows 2000, и перейдем к обсуждению их достоинств и недостатков, а также приведем рекомендации по их использованию.
Сравнение файловых систем
Под управлением Microsoft Windows 2000 возможно использование файловых систем FAT16, FAT32, NTFS или их комбинаций. Выбор операционной системы зависит от следующих критериев:
- того, как используется компьютер;
размера и числа жестких дисков;
Файловые системы FAT
Как вы уже могли заметить, цифры в названии файловых систем — FAT16 и FAT32 — указывают на число бит, необходимых для хранения информации о номерах кластеров, используемых файлом. Так, в FAT16 применяется 16-битная адресация и, соответственно, возможно использование до 2 16 адресов. В Windows 2000 первые четыре бита таблицы расположения файлов FAT32 необходимы для собственных нужд, поэтому в FAT32 число адресов достигает 2 28 .
В табл. 8 показаны размеры кластеров для файловых систем FAT16 и FAT32.
Помимо существенных отличий в размере кластера FAT32 также позволяет корневому каталогу расширяться (в FAT16 число вхождений ограничено 512 и может быть даже ниже при использовании длинных имен файлов).
Преимущества FAT16
Среди преимуществ FAT16 можно отметить следующие:
- файловая система поддерживается операционными системами MS-DOS, Windows 95, Windows 98, Windows NT, Windows 2000, а также некоторыми операционными системами UNIX;
существует большое число программ, позволяющих исправлять ошибки в этой файловой системе и восстанавливать данные;
при возникновении проблем с загрузкой с жесткого диска система может быть загружена с флоппи-диска;
Недостатки FAT16
К основным недостаткам FAT16 относятся:
- корневой каталог не может содержать более 512 элементов. Использование длинных имен файлов существенно сокращает число этих элементов;
FAT16 поддерживает не более 65 536 кластеров, а так как некоторые кластеры зарезервированы операционной системой, число доступных кластеров — 65 524. Каждый кластер имеет фиксированный размер для данного логического устройства. При достижении максимального числа кластеров при их максимальном размере (32 Кбайт) максимальный объем поддерживаемого тома ограничивается 4 Гбайт (под управлением Windows 2000). Для поддержания совместимости с MS-DOS, Windows 95 и Windows 98 объем тома под FAT16 не должен превышать 2 Гбайт;
не поддерживается резервная копия загрузочного сектора;
в FAT16 не поддерживается встроенная защита файлов и их сжатие;
Преимущества FAT32
Среди преимуществ FAT32 можно отметить следующие:
- выделение дискового пространства выполняется более эффективно, особенно для дисков большого объема;
корневой каталог в FAT32 представляет собой обычную цепочку кластеров и может находиться в любом месте диска. Благодаря этому FAT32 не накладывает никаких ограничений на число элементов в корневом каталоге;
за счет использования кластеров меньшего размера (4 Кбайт на дисках объемом до 8 Гбайт) занятое дисковое пространство обычно на 10-15% меньше, чем под FAT16;
Недостатки FAT32
Основные недостатки FAT32:
- размер тома при использовании FAT32 под Windows 2000 ограничен 32 Гбайт;
тома FAT32 недоступны из других операционных систем — только из Windows 95 OSR2 и Windows 98;
не поддерживается резервная копия загрузочного сектора;
Файловая система NTFS
При работе в Windows 2000 Microsoft рекомендуется отформатировать все разделы жесткого диска под NTFS, за исключением тех конфигураций, когда используется несколько операционных систем (кроме Windows 2000 и Windows NT). Применение NTFS вместо FAT позволяет использовать функции, доступные в NTFS. К ним, в частности, относятся:
- возможность восстановления. Эта возможность «встроена» в файловую систему. NTFS гарантирует сохранность данных за счет того, что использует протокол и некоторые алгоритмы восстановления информации. В случае системного сбоя NTFS использует протокол и дополнительную информацию для автоматического восстановления целостности файловой системы;
сжатие информации. Для томов NTFS Windows 2000 поддерживает сжатие отдельных файлов. Такие сжатые файлы могут использоваться Windows-приложениями без предварительной распаковки, которая происходит автоматически при чтении из файла. При закрытии и сохранении файл снова упаковывается;
— некоторые функции операционной системы требуют наличия NTFS;
— скорость доступа намного выше — NTFS минимизирует число обращений к диску, требуемых для нахождения файла;
— защита файлов и каталогов. Только на томах NTFS возможно задание атрибутов доступа к файлам и папкам;
— при использовании NTFS Windows 2000 поддерживает тома объемом до 2 Тбайт;
— файловая система поддерживает резервную копию загрузочного сектора — она располагается в конце тома;
— NTFS поддерживает систему шифрования Encrypted File System (EFS), обеспечивающую защиту от неавторизованного доступа к содержимому файлов;
— при использовании квот можно ограничить объем дискового пространства, занимаемого пользователями.
Недостатки NTFS
Говоря о недостатках файловой системы NTFS, следует отметить, что:
- NTFS-тома недоступны в MS-DOS, Windows 95 и Windows 98. Помимо этого ряд функций, реализованных в NTFS под Windows 2000, недоступен в Windows 4.0 и более ранних версиях;
Файловая система и скорость
Как мы уже выяснили, для томов небольшого объема FAT16 или FAT32 обеспечивает более быстрый доступ к файлам по сравнению с NTFS, так как:
- FAT обладает более простой структурой;
размер каталогов меньше;
NTFS минимизирует число обращений к диску и время, необходимое для нахождения файла. Кроме того, если размер каталога достаточно мал, чтобы поместиться в одной записи MFT, вся запись считывается за один раз.
Одно вхождение в FAT содержит номер кластера для первого кластера каталога. Для просмотра файла FAT требуется поиск по всей файловой структуре.
Сравнивая скорость операций, выполняемых для каталогов, содержащих короткие и длинные имена файлов, следует учитывать, что скорость операций для FAT зависит от самой операции и размера каталога. Если FAT ищет несуществующий файл, поиск выполняется по всему каталогу — эта операция занимает больше времени, чем поиск по структуре, основанной на B-деревьях, используемой в NTFS. Среднее время, необходимое для поиска файла, в FAT выражается как функция от N/2, в NTFS — как log N, где N — это число файлов.
Ряд следующих факторов влияет на скорость чтения и записи файлов под управлением Windows 2000:
- фрагментация файла. Если файл сильно фрагментирован, NTFS обычно требуется меньше обращений к диску, чем FAT для нахождения всех фрагментов;
размер кластера. Для обеих файловых систем размер кластера по умолчанию зависит от объема тома и всегда выражается степенью числа 2. Адреса в FAT16 — 16-битные, в FAT32 — 32-битные, в NTFS — 64-битные;
размер кластера по умолчанию в FAT базируется на том факте, что таблица расположения файлов может иметь не более 65 535 вхождений — размер кластера представляет собой функцию от объема тома, деленного на 65 535. Таким образом, размер кластера по умолчанию для тома FAT всегда больше, чем размер кластера для тома NTFS того же объема. Отметим, что больший размер кластера для томов FAT означает, что тома FAT могут быть менее фрагментированными;
Максимальный размер тома
Максимальный размер тома зависит от используемой файловой системы. Windows 2000 позволяет форматировать тома для трех файловых систем: FAT16, FAT32 и NTFS.
Максимальный размер томов FAT
Как мы уже отмечали, FAT16 поддерживает до 65 535 кластеров на одном томе. Из этого факта вытекают ограничения, показанные в табл. 9.
Под управлением Windows NT и Windows 2000 размер кластера FAT16 для томов размером от 2 до 4 Гбайт равен 64 Кбайт. Этот размер кластера используется для обеспечения совместимости с некоторыми приложениями (например, с программами установки, которые неверно высчитывают объем свободного пространства). Поэтому рекомендуется использовать FAT32 для томов размером от 2 до 4 Гбайт.
FAT32 работает с томами, на которых есть как минимум 65 527 кластеров, а максимальное число кластеров, поддерживаемых этой файловой системой для одного тома, — 4 177 918. Windows 2000 позволяет создавать тома размером до 32 Гбайт.
В табл. 10 показаны основные ограничения FAT32.
Максимальный размер томов NTFS
Теоретически NTFS поддерживает тома с числом кластеров до 2 32 . Но тем не менее помимо отсутствия жестких дисков такого объема существуют и другие ограничения на максимальный размер тома.
Одним из таких ограничений является таблица разделов. Индустриальные стандарты ограничивают размер таблицы разделов 2 32 секторами. Другим ограничением является размер сектора, который обычно равен 512 байт. Поскольку размер сектора может измениться в будущем, текущий размер дает ограничение на размер одного тома — 2 Тбайт (2 32 x 512 байт = 2 41 ). Таким образом, 2 Тбайт является практическим пределом для физических и логических томов NTFS.
В табл. 11 показаны основные ограничения NTFS.
Управление доступом к файлам и каталогам
При использовании томов NTFS можно устанавливать права доступа к файлам и каталогам. Эти права доступа указывают, какие пользователи и группы имеют доступ к ним и какой уровень доступа допустим. Такие права доступа распространяются как на пользователей, работающих за компьютером, на котором располагаются файлы, так и на пользователей, обращающихся к файлам через сеть, когда файл располагается в каталоге, открытом для удаленного доступа.
Под NTFS можно также устанавливать разрешения на удаленный доступ, объединяемые с разрешениями на доступ к файлам и каталогам. Помимо этого файловые атрибуты (только чтение, скрытый, системный) также ограничивают доступ к файлу.
Под управлением FAT16 и FAT32 тоже возможно устанавливать атрибуты файлов, но они не обеспечивают права доступа к файлам.
В версии NTFS, используемой в Windows 2000, появился новый тип разрешения на доступ — наследуемые разрешения. Вкладка Security содержит опцию Allow inheritable permissions from parent to propagate to this file object, которая по умолчанию находится в активном состоянии. Данная опция существенно сокращает время, требуемое на изменение прав доступа к файлам и подкаталогам. Например, для изменения прав доступа к дереву, содержащему сотни подкаталогов и файлов, достаточно включить эту опцию — в Windows NT 4 необходимо изменить атрибуты каждого отдельного файла и подкаталога.
На рис. 5 показаны диалоговая панель Properties и вкладка Security (раздел Advanced) — перечислены расширенные права доступа к файлу.
Напомним, что для томов FAT можно управлять доступом только на уровне томов и такой контроль возможен только при удаленном доступе.
Сжатие файлов и каталогов
В Windows 2000 поддерживается сжатие файлов и каталогов, расположенных на NTFS-томах. Сжатые файлы доступны для чтения и записи любыми Windows-приложениями. Для этого нет необходимости в их предварительной распаковке. Используемый алгоритм сжатия схож с тем, который используется в DoubleSpace (MS-DOS 6.0) и DriveSpace (MS-DOS 6.22), но имеет одно существенное отличие — под управлением MS-DOS выполняется сжатие целого первичного раздела или логического устройства, тогда как под NTFS можно упаковывать отдельные файлы и каталоги.
Алгоритм сжатия в NTFS разработан с учетом поддержки кластеров размером до 4 Кбайт. Если величина кластера больше 4 Кбайт, функции сжатия NTFS становятся недоступными.
Самовосстановление NTFS
Файловая система NTFS обладает способностью самовосстановления и может поддерживать свою целостность за счет использования протокола выполняемых действий и ряда других механизмов.
NTFS рассматривает каждую операцию, модифицирующую системные файлы на NTFS-томах, как транзакцию и сохраняет информацию о такой транзакции в протоколе. Начатая транзакция может быть либо полностью завершена (commit), либо откатывается (rollback). В последнем случае NTFS-том возвращается в состояние, предшествующее началу транзакции. Для того чтобы управлять транзакциями, NTFS записывает все операции, входящие в транзакцию, в файл протокола, перед тем как осуществить запись на диск. После того как транзакция завершена, все операции выполняются. Таким образом, под управлением NTFS не может быть незавершенных операций. В случае дисковых сбоев незавершенные операции просто отменяются.
Под управлением NTFS также выполняются операции, позволяющие «на лету» определять дефектные кластеры и отводить новые кластеры для файловых операций. Этот механизм называется cluster remapping.
В данном обзоре мы рассмотрели различные файловые системы, поддерживаемые в Microsoft Windows 2000, обсудили устройство каждой из них, отметили их достоинства и недостатки. Наиболее перспективной является файловая система NTFS, которая обладает большим набором функций, недоступных в других файловых системах. Новая версия NTFS, поддерживаемая Microsoft Windows 2000, обладает еще большей функциональностью и поэтому рекомендуется для использования при установке операционной системы Win 2000.