Сравнение файловых систем FAT и NTFS
NTFS и FAT(16/32) файловые системы
Для того чтобы упорядочить данные на физических носителях, обязательным условием является наличие файловой системы. Этот способ размещения данных определяет, каким образом будет предоставлен доступ операционной системы к файлам.
При форматировании HDD или флеш накопителя система предоставляет пользователю выбор, какой вид файловой системы (FAT16, FAT32, exFAT, NTFS) будет организован на этом носителе. Ввиду того, что FAT16 является уже историей в мире IT, а exFAT еще новая и малораспространенная система, на сегодняшний день наиболее популярными файловыми системами являются FAT32 и NTFS.
В чем отличия FAT32 и NTFS?
Таблица размещения файлов FAT — это файловая система, в основе которой лежит электронная таблица данных. Существуют две наиболее популярные разновидности данной системы: FAT16 и FAT32. По сути, это однотипные таблицы размещения информации с одной лишь разницей: использование 16-ти или 32-х разрядных адресаций кластеров. В современных системах FAT16 уже не используется, ввиду ее ограниченных возможностей по размеру тома (логического диска).
Максимальный размер файла в системе FAT32 составляет до 4 Гб, а размер кластера от 512 байт до 32 КБ, что позволяет разбить логический диск до 8 ТБ, однако сделать это штатными средствами не представляется возможным.
Главные преимущества FAT32 перед NTFS:
- Значительная скорость доступа к файлам средних и малых размеров;
- Низкая требовательность к оперативному запоминающему устройству;
- Меньший износ жесткого диска.
К недостаткам файловой системы FAT32 можно отнести:
- Уязвимость и возможности сбоя системы;
- Медленные запросы при работе с большими каталогами файлов;
- Отсутствие поддержки малых кластеров;
- Необходимость фрагментации пространства на диске.
NTFS – файловая система, в основе которой лежит использование сводной таблицы с информацией о файлах в начале раздела диска, а уже потом размещаются сами файлы. Данная файловая система использует специализированные структуры данных, что позволяет обеспечить высокую надежность и эффективность использования места на жестком диске.
Основными достоинствами NTFS являются:
- Рациональное использование места на носителе;
- Высокая производительность при работе с большими файлами;
- Значительная надежность;
- Поддержка сжатия;
- Восстановление системы при сбоях.
Есть у этой системы и ряд недостатков:
- Высокая требовательность к объему оперативной памяти;
- Отсутствие доступа NTFS-томов в MS-DOS;
- Снижение производительности при работе с малыми объемами томов.
Каждая из представленных файловых систем обладает рядом преимуществ и недостатков. Выбирая одну из них, необходимо определиться, для каких целей будет использован компьютер и какие у него параметры. Если система устанавливается на мощный серверный компьютер, то более подходящим вариантом окажется NTFS. При работе на домашнем компьютере достаточным будет использование FAT32.
Файловые системы NTFS и FAT32
Эту файловую систему используют такие операционные системы, как Windows NT/2000/XP. При установке NTFS, диск разделяется на две неравные части: первая отводиться под MFT (Master File Table — общая таблица файлов), называется MFT — зоной и занимает порядка 12% от общего размера диска, вторую часть занимают собственно Ваши данные. Есть еще и третья зона, но о ней позже. Что за зверь этот MFT? Это основа NTFS. Он лежит, как было сказано ранее, в MFT — зоне т. е. в начале диска. Каждая запись в MFT соответствует какому-либо файлу и занимает около 1 Kb. По своей сути это каталог всех файлов находящихся на диске. Надо заметить, что любой элемент данных в NTFS рассматривается как файл, даже MFT. Первые 16 файлов (метафайлы) в MFT — зоне являются особой кастой. В них содержится служебная информация, они имеют фиксированное положение и они недоступны даже операционной системе. Кстати, первым из этих 16 является сам MFT — файл. Существует копия первых трех записей. Помните, я говорил о третьей зоне, так вот там она и лежит и своим положением, если можно так выразиться, делит диск пополам. Зачем это сделано? Да для надежности, в случае утери информации в MFT — файле, всегда можно восстановить информацию, а там уже дело техники, как говориться. Все остальные файлы в MFT — зоне могут располагаться произвольно. Надо заметить, что в MFT — зоне теоретически кроме служебных файлов ничего не находиться. Но бывают случаи, когда места на той части диска, что отведена для пользователя не остается 🙁 и тогда MFT — зона уменьшается. Соответственно появляется место во второй половине диска для записи данных. Когда же в этой зоне освобождается достаточное количество свободного места, MFT — зона опять расширяется. И вот тут то появляется проблема. В MFT — зону попадают обычные файлы и она начинает фрагментироваться. Это не смертельно конечно, но и приятного тут мало. Но вернемся к нашим баранам, то бишь метафайлам. Каждый из них отвечает за какую-либо область работы. Начинаются они с символа имени $ (тем, кто занимается программированием значок известен). Приведу пример некоторых из них:
- MFT — не что иное как сам MFT
- MFTmirr — та самая копия, что по серединке диска
- LogFile — это файл журналирования
- Boot — как видно из названия, его величество загрузочный сектор
- Bitmap — карта свободного места раздела
Ну и так далее. Информация о метафайлах находиться в MFT — файле. Сложно? Есть такое дело. Но вся эта фигня придумана для увеличения надежности NTFS и себя оправдывает. Едем дальше. NTFS практически не имеет ограничения на размеры диска ( во всяком случае при нынешних технологиях производства жестких дисков). Размер кластера может варьироваться от 512 b до 64 Kb, хотя обычный его размер равен 4 Kb.
Поговорим теперь о каталоге. Это метофайл с обозначением $. . Он разделен на части в каждой из которых содержится имя файла, его атрибуты и ссылка на MFT — файл. А там уже есть вся остальная информация. Каталог представляет собой бинарное дерево. Попробуем разобраться, что это за фигня такая. В каталоге информация о данных на диске расположена таким образом, что при поиске какого-либо файла каталог разбивался на две части и ответ заключался в том, в какой именно части находиться искомое. Затем та же самая операция повторяется в выбранной половине. И так до тех пор, пока не будет найден нужный файл.
А теперь о файлах. Их как таковых нет. Нормально, да! Есть так называемые стримы, или говоря нормальным русским языком — потоки. То есть, любая единица информации представляет собой несколько потоков. Один поток — это сами данные, он является основным. Другие потоки — атрибуты файла. К любому файлу можно прикрепить любой другой файл. Проще говоря, к потокам одних данных можно прикрепить совершенно новый поток и записать туда новые данные. Вот только информация по объему файла берется по объему основного потока. Пустые или малоразмерные файлы на диске отображены только в метафайлах. Сделано это в целях экономии дискового пространства. Вообще надо отметить, что понятие файл намного глубже и шире и все свойства описать довольно сложно. Отмечу, что максимальная длина имени файла может достигать 255 символов.
Ко всему прочему, файлы NTFS имеют такой замечательный атрибут как сжатый. Любой файл или даже каталог может быть сжат. Сама операция сжатия происходит незаметно, так как скорость ее довольно высока. До кучи, используется так называемое виртуальное сжатие т. е. одна часть файла может быть сжата, а другая нет. Сжатие осуществляется блоками. Каждый блок равен 16 кластерам.
В NTFS используется шифрование данных. Таким образом, если Вы снесли систему и установили ее по новой, зашифрованные файлы без соответствующей санкции прочитать не сможете.
Теперь о журналировании. Но сначала определимся с понятием транзакция. Транзакция — это действие, которое должно быть выполнено целиком и полностью (читай — корректно), в противном случае оно вообще не будет выполнено. Так вот, на основе этой фигни, при сбое во время записи данных на диск, пометок о новом файле в метафайлах сделано не будет. А место, куда была начата запись будет считать чистым. Это необходимо для предохранения 🙂 от различного рода геморроев. Короче, выполнил действие до конца — сделал запись, не удалось — и записывать об этом незачем. Но следует заметить, что функция журналирования сохраняет работоспособность файловой системы, а не ваших данных.
И наконец в NTFS есть еще две такие функции, как Symbolic Links — возможность создания виртуальных каталогов, и Hard Links — поддержка нескольких имен для одного и того же файла.Вот пожалуй что и все.
FAT 32
На данный момент времени эта файловая система является самой распространенной, хотя и сдает постепенно свои позиции после выхода Windows XP. Поддерживают FAT 32 все операционные системы семейства Windows начиная с Windows 95 OSR2. Итак, FAT 32 (File Allocation Table) — это электронная таблица размещения файлов. Находиться она практически в самом начале диска. Структура диска FAT:
- 1. загрузочные секторы главного и дополнительного разделов;
- 2. загрузочный сектор логического диска;
- 3. корневой каталог;
- 4. область данных;
- 5. цилиндр для выполнения диагностических операций чтения/записи;
Основное преимущество FAT 32 перед FAT 16 заключается в том, что вместо 16 разрядных записей используются 32х разрядные. Это в свою очередь увеличивает количество кластеров в разделе до 268 435 456 (в FAT — 65 536). При использовании FAT 32 размер тома равен 2 Tb, а размер одного файла может достигать 4 Gb. Заметное отличие FAT 32 от предшествующих таблиц заключается в том, что корневой каталог не занимает фиксированного места на диске и может иметь любой размер.
Размер кластера при использовании FAT 32 в разделе размером 2 Gb с 5 000 файлами равен 4 Kb ( в FAT 16 — 32 Kb), в таблице будет использоваться до 524 288 записей. При этом сама таблица будет весить порядка 2 Мb.
Сравнение NTFS и FAT 32.
Ну что, займемся неблагодарным делом — сравнением двух файловых систем.
NTFS.
Достоинства:
- 1. Быстрая скорость доступа к файлам малого размера;
- 2. Размер дискового пространства на сегодняшний день практически не ограничен;
- 3. Фрагментация файлов не влияет на саму файловую систему;
- 4. Высокая надежность сохранения данных и собственно самой файловой структуры;
- 5. Высокая производительность при работе с файлами большого размера;
Недостатки:
- 1. Более высокие требования к объему оперативной памяти по сравнению с FAT 32;
- 2. Работа с каталогами средних размеров затруднена из-за их фрагментации;
- 3. Более низкая скорость работы по сравнению с FAT 32
FAT 32
Достоинства:
- 1. Высокая скорость работы;
- 2. Низкое требование к объему оперативной памяти;
- 3. Эффективная работа с файлами средних и малых размеров;
- 4. Более низкий износ дисков, вследствие меньшего количества передвижений головок чтения/записи.
Недостатки:
- 1. Низкая защита от сбоев системы;
- 2. Не эффективная работа с файлами больших размеров;
- 3. Ограничение по максимальному объему раздела и файла;
- 4. Снижение быстродействия при фрагментации;
- 5. Снижение быстродействия при работе с каталогами, содержащими большое количество файлов;
Итак, некоторые соображения. Обе файловые системы хранят данные в кластерах минимальный размер которого равен 512 b. Как правило обычный размер кластера равен 4 Kb. На этом сходства пожалуй и заканчиваются. Кое-что о фрагментации: скорость работы NTFS резко снижается при заполнении диска на 80 — 90 %. Это связано с фрагментацией служебных и рабочих файлов. Чем больше Вы работаете с таким загруженным диском, тем сильнее фрагментация и тем ниже производительность. В FAT 32 фрагментация рабочей области диска происходит и на более ранних этапах. Дело тут зависит от того, насколько часто Вы записываете/стираете данные. Как и в NTFS, фрагментация сильно снижает производительность. Теперь об оперативной памяти. Объем самой электронной таблицы FAT 32 может занимать в ОЗУ порядка нескольких мегабайт. Но на помощь приходит кэширование. Что записывается в кэш:
- 1. Наиболее используемые каталоги;
- 2. Данные о всех используемых в данный момент времени файлах;
- 3. Данные о свободном пространстве диска;
А что же NTFS? Кэшированию трудно поддаются каталоги больших размеров, а они могут достигать размеров нескольких десятков мегабайт. Плюс MFT, плюс информация о свободном месте на диске. Хотя надо заметить, что NTFS все же довольно экономно расходует ресурсы оперативной памяти. В наличии удачная система хранения данных, в MFT каждая запись примерно равна 1 Kb. Но все же требования к объему ОЗУ выше, чем для FAT 32. Короче, если Ваша память меньше или равна 64 Mb, то эффективнее с точки зрения скорости окажется FAT 32. Если больше — разница в скорости будет маленькая, а зачастую вообще никакой. Теперь о самом жестком диске. Для использования NTFS желательно наличие Bus Mastering. Что это? Это особый режим работы драйвера и контроллера. При использовании BM обмен происходит без участия процессора. Отсутствие ВМ скажется на производительности системы. Кроме этого, вследствие использования более сложной файловой системы количество движений головок чтения/записи возрастает, что так же влияет на скорость. Наличие дискового кэша одинаково положительно сказывается, как на NTFS, так и на FAT 32.
Файловые системы накопителей
Именно файловые системы определяют способ хранения информации в виде привычных нам файлов, а также насколько быстро будет осуществляться доступ к данным и с какими ограничениями столкнутся пользователи.
Существует больше 30 файловых систем (ФС), большая часть которых имеет специфическое применение. Например, ФС под названием XFS создана исключительно для операционной системы IRIX, а DTFS — это файловая система, специализирующаяся на сжатии данных.
Если говорить относительно обычных пользователей ПК на Windows, MacOS и Linux, то для них список можно сократить до нескольких самых распространенных.
FAT32
Файловая система, разработанная компанией Microsoft на замену FAT16. Структурно вся область диска в FAT32 делится на кластеры размером от 512 байт до 32 Кбайт. Представьте себе тетрадь в клеточку. Каждая клетка — это кластер, в который может быть записан файл или его часть. Таким образом, большие файлы состоят из цепочки кластеров, которые совсем не обязательно будут располагаться друг за другом.
Не будем погружаться в технические дебри и расскажем о том, что больше всего интересует обычных пользователей — плюсы и минусы FAT32.
Главное и пока неоспоримое достоинство этой файловой системы — ее универсальность. FAT32 работает практически со всеми операционными системами Windows, а также без проблем распознается linux, MacOS, операционными системами игровых приставок и даже Android (если в смартфоне предусмотрена поддержка OTG).
Именно поэтому флеш-накопители чаще всего форматируют в FAT32, чтобы не иметь проблем с совместимостью на различных устройствах. С завода больше 90% всех флешек поставляется с этой ФС. Параллельно к плюсам относится высокая скорость работы с малыми и средними файлами (десятки/сотни мегабайт) и нетребовательность к объему ОЗУ.
Однако почтенный возраст FAT32 (больше 24 лет, что по меркам IT-индустрии просто огромный срок) накладывает ряд неприятных ограничений.
Несмотря на то, что размер тома с технической точки зрения может доходить до 8 ТиБ (тебибайт), что составляет около 8,7 ТБ, по факту в операционных системах Windows из-за встроенного ограничения вы не сможете создать том больше 32 ГБ. Соответственно, разметить большие жесткие диски, по крайней мере в Windows, в FAT32 не получится. Возникнут проблемы и с флешками на 64 ГБ.
Другое, более существенное ограничение — размер одного файла не может превышать 4 ГБ. Учитывая, что бэкапы, фильмы в высоком разрешении и архивы с различной информацией весят больше этого предела, ограничение доставляет массу неудобств.
exFAT
Одна из самых последних «новинок», созданная в 2008 году как расширенная версия FAT32 (extended FAT). Майкрософт решила взять лучшее и избавиться от самых неприятных недостатков.
exFAT ориентирована сугубо на переносные накопители — флешки, SD-карты и съемные жесткие диски. Размер кластера был увеличен до 32 мегабайт, благодаря чему размер файла теперь достигает целых 16 эксабайт (1 эксабайт = 1 048 576 ТБ). Задел на будущее у exFAT довольно внушительный.
Параллельно разработчики избавились от ограничения на размер тома, ввели поддержку прав доступа и минимизировали количество перезаписей, что особенно актуально для flash-памяти, ячейки памяти которой имеют ограниченное количество циклов записи, после чего выходят из строя.
Ощутимый минус только один — незначительная потеря совместимости. exFAT поддерживает Windows XP SP2 и более новые ОС. Соответственно, Windows 2000, NT и все, что старше, остается «за бортом». Усложнение структуры также привело к большим затратам вычислительной мощности компьютера. Однако на фоне современных процессоров с их потенциалом этим недостатком можно пренебречь.
New Technology File System разработали еще в 1993 году, однако, как и FAT32, используют по сей день. Сходство с FAT проявляется и в том, что, пространство делится на кластеры заданного размера. Однако высокую гибкость NTFS обеспечивает именно структура.
Первые 12% диска выделяются под MFT-зону — специальное служебное пространство, где хранится различная информация для работы всей ФС. Эта зона никогда не фрагментируется. В отличие от FAT используется бинарная структура.
Бинарное дерево располагает имена файлов таким образом, чтобы поиск выполнялся более быстрым способом — путем получения двухзначных ответов на вопросы о положении файла. Соответственно, поисковику не приходится просматривать всю цепочку файлов в каталоге.
NTFS обладает множеством достоинств. Максимальный размер тома на практике — 256 ТБ. Размера файла также хватит с запасом — около 16 ТБ. Помимо этого, за счет функции журналирования NTFS — отказоустойчивая система. Проще говоря, ФС либо выполняет действие до конца, либо откатывает все до состояния, когда действие еще не было совершено. Промежуточных «ошибочных» состояний практически не бывает. Имеется встроенное сжатие, средства разграничения прав объектов и шифрование данных.
К главному минусу NTFS относится низкая совместимость — не поддерживается все, что ниже Windows NT. Это не столь печально, но вот на MacOS и Linux записывать файлы на диски с NTFS не получится — только чтение. Игровые консоли Playstation и Xbox 360 также с этой файловой системой не работают.
Например, в PS4 можно отформатировать внешний жесткий диск, но только в формате самой приставки для обеспечения совместимости.
Таким образом, благодаря своему функционалу и поддержке больших объемов пространства NTFS — это отличный вариант для накопителей HDD и SSD. Несмотря на это, вы вполне можете создать на NTFS и флешку, но скорость ее работы по сравнению с FAT будет ниже.
Сравнительная таблица
Три приведенных файловых системы являются самыми популярными и наиболее совместимыми среди всех. Для удобства приведем основные параметры в общую таблицу.
Сравнение файловых систем FAT и NTFS
П еред установкой операционной системы (ОС) пользователю предлагается отформатировать логический диск и выбрать файловую систему FAT16, FAT32 или NTFS. Что это за файловые системы и в чем у них отличия?
Файловая система FAT 16/32
Эта система осталась нам от прошлых версий Windows 95/98. Файловая система FAT имеет таблицу, в которой хранится вся информация о расположении файлов, папок на диске. Повреждение этой таблицы, например, при аппаратном сбое приводит к потере доступа к файлам и папкам, хранящиеся на диске.
Достоинством файловой системы FAT32 является высокая скорость работы. Иногда именно этот показатель перевешивает в сторону выбора именно этой файловой системы. Жесткий диск менее нагружен, так как происходит меньше обращений к нему. Также, система достаточно эффективна при работе с файлами малых и средних размеров.
Если вы решили использовать файловую систему FAT16 или FAT32, то должны знать о ее недостатках и ограничениях.
Во-первых , система FAT не поддерживает логические разделы диска объемом свыше 32 Гбайт, что по современным меркам очень немного.
Во-вторых , максимальный размер файлов в системе ограничивается размером в 4Гбайт. Это непозволительно мало, ведь современные файлы HD-фильмов достигают размеров 24Гбайт и более.
В-третьих , в каталоге, то есть в папке с файлами может храниться до 65534 этих самых файлов.
В-четвертых , файловая система FAT не поддерживает разграничение доступа к файлам.
И наконец, файловая система ненадежна в случае повреждения таблицы файлов в результате аппаратного сбоя или заражения вирусом. Такую систему нельзя использовать на серверах, где требуется надежность данных в не зависимости от сбоев в питании и других воздействиях.
Кстати, отличие файловых систем FAT16 и FAT32 состоит в том, что FAT 16 размеры логического диска и максимальный размер файла еще меньше.
Файловая система NTFS
Файловая система NTFS появилась с Windows NT и имеет существенные преимущества перед системой FAT. Все данные о месторасположении файлов и их атрибутах хранятся в скрытом системном файле. Размер этого файла в зависимости от количества файлов в системе может доходить до ста и более Мбайт. Такой подход обеспечивает улучшенную защиту и данных к аппаратным сбоям.
Система NTFS имеет средства разграничения доступа к файлам и каталогам тем или иным пользователям. Данная система также поддерживает шифрование файлов, которое позволяет более надежно защитить файлы, в случае попадания физического диска в руки к злоумышленникам. Хотя степень защиты не сильно высокая, для обычного пользователя ее вполне достаточно. При использовании файловой системы NTFS можно объединить два одинаковых по объемам физических или логических дисков в, так называемый RAID1 — массив. Такой массив предназначен для увеличения надежности хранения данных. На один жесткий диск в таком случае пишутся данные, а второй жесткий диск предназначен для хранения копий данных. В случае выхода из строя одного из жесткого диска, все данные будут сохранены.
Естественно, это не полный перечень возможностей файловой системы NTFS. Но, и у NTFS есть свои ограничения и недостатки, но эти ограничения сегодня не играют практически никакой роли. Максимальный размер логических дисков системы NTFS ограничен 18446744 Тбайтами, что вполне достаточно рядовому пользователю. Максимальный размер файла ограничен еще большим размером. Максимальное количество файлов в каталоге неограниченно. Из существенных недостатков можно выделить только замедление работы системы с файлами средних размеров в результате их фрагментации.
В конечном итоге решать какую файловую систему использовать FAT32 или NTFS вам.