Без возможности работы с информацией наши компьютеры сразу же превращаются в необыкновенно дорогую кучу железа, не более. Файловая система есть основа основ, на которой базируется любая манипуляция с данными, производимая на ПК: от загрузки операционной системы до чтения текстовых файлов в "блокноте".
В эпоху DOS и Windows 3.1 не было возможности выбирать файловую систему (ФС) - все работали в FAT16 и были довольны. Конечно, не из-за того, что причин для недовольства не было, просто альтернативы на то время не существовало. С выходом в свет Windows 95 OSR2 альтернатива появилась, но выбор между FAT16 и FAT32 был настолько очевиден, что без лишних вопросов более новая версия одержала верх. Операционные системы Windows NT/2000, несмотря на поддержку NTFS, революцию в умах обладателей домашних ПК так и не совершили, поскольку это были системы, больше ориентированные на серверы.
А вот с появлением Windows XP на беззащитные головы пользователей таки свалилась проблема выбора между FAT32 и NTFS. Ведь каждому из нас хочется, как минимум, не отставать от прогресса и применять к своему железному другу последние достижения научно-технического прогресса. Однако кое-что все-таки заставляет нас размышлять на тему "Стоит или не стоит?", и это кое-что - увы, отнюдь не безграничные ресурсы нашего компьютера. Итак, какую же из двух ФС предпочесть? Как вы убедитесь далее, ответ на этот вопрос сугубо индивидуален.
Что такое файловая система?
ФС управляет хранением и доступом к файлам на компьютере - и этим все сказано. Одним из базовых понятий ФС является кластер - минимальный размер данных на диске. Например, если ваш файл "весит" всего 1 байт, а размер кластера на винчестере - 8 Кб, то в итоге на жестком диске размер файла будет тоже 8 Кб (один кластер). Если же файл реально занимает 8,1 Кб, на диске он будет "весить" все 16 Кб (два кластера). Теперь попробуйте прикинуть, сколько сотен файлов хранится на винчестере, и вам покажется, что все прошедшие годы вы просто недооценивали роль кластера в вашей жизни.
Помимо размера кластера (он может меняться в зависимости от ФС), немаловажно, каким образом файловая система заполняет свободную область на диске, плохой алгоритм ведет к фрагментации данных (когда части одного файла на диске находятся далеко друг от друга). Скажу, забегая вперед, что в NTFS алгоритм заполнения не очень хорош. Но обо всем по порядку...
FAT32
Теоретически размер логического диска FAT32 ограничен 8 Тб. На практике же встроенные в Windows 2000/XP средства администрирования дисков не позволят создать раздел размером более 32 Гб. Но даже этого для сегодняшних ПК хватает с лихвой.
Имена файлов в FAT32 могут содержать до 255 символов. Максимально возможный размер одного файла составляет 4 Гб.
Пожалуй, одной из важнейших характеристик ФС является стабильность, то есть устойчивость к ошибкам. У FAT32 с этим дела обстоят, прямо говоря, не важно. Наиболее распространенная ошибка, которая знакома всем обладателям Windows 98, - неправильно записанные данные о количестве свободного места. Она возникает по причине того, что данные о количестве свободного места не вычисляются, как это происходило в FAT16, а просто записываются в загрузочную область. И когда возникает сбой в процессе копирования (удаления, перемещения) файла, ОС не успевает записать обновленные данные о свободном месте на диске, хотя на самом деле оно изменилось. В результате возникает ошибка, исправить которую можно лишь полной проверкой винчестера специальной программой.
К тому же FAT32 довольно сильно подвержен фрагментации (особенно при заполнении диска более чем на 80%) - это существенно замедляет работу. В особо запущенных случаях фрагментация может привести даже к "падению" всей ФС.
NTFS
Ограничения на размер жесткого диска, выставляемые NTFS, сегодня недостижимы - 2 000 000 Гб, так что, можно сказать, ограничений попросту нет. Первые 12% диска под управлением NTFS отводятся под основную таблицу файлов MFT (Master File Table). Она представляет собой каталог всех имеющихся файлов, причем файлы небольшого размера (100 байт) хранятся прямо в MFT - это заметно ускоряет доступ к ним. Для работы ФС очень важны первые 16 элементов MFT (указатели на системные файлы) и поэтому на диске хранится копия этих записей. В результате "снести" NTFS довольно непросто: система в состоянии обойти серьезные неисправности поверхности диска и пережить даже повреждение MFT (аналогичная ситуация для FAT закончилась бы фатально).
Каталог в NTFS представляет собой специфический файл, хранящий ссылки на другие файлы и каталоги. Его внутренняя структура подобна бинарному дереву, что позволяет в десятки раз сократить время поиска нужного файла (так называемый метод деления пополам). Чем больше файлов в каталоге, тем больше преимущество перед FAT32 при поиске.
Отказоустойчивость NTFS связана с тем, что работа с данными производится на основе транзакций - действий, совершаемых целиком и корректно или не совершаемых вообще.
Представим себе, что осуществляется запись данных на диск, и вдруг на середине процесса выясняется, что в том месте, куда мы решили записать очередную порцию данных - физическое повреждение поверхности. В этом случае транзакция записи откатывается целиком (отменить изменения можно благодаря журналу транзакций). Место помечается как сбойное, а данные записываются в другое место - начинается новая транзакция.
Разграничение прав доступа к файлам в NTFS далеко не всегда защищает от несанкционированного доступа к секретным данным. Злоумышленник может подключить ваш жесткий диск к другому компьютеру и без труда прочесть нужные файлы, поскольку ограничение прав доступа не распространяется за пределы вашей ОС. Поэтому в NTFS была введена дополнительная мера - шифрование данных на уровне файловой системы, что позволяет скрывать информацию более успешно.
Сжатие данных в NTFS тоже производится на уровне ФС, что позволяет работать с ними относительно быстро, распаковывая информацию "налету". Механизм сжатия чрезвычайно гибок - можно упаковывать даже половину файла, другую часть оставляя несжатой.
Имя файла может содержать любые символы, включая полный набор национальных алфавитов, так как данные представлены в Unicode (65535 разных символов).
Комментарии (1)