Какую файловую структуру использует операционная система windows

Все о файловых системах: зачем они нужны, какие типы бывают, какие файловые системы работают на операционных системах Windows, Linux и macOS. Описания и различия файловых систем.

Рядовому пользователю компьютерных электронных устройств редко, но приходится сталкиваться с таким понятием, как «выбор файловой системы». Чаще всего это происходит при необходимости форматирования внешних накопителей (флешек, microSD), установке операционных систем, восстановлении данных на проблемных носителях, в том числе жестких дисках. Пользователям Windows предлагается выбрать тип файловой системы, FAT32 или NTFS, и способ форматирования (быстрое/глубокое). Дополнительно можно установить размер кластера. При использовании ОС Linux и macOS названия файловых систем могут отличаться.

Возникает логичный вопрос: что такое файловая система и в чем ее предназначение? В данной статье дадим ответы на основные вопросы касательно наиболее распространенных ФС.

Что такое файловая система

Обычно вся информация записывается, хранится и обрабатывается на различных цифровых носителях в виде файлов. Далее, в зависимости от типа файла, кодируется в виде знакомых расширений *exe, *doc, *pdf и т.д., происходит их открытие и обработка в соответствующем программном обеспечении. Мало кто задумывается, каким образом происходит хранение и обработка цифрового массива в целом на соответствующем носителе. 

Операционная система воспринимает физический диск хранения информации как набор кластеров размером 512 байт и больше. Драйверы файловой системы организуют кластеры в файлы и каталоги, которые также являются файлами, содержащими список других файлов в этом каталоге. Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.

Запись файлов большого объема приводит к необходимости фрагментации, когда файлы не сохраняются как целые единицы, а делятся на фрагменты. Каждый фрагмент записывается в отдельные кластеры, состоящие из ячеек (размер ячейки составляет один байт). Информация о всех фрагментах, как части одного файла, хранится в файловой системе.

Файловая система связывает носитель информации (хранилище) с прикладным программным обеспечением, организуя доступ к конкретным файлам при помощи функционала взаимодействия программ API. Программа, при обращении к файлу, располагает данными только о его имени, размере и атрибутах. Всю остальную информацию, касающуюся типа носителя, на котором записан файл, и структуры хранения данных, она получает от драйвера файловой системы.

На физическом уровне драйверы ФС оптимизируют запись и считывание отдельных частей файлов для ускоренной обработки запросов, фрагментации и «склеивания» хранящейся в ячейках информации. Данный алгоритм получил распространение в большинстве популярных файловых систем на концептуальном уровне в виде иерархической структуры представления метаданных (B-trees). Технология снижает количество самых длительных дисковых операций позиционирования головок при чтении произвольных блоков. Это позволяет не только ускорить обработку запросов, но и продлить срок службы HDD. В случае с твердотельными накопителями, где принцип записи, хранения и считывания информации отличается от применяемого в жестких дисках, ситуация с выбором оптимальной файловой системы имеет свои нюансы.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Основные функции файловых систем

Файловая система отвечает за оптимальное логическое распределение информационных данных на конкретном физическом носителе. Драйвер ФС организует взаимодействие между хранилищем, операционной системой и прикладным программным обеспечением. Правильный выбор файловой системы для конкретных пользовательских задач влияет на скорость обработки данных, принципы распределения и другие функциональные возможности, необходимые для стабильной работы любых компьютерных систем. Иными словами, это совокупность условий и правил, определяющих способ организации файлов на носителях информации.

Основными функциями файловой системы являются:

  • размещение и упорядочивание на носителе данных в виде файлов;
  • определение максимально поддерживаемого объема данных на носителе информации;
  • создание, чтение и удаление файлов;
  • назначение и изменение атрибутов файлов (размер, время создания и изменения, владелец и создатель файла, доступен только для чтения, скрытый файл, временный файл, архивный, исполняемый, максимальная длина имени файла и т.п.);
  • определение структуры файла;
  • поиск файлов;
  • организация каталогов для логической организации файлов;
  • защита файлов при системном сбое;
  • защита файлов от несанкционированного доступа и изменения их содержимого. 

VDS Timeweb арендовать

Задачи файловой системы 

Функционал файловой системы нацелен на решение следующих задач:

  • присвоение имен файлам;
  • программный интерфейс работы с файлами для приложений;
  • отображение логической модели файловой системы на физическую организацию хранилища данных;
  • поддержка устойчивости файловой системы к сбоям питания, ошибкам аппаратных и программных средств;
  • содержание параметров файла, необходимых для правильного взаимодействия с другими объектами системы (ядро, приложения и пр.). 

В многопользовательских системах реализуется задача защиты файлов от несанкционированного доступа, обеспечение совместной работы. При открытии файла одним из пользователей для других этот же файл временно будет доступен в режиме «только чтение».

Вся информация о файлах хранится в особых областях раздела (томах). Структура справочников зависит от типа файловой системы. Справочник файлов позволяет ассоциировать числовые идентификаторы уникальных файлов и дополнительную информацию о них с непосредственным содержимым файла, хранящимся в другой области раздела.

Операционные системы и типы файловых систем

Существует три основных вида операционных систем, используемых для управления любыми информационными устройствами: Windows компании Microsoft, macOS разработки Apple и операционные системы с открытым исходным кодом на базе Linux. Все они, для взаимодействия с физическими носителями, используют различные типы файловых систем, многие из которых дружат только со «своей» операционкой. В большинстве случаев они являются предустановленными, рядовые пользователи редко создают новые дисковые разделы и еще реже задумываются об их настройках.

В случае с Windows все выглядит достаточно просто: NTFS на всех дисковых разделах и FAT32 (или NTFS) на флешках. Если установлен NAS (сервер для хранения данных на файловом уровне), и в нем используется какая-то другая файловая система, то практически никто не обращает на это внимания. К нему просто подключаются по сети и качают файлы.

На мобильных гаджетах с ОС Android чаще всего установлена ФС версии ext4 во внутренней памяти и FAT32 на карточках microSD. Владельцы продукции Apple зачастую вообще не имеют представления, какая файловая система используется на их устройствах HFS+, HFSX, APFS, WTFS или другая. Для них существуют лишь красивые значки папок и файлов в графическом интерфейсе.

Более богатый выбор у линуксоидов. Но здесь настройка и использование определенного типа файловой системы требует хотя бы минимальных навыков программирования. Тем более, мало кто задумывается, можно ли использовать в определенной ОС «неродную» файловую систему. И зачем вообще это нужно.

Рассмотрим более подробно виды файловых систем в зависимости от их предпочтительного использования с определенной операционной системой.

Файловые системы Windows 

Исходный код файловой системы, получившей название FAT, был разработан по личной договоренности владельца Microsoft Билла Гейтса с первым наемным сотрудником компании Марком Макдональдом в 1977 году. Основной задачей FAT была работа с данными в операционной системе Microsoft 8080/Z80 на базе платформы MDOS/MIDAS. Файловая система FAT претерпела несколько модификаций FAT12, FAT16 и, наконец, FAT32, которая используется сейчас в большинстве внешних накопителей. Основным отличием каждой версии является преодоление ограниченного объема доступной для хранения информации. В дальнейшем были разработаны еще две более совершенные системы обработки и хранения данных NTFS и ReFS.

Файловая система Windows

FAT (таблица распределения файлов)

Числа в FAT12, FAT16 и FAT32 обозначают количество бит, используемых для перечисления блока файловой системы. FAT32 является фактическим стандартом и устанавливается на большинстве видов сменных носителей по умолчанию. Одной из особенностей этой версии ФС является возможность применения не только на современных моделях компьютеров, но и в устаревших устройствах и консолях, снабженных разъемом USB.

Пространство FAT32 логически разделено на три сопредельные области:

  • зарезервированный сектор для служебных структур;
  • табличная форма указателей;
  • непосредственная зона записи содержимого файлов. 

К недостатком стандарта FAT32 относится ограничение размера файлов на диске до 4 Гб и всего раздела в пределах 8 Тб. По этой причине данная файловая система чаще всего используется в USB-накопителях и других внешних носителях информации. Для установки последней версии ОС Microsoft Windows 10 на внутреннем носителе потребуется более продвинутая файловая система. 

С целью устранения ограничений, присущих FAT32, корпорация Microsoft разработала обновленную версию файловой системы exFAT (расширенная таблица размещения файлов). Новая ФС очень схожа со своим предшественником, но позволяет пользователям хранить файлы намного большего размера, чем четыре гигабайта. В exFAT значительно снижено число перезаписей секторов, ответственных за непосредственное хранение информации. Функция очень важна для твердотельных накопителей ввиду необратимого изнашивания ячеек после определенного количества операций записи. Продукт exFAT совместим с операционными системами Mac, Android и Windows. Для Linux понадобится вспомогательное программное обеспечение.

NTFS (файловая система новой технологии)

Стандарт NTFS разработан с целью устранения недостатков, присущих более ранним версиям ФС. Впервые он был реализован в Windows NT в 1995 году, и в настоящее время является основной файловой системой для Windows. Система NTFS расширила допустимый предел размера файлов до шестнадцати гигабайт, поддерживает разделы диска до 16 Эб (эксабайт, 1018 байт). Использование системы шифрования Encryption File System (метод «прозрачного шифрования») осуществляет разграничение доступа к данным для различных пользователей, предотвращает несанкционированный доступ к содержимому файла. Файловая система позволяет использовать расширенные имена файлов, включая поддержку многоязычности в стандарте юникода UTF, в том числе в формате кириллицы. Встроенное приложение проверки жесткого диска или внешнего накопителя на ошибки файловой системы chkdsk повышает надежность работы харда, но отрицательно влияет на производительность.

ReFS (Resilient File System)

Последняя разработка Microsoft, доступная для серверов Windows 8 и 10. Архитектура файловой системы в основном организована в виде B + -tree. Файловая система ReFS обладает высокой отказоустойчивостью благодаря реализации новых функций:

  • Copy-on-Write (CoW) никакие метаданные не изменяются без копирования;
  • данные записываются на новое дисковое пространство, а не поверх существующих файлов;
  • при модификации метаданных новая копия хранится в свободном дисковом пространстве, затем система создает ссылку из старых метаданных на новую версию.

Все это позволяет повысить надежность хранения файлов, обеспечивает быстрое и легкое восстановление данных.

Файловые системы macOS 

Для операционной системы macOS компания Apple использует собственные разработки файловых систем: 

  1. HFS+, которая является усовершенствованной версией HFS, ранее применяемой на компьютерах Macintosh, и ее более соверешенный аналог APFS. Стандарт HFS+ используется во всех устройствах под управлением продуктов Apple, включая компьютеры Mac, iPod, а также Apple X Server.Файловые системы macOS
  2. Кластерная файловая система Apple Xsan, созданная из файловых систем StorNext и CentraVision, используется в расширенных серверных продуктах. Эта файловая система хранит файлы и папки, информацию Finder о просмотре каталогов, положениях окна и т.д.

Файловые системы Linux

В отличие от ОС Windows и macOS, ограничивающих выбор файловой системы предустановленными вариантами, Linux предоставляет возможность использования нескольких ФС, каждая из которых оптимизирована для решения определенных задач. Файловые системы в Linux используются не только для работы с файлами на диске, но и для хранения данных в оперативной памяти или доступа к конфигурации ядра во время работы системы. Все они включены в ядро и могут использоваться в качестве корневой файловой системы.

Файловая система Линукс

Основные файловые системы, используемые в дистрибутивах Linux:

  • Ext2;
  • Ext3;
  • Ext4;
  • JFS;
  • ReiserFS;
  • XFS;
  • Btrfs;
  • ZFS.

Ext2, Ext3, Ext4 или Extended Filesystem стандартная файловая система, первоначально разработанная еще для Minix. Содержит максимальное количество функций и является наиболее стабильной в связи с редкими изменениями кодовой базы. Начиная с ext3 в системе используется функция журналирования. Сегодня версия ext4 присутствует во всех дистрибутивах Linux. 

JFS или Journaled File System разработана в IBM в качестве альтернативы для файловых систем ext. Сейчас она используется там, где необходима высокая стабильность и минимальное потребление ресурсов (в первую очередь в многопроцессорных компьютерах). В журнале хранятся только метаданные, что позволяет восстанавливать старые версии файлов после сбоев.

ReiserFS также разработана в качестве альтернативы ext3, поддерживает только Linux. Динамический размер блока позволяет упаковывать несколько небольших файлов в один блок, что предотвращает фрагментацию и улучшает работу с небольшими файлами. Недостатком является риск потери данных при отключении энергии. 

XFS рассчитана на файлы большого размера, поддерживает диски до 2 терабайт. Преимуществом системы является высокая скорость работы с большими файлами, отложенное выделение места, увеличение разделов на лету, незначительный размер служебной информации. К недостаткам относится невозможность уменьшения размера, сложность восстановления данных и риск потери файлов при аварийном отключении питания.

Btrfs или B-Tree File System легко администрируется, обладает высокой отказоустойчивостью и производительностью. Используется как файловая система по умолчанию в OpenSUSE и SUSE Linux.

Другие ФС, такие как NTFS, FAT, HFS, могут использоваться в Linux, но корневая файловая система на них не устанавливается, поскольку они для этого не предназначены.

Дополнительные файловые системы

В операционных системах семейства Unix BSD (созданы на базе Linux) и Sun Solaris чаще всего используются различные версии ФС UFS (Unix File System), известной также под названием FFS (Fast File System). В современных компьютерных технологиях данные файловые системы могут быть заменены на альтернативные: ZFS для Solaris, JFS и ее производные для Unix.

Кластерные файловые системы включают поддержку распределенных хранилищ, расширяемость и модульность. К ним относятся:

  • ZFS «Zettabyte File System» разработана для распределенных хранилищ Sun Solaris OS;
  • Apple Xsan эволюция компании Apple в CentraVision и более поздних разработках StorNext; 
  • VMFS (Файловая система виртуальных машин) разработана компанией VMware для VMware ESX Server;
  • GFS Red Hat Linux именуется как «глобальная файловая система» для Linux;
  • JFS1 оригинальный (устаревший) дизайн файловой системы IBM JFS, используемой в старых системах хранения AIX. 

Практический пример использования файловых систем

Владельцы мобильных гаджетов для хранения большого объема информации используют дополнительные твердотельные накопители microSD (HC), по умолчанию отформатированные в стандарте FAT32. Это является основным препятствием для установки на них приложений и переноса данных из внутренней памяти. Чтобы решить эту проблему, необходимо создать на карточке раздел с ext3 или ext4. На него можно перенести все файловые атрибуты (включая владельца и права доступа), чтобы любое приложение могло работать так, словно запустилось из внутренней памяти.

Операционная система Windows не умеет делать на флешках больше одного раздела. С этой задачей легко справится Linux, который можно запустить, например, в виртуальной среде. Второй вариант — использование специальной  утилиты для работы с логической разметкой, такой как MiniTool Partition Wizard Free. Обнаружив на карточке дополнительный первичный раздел с ext3/ext4, приложение Андроид Link2SD и аналогичные ему предложат куда больше вариантов.

Файловая система для microSD

Флешки и карты памяти быстро умирают как раз из-за того, что любое изменение в FAT32 вызывает перезапись одних и тех же секторов. Гораздо лучше использовать на флеш-картах NTFS с ее устойчивой к сбоям таблицей $MFT. Небольшие файлы могут храниться прямо в главной файловой таблице, а расширения и копии записываются в разные области флеш-памяти. Благодаря индексации на NTFS поиск выполняется быстрее. Аналогичных примеров оптимизации работы с различными накопителями за счет правильного использования возможностей файловых систем существует множество.

Надеюсь, краткий обзор основных ФС поможет решить практические задачи в части правильного выбора и настройки ваших компьютерных устройств в повседневной практике.

Операционная система Windows 8, Windows 8.1 поддерживает несколько файловых систем: NTFS, FAT и FAT32. Но работать может только на NTFS, то есть установлена может быть только на раздел жесткого дис­ка, отформатированного в данной файловой системе.

Обусловлено это теми особенностями и инструментами безопасности, которые преду­смотрены в NTFS, но отсутствуют в файловых системах Windows предыдущего поколения: FAT16 и FAT32.

Далее мы остановим­ся на всей линейке файловых систем для Windows, чтобы понять, какую роль они играют в работе системы и как они развивались в про­цессе становления Windows плоть до Windows 8.

Содержание

  1. Общие сведения о файловых системах
  2. Файловая система FAT
  3. Файловая система FAT32
  4. Файловая система NTFS
  5. Устройство NTFS. Главная таблица файлов MFT
  6. Конвертирование разделов FAT32 в NTFS без потери данных. Утилита convert

Общие сведения о файловых системах

Преимущества 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 обеспечивает более вы­сокую надежность работы и более высокую скорость запуска программ.

Обусловлено это двумя существенными нововведениями:

  1. Возможностью перемещения корневого каталога и резервной копии FAT (если основная копия получила повреждения)
  2. Возможностью хранения резервной копии системных данных.

Файловая система 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:, в командную строку следует ввести следующую команду:

convert d: /fs:ntfs /v

После этого от вас попросят ввести метку тома, если такая есть (метка тома указывается рядом с именем диска в окне Мой компьютер. Она служит для более подробного обозначения дисков и может использоваться, а может не использоваться. Например, это может быть Files Storage (D:).

Здесь Files Storage — это метка тома d:.

Для конвертации флешки команда выглядит так:

convert e: /fs:ntfs /nosecurity /x

где e – это буква вашей флешки.

Ядром операционной
системы является модуль, который
обеспечивает управление файлами —
файловая система.

Основная
задача файловой системы

обеспечение взаимодействия программ
и физических устройств ввода/вывода
(различных накопителей). Она также
определяет структуру хранения файлов
и каталогов на диске, правила задания
имен файлов, допустимые атрибуты файлов,
права доступа и др.

Обычно файловую
систему воспринимают и как средство
управления файлами, и как общее хранилище
файлов.

Файл— это поименованная последовательность
любых данных, стандартная структура
которой обеспечивает ее размещение в
памяти машины. Файл может содержать
программу, числовые данные, текст,
закодированное изображение или звук и
др. Для каждого файла на диске выделяется
поименованная область, причем файл не
требует для своего размещения непрерывное
пространство, так как может занимать
свободные кластеры в разных частях
диска.

Имя
файла
— это символьная строка,
правила построения которой зависят от
конкретной файловой системы. Максимальная
длина имени файла в Windows составляет 255
символов. Имена могут содержать любые
символы, включая пробелы, кроме следующих:
прямой и обратный слэш ( и /), двоеточие
(:), звездочка (*), знак вопроса (?), двойная
кавычка («), знаков меньше и больше (<
и >), знака «трубопровода» (|). Система
сохраняет использованные в длинных
именах строчные буквы.

Помимо имени,
файл имеет расширение
(тип)
длиной до 3 символов, которое
отделяется от имени точкой. К свойствам
файла также относятся: реальный размер
и объем занимаемого дискового пространства;
время создания, последнего изменения
и доступа; имя создателя файла; пароль
для доступа, атрибуты и др.

Файл может иметь
следующие атрибуты:

R (Read-Only) —
«только для чтения».
При попытке
модифицировать или удалить файл с этим
атрибутом будет выдано соответствующее
сообщение.

H (Hidden) — «скрытый
файл».
При просмотре содержимого
папки (без специальных установок или
ключа) сведения о файлах с таким атрибутом
не выдаются.

A (Archive) —
«неархивированный файл».
Этот атрибут
устанавливается при создании каждого
файла и снимается средствами архивации
и резервирования файлов.

Для удобства
работы с файлами и их систематизации
на диске создаются папки (каталоги),
структура которых определяет логическую
организацию данных.

Папка
(каталог)
— это специальное место
на диске, в котором хранятся имена
файлов, сведения об их размерах, времени
последнего обновления и т.д. Имена папок
образуются по тем же правилам, что и
имена файлов.

Структура папок
в Windows иерархическая (древовидная). Папка
самого верхнего уровня — главная
(корневая) — создается автоматически
и не имеет имени. В ней находятся сведения
не только файлов, но и о папках первого
уровня (папки первого и последующих
уровней создаются пользователем). Папка,
с которой в данный момент работает
пользователь, называется текущей.

С папками и
файлами могут выполняться операции
создания, удаления, копирования и
перемещения, а также изменение их свойств
и управление доступом.

Физическая
организация данных на носителе зависит
от файловой системы, которая предусматривает
выделение в процессе форматирования
диска специальных областей: системной
области
иобластиданных.
Основными компонентами системной
области являются: загрузочная запись,
таблицы размещения файлов и корневой
каталог (папка). Область данных содержит
файлы и папки.

Вся область
данных диска делится на кластеры,которые представляют собой неделимые
блоки данных одного размера на диске.
Все кластеры пронумерованы. В самом
начале диска размещается таблица
размещения файлов, содержащая столько
записей, сколько кластеров доступно на
диске. В ней содержатся сведения о
номерах кластеров, в которых размещается
файл, отмечены неиспользуемые кластеры,
а также поврежденные кластеры, которые
помечаются определенным значением,
после чего уже никогда не употребляются.

Каждый кластер
файла содержит номер следующего в
цепочке его кластеров. Таким образом,
достаточно знать номер первого кластера
в цепочке, который хранится в оглавлении
диска, чтобы определить номера всех
кластеров, содержащих данный файл.
Занимаемый файлом объем кратен количеству
кластеров. Наличие у каждого кластера
индивидуального номера позволяет найти
область расположения файла, причем
необязательно, чтобы его кластеры
располагались рядом. Если разные
фрагменты файла располагаются в несмежных
кластерах, то говорят о фрагментациифайла.

Каждый диск на
компьютере имеет уникальное имя. Диски
именуются буквами латинского алфавита.
Обычно накопителю на гибком магнитном
диске (НГМД) присваивается имя А:, а
винчестеру (НЖМД) — С:.

Жесткий диск
представляет собой физическое устройство.
Для организации эффективной работы с
дисковым пространством жесткого
магнитного диска с помощью специальной
программы его разбивают на ряд разделов
логических дисков, каждый из
которых рассматривается системой как
отдельный диск и именуется последующими
буквами латинского алфавита (D, E и т.д.).

Windows XP позволяет
форматировать жесткий диск в файловой
системе FAT или NTFS.

Система
FAT (File Allocation Table) —
представляет
собой таблицу размещения файлов MS-DOS и
Windows 9x и Me, поэтому понимается этими ОС.
Но она имеет низкую отказоустойчивость,
и при аварийном отключении питания
велика вероятность потери данных.

Система
NTFS (New Technology File System) —
была разработана
Microsoft специально для Windows NT. Она гарантирует
сохранность данных в случае копирования
даже при программно-аппаратном сбое
или отключении электропитания, превосходит
FAT по эффективности использования
ресурсов (например, работает с файлами
размером более 4 Гб), предоставляет
возможность создавать «динамические»
жесткие диски, объединяющие несколько
папок, предоставляет средства для
разграничения доступа и защиты информации
и др.

Перевод логического
диска из FAT в NTFS осуществляется штатной
программой Windows или специальными
программами без потери информации.
Также существуют специальные программы,
которые могут производить конвертацию
из NTFS в FAT, однако в большинстве случаев
такой перевод требует форматирования
диска.

На
диске может храниться огромное количество
разнообразных файлов. Для удобства
работы с файлами, их систематизации по
назначению, содержанию, авторству или
другим признакам на диске создаются
каталоги, структура которых определяет
логическую
организацию данных. Каталог

это специальное место на диске, в котором
хранятся имена файлов, сведения об их
размерах, времени последнего обновления,
свойствах и т.д. Каталог самого верхнего
уровня — корневой
(главный) каталог
диска
создается автоматически и не имеет
имени. В нем находятся имена не только
файлов, но и подкаталогов первого уровня
(каталоги первого и последующих уровней
создаются пользователем). Подкаталог
первого уровня может содержать имена
файлов и подкаталогов второго уровня
и т.д. Каталог, с которым в данный момент
работает пользователь, называется
текущим.

Имена
файлов и их атрибуты хранятся в каталоге.
Если в каталоге хранится имя файла, то
говорят, что этот файл находится в данном
каталоге. Обращение к каталогу, если он
не корневой, осуществляется по имени3.

На
каждом диске может быть несколько
каталогов. В каждом каталоге могут
присутствовать файлы и другие каталоги.
В зависимости от файловой системы
структура каталогов может быть
древовидной, когда каталог может входить
только в один каталог более высокого
уровня (рис. 3.2, а),
и
сетевой, когда каталог может входить в
различные каталоги (рис. 3.2,6). Сетевая
структура реализована в Unix,
древовидная — в ОС семейства Windows.

Рис.
3.2.
Структура
каталога: а — древовидная; б — сетевая

В
Windows
каталог называется папкой. С папками
(каталогами) и файлами могут выполняться
операции создания, удаления, копирования
и перемещения, а также изменение их
свойств и управление доступом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Представляет собой запоминающее устройство с несколькими круглыми жесткими пластинами покрытыми слоем ферромагнитного материала расположенные на одной оси привода и с подвижными считывающими головками. В работе жесткого диска (винчестера) используется принцип магнитной записи. Мы не будем углубляться в устройство и работу жестких дисков, а рассмотрим в общих чертах файловую систему компьютера.

Файловая система компьютера (ФС) — описание способа хранения, распределения, наименования и обеспечения доступа к информации, хранящейся на жестком диске компьютера. Именно файловая система жесткого диска определяет правила наименования файлов и каталогов, ограничения на максимальные размеры файла и раздела, длину имени файла, максимальный уровень вложенности каталогов и другие моменты. Кстати, максимальный размер файла в файловой системе FAT32 составляет 4 Гбайта.

В ОС Windows наиболее распространенной на сегодняшний день является файловая система NTFS, заменившая устаревшую файловую систему FAT. Именно файловую систему NTFS лучше всего использовать на сегодняшний день. Чтобы жесткий диск можно было использовать в компьютере, его необходимо подготовить, отформатировать в выбранную файловую систему. Программа форматирования создает на жестком диске компьютера структуру в соответствии с правилами файловой системы Windows после чего диск становится виден в операционной системе и его можно использовать. Форматирование жесткого диска осуществляется силами операционной системы или сторонней программы. При этом выбирается тип файловой системы жесткого диска, размер кластера и способ форматирования.

Кластер — упрощенно, минимальная ячейка на жестком диске для хранения информации, эдакая коробочка для хранения файлов. Кластер имеет вполне конкретные стандартизованные размеры равные 512 байт раньше и 4 096 байт в настоящее время. В одном кластере хранится только один файл, если он меньше размера кластера, то все равно занимает весь кластер. Когда файл не помещается целиком в одном кластере, то он записывается кусочками по разным кластерам, необязательно соседним. Поскольку размеры файлов крайне редко кратны размеру кластера, то на диске файлы практически всегда занимают больше места, чем их реальный размер. Чтобы было понятнее, возьмем для наглядности такой пример. Есть 9 кирпичей, из них 3 белых и 6 красных, а в контейнер помещается только 5 кирпичей одного типа. Чтобы хранить наши кирпичи нам понадобится 3 контейнера, хотя емкость двух контейнеров 10 кирпичей. Вот наглядная иллюстрация, как это происходит.

Аналогия кластера

В файловой системе компьютера происходит точно также. В этом легко убедиться, если кликнуть правой кнопкой мыши по файлу и выбрать свойства.

Свойства файла в проводнике Windows

Файл размером 6 байт занимает в файловой системе жесткого диска 4 096 байт, т.е. один кластер. Соответственно маленький размер кластера больше подходит для хранения маленьких файлов, а большой размер кластера для хранения больших. Тогда место на диске будет использоваться более рационально. Так же происходит и с ярлыками.

Первоначально, вся информация в виде файлов записывалась в файловую систему Windows в одну кучу, однако с ростом количества информации и емкости дисков это стало очень неудобно. Попробуйте найти нужную вам вещь в коробке, среди десятков других. Выходом из этой ситуации стало создание древовидной структуры папок (директорий или каталогов) сильно облегчающих структурирование и поиск информации. Внутри каталога создаются подкаталоги, и файлы группируются по логическому принципу удобному пользователю.

Структура каталогов

Дальнейший рост емкости дисков привел к следующему очевидному шагу, разбить один физический носитель информации на несколько логических разделов (дисков). Логически выделенная часть смежных блоков на диске называется раздел (partition). Такая структура файловой системы применяется в настоящее время в операционной системе Windows.

Схема использованния жесткого диска

Это позволяет упростить структурирование информации, повысить надежность хранения данных за счет разделения системных и пользовательских файлов, более гибко управлять правами доступа к файлам, увеличить скорость дисковых операций. Каждый созданный логический диск воспринимается операционной системой, как независимый, хотя фактически он виртуален. Благодаря этому каждому разделу жесткого диска можно назначить произвольную файловую систему или настроить размер кластера, а так же иметь несколько операционных систем на одном компьютере.

Первый физический сектор жесткого диска отведен для хранения главной загрузочной записи (MBR), необходимой для начальной загрузки операционной системы, а так же хранит таблицу разделов.

Разделы бывают двух видов: первичный (основной) и дополнительный (расширенный). В первом секторе основного раздела располагается загрузочный сектор, обеспечивающий загрузку ОС с данного раздела жесткого диска. Всего на физическом диске может быть четыре раздела и только один из них расширенный. Дополнительный раздел представляет собой оболочку для любого количества других логических разделов. Это позволяет обойти ограничение, только четыре раздела на физическом диске.

Вот и все, что мы хотели рассказать о файловой системе компьютера в операционной системе Windows.

Операционные системы Microsoft семейства Windows NT нельзя представить без файловой системы NTFS — одной из самых сложных и удачных из существующих на данный момент файловых систем. Данная статья расскажет вам, в чем особенности и недостатки этой системы, на каких принципах основана организация информации, и как поддерживать систему в стабильном состоянии, какие возможности предлагает NTFS и как их можно использовать обычному пользователю.

Часть 1. Физическая структура NTFS

Начнем с общих фактов. Раздел NTFS, теоретически, может быть почти какого угодно размера. Предел, конечно, есть, но я даже не буду указывать его, так как его с запасом хватит на последующие сто лет развития вычислительной техники — при любых темпах роста. Как обстоит с этим дело на практике? Почти так же. Максимальный размер раздела NTFS в данный момент ограничен лишь размерами жестких дисков. NT4, правда, будет испытывать проблемы при попытке установки на раздел, если хоть какая-нибудь его часть отступает более чем на 8 Гб от физического начала диска, но эта проблема касается лишь загрузочного раздела.

Лирическое отступление. Метод инсталляции NT4.0 на пустой диск довольно оригинален и может навести на неправильные мысли о возможностях NTFS. Если вы укажете программе установки, что желаете отформатировать диск в NTFS, максимальный размер, который она вам предложит, будет всего 4 Гб. Почему так мало, если размер раздела NTFS на самом деле практически неограничен? Дело в том, что установочная секция просто не знает этой файловой системы :) Программа установки форматирует этот диск в обычный FAT, максимальный размер которого в NT составляет 4 Гбайт (с использованием не совсем стандартного огромного кластера 64 Кбайта), и на этот FAT устанавливает NT. А вот уже в процессе первой загрузки самой операционной системы (еще в установочной фазе) производится быстрое преобразование раздела в NTFS; так что пользователь ничего и не замечает, кроме странного «ограничения» на размер NTFS при установке. :)

Структура раздела — общий взгляд

Как и любая другая система, NTFS делит все полезное место на кластеры — блоки данных, используемые единовременно. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт, неким стандартом же считается кластер размером 4 Кбайт. Никаких аномалий кластерной структуры NTFS не имеет, поэтому на эту, в общем-то, довольно банальную тему, сказать особо нечего.

Диск NTFS условно делится на две части. Первые 12% диска отводятся под так называемую MFT зону — пространство, в которое растет метафайл MFT (об этом ниже). Запись каких-либо данных в эту область невозможна. MFT-зона всегда держится пустой — это делается для того, чтобы самый главный, служебный файл (MFT) не фрагментировался при своем росте. Остальные 88% диска представляют собой обычное пространство для хранения файлов.

Свободное место диска, однако, включает в себя всё физически свободное место — незаполненные куски MFT-зоны туда тоже включаются. Механизм использования MFT-зоны таков: когда файлы уже нельзя записывать в обычное пространство, MFT-зона просто сокращается (в текущих версиях операционных систем ровно в два раза), освобождая таким образом место для записи файлов. При освобождении места в обычной области MFT зона может снова расширится. При этом не исключена ситуация, когда в этой зоне остались и обычные файлы: никакой аномалии тут нет. Что ж, система старалась оставить её свободной, но ничего не получилось. Жизнь продолжается… Метафайл MFT все-таки может фрагментироваться, хоть это и было бы нежелательно.

MFT и его структура

Файловая система NTFS представляет собой выдающееся достижение структуризации: каждый элемент системы представляет собой файл — даже служебная информация. Самый главный файл на NTFS называется MFT, или Master File Table — общая таблица файлов. Именно он размещается в MFT зоне и представляет собой централизованный каталог всех остальных файлов диска, и, как не парадоксально, себя самого. MFT поделен на записи фиксированного размера (обычно 1 Кбайт), и каждая запись соответствует какому либо файлу (в общем смысле этого слова). Первые 16 файлов носят служебный характер и недоступны операционной системе — они называются метафайлами, причем самый первый метафайл — сам MFT. Эти первые 16 элементов MFT — единственная часть диска, имеющая фиксированное положение. Интересно, что вторая копия первых трех записей, для надежности — они очень важны — хранится ровно посередине диска. Остальной MFT-файл может располагаться, как и любой другой файл, в произвольных местах диска — восстановить его положение можно с помощью его самого, «зацепившись» за самую основу — за первый элемент MFT.

Метафайлы

Первые 16 файлов NTFS (метафайлы) носят служебный характер. Каждый из них отвечает за какой-либо аспект работы системы. Преимущество настолько модульного подхода заключается в поразительной гибкости — например, на FAT-е физическое повреждение в самой области FAT фатально для функционирования всего диска, а NTFS может сместить, даже фрагментировать по диску, все свои служебные области, обойдя любые неисправности поверхности — кроме первых 16 элементов MFT.

Метафайлы находятся корневом каталоге NTFS диска — они начинаются с символа имени «$», хотя получить какую-либо информацию о них стандартными средствами сложно. Любопытно, что и для этих файлов указан вполне реальный размер — можно узнать, например, сколько операционная система тратит на каталогизацию всего вашего диска, посмотрев размер файла $MFT. В следующей таблице приведены используемые в данный момент метафайлы и их назначение.

$MFT сам MFT
$MFTmirr копия первых 16 записей MFT, размещенная посередине диска
$LogFile файл поддержки журналирования (см. ниже)
$Volume служебная информация — метка тома, версия файловой системы, т. д.
$AttrDef список стандартных атрибутов файлов на томе
$. корневой каталог
$Bitmap карта свободного места тома
$Boot загрузочный сектор (если раздел загрузочный)
$Quota файл, в котором записаны права пользователей на использование дискового пространства (начал работать лишь в NT5)
$Upcase файл — таблица соответствия заглавных и прописных букв в имен файлов на текущем томе. Нужен в основном потому, что в NTFS имена файлов записываются в Unicode, что составляет 65 тысяч различных символов, искать большие и малые эквиваленты которых очень нетривиально.

Файлы и потоки

Итак, у системы есть файлы — и ничего кроме файлов. Что включает в себя это понятие на NTFS?

  • Прежде всего, обязательный элемент — запись в MFT, ведь, как было сказано ранее, все файлы диска упоминаются в MFT. В этом месте хранится вся информация о файле, за исключением собственно данных. Имя файла, размер, положение на диске отдельных фрагментов, и т. д. Если для информации не хватает одной записи MFT, то используются несколько, причем не обязательно подряд.
  • Опциональный элемент — потоки данных файла. Может показаться странным определение «опциональный», но, тем не менее, ничего странного тут нет. Во-первых, файл может не иметь данных — в таком случае на него не расходуется свободное место самого диска. Во-вторых, файл может иметь не очень большой размер. Тогда идет в ход довольно удачное решение: данные файла хранятся прямо в MFT, в оставшемся от основных данных месте в пределах одной записи MFT. Файлы, занимающие сотни байт, обычно не имеют своего «физического» воплощения в основной файловой области — все данные такого файла хранятся в одном месте — в MFT.

Довольно интересно обстоит дело и с данными файла. Каждый файл на NTFS, в общем-то, имеет несколько абстрактное строение — у него нет как таковых данных, а есть потоки (streams). Один из потоков и носит привычный нам смысл — данные файла. Но большинство атрибутов файла — тоже потоки! Таким образом, получается, что базовая сущность у файла только одна — номер в MFT, а всё остальное опционально. Данная абстракция может использоваться для создания довольно удобных вещей — например, файлу можно «прилепить» еще один поток, записав в него любые данные — например, информацию об авторе и содержании файла, как это сделано в Windows 2000 (самая правая закладка в свойствах файла, просматриваемых из проводника). Интересно, что эти дополнительные потоки не видны стандартными средствами: наблюдаемый размер файла — это лишь размер основного потока, который содержит традиционные данные. Можно, к примеру, иметь файл нулевой длинны, при стирании которого освободится 1 Гбайт свободного места — просто потому, что какая-нибудь хитрая программа или технология прилепила в нему дополнительный поток (альтернативные данные) гигабайтового размера. Но на самом деле в текущий момент потоки практически не используются, так что опасаться подобных ситуаций не следует, хотя гипотетически они возможны. Просто имейте в виду, что файл на NTFS — это более глубокое и глобальное понятие, чем можно себе вообразить просто просматривая каталоги диска. Ну и напоследок: имя файла может содержать любые символы, включая полый набор национальных алфавитов, так как данные представлены в Unicode — 16-битном представлении, которое дает 65535 разных символов. Максимальная длина имени файла — 255 символов.

Каталоги

Каталог на NTFS представляет собой специфический файл, хранящий ссылки на другие файлы и каталоги, создавая иерархическое строение данных на диске. Файл каталога поделен на блоки, каждый из которых содержит имя файла, базовые атрибуты и ссылку на элемент MFT, который уже предоставляет полную информацию об элементе каталога. Внутренняя структура каталога представляет собой бинарное дерево. Вот что это означает: для поиска файла с данным именем в линейном каталоге, таком, например, как у FAT-а, операционной системе приходится просматривать все элементы каталога, пока она не найдет нужный. Бинарное же дерево располагает имена файлов таким образом, чтобы поиск файла осуществлялся более быстрым способом — с помощью получения двухзначных ответов на вопросы о положении файла. Вопрос, на который бинарное дерево способно дать ответ, таков: в какой группе, относительно данного элемента, находится искомое имя — выше или ниже? Мы начинаем с такого вопроса к среднему элементу, и каждый ответ сужает зону поиска в среднем в два раза. Файлы, скажем, просто отсортированы по алфавиту, и ответ на вопрос осуществляется очевидным способом — сравнением начальных букв. Область поиска, суженная в два раза, начинает исследоваться аналогичным образом, начиная опять же со среднего элемента.

Вывод — для поиска одного файла среди 1000, например, FAT придется осуществить в среднем 500 сравнений (наиболее вероятно, что файл будет найден на середине поиска), а системе на основе дерева — всего около 12-ти (2^10 = 1024). Экономия времени поиска налицо. Не стоит, однако думать, что в традиционных системах (FAT) всё так запущено: во-первых, поддержание списка файлов в виде бинарного дерева довольно трудоемко, а во-вторых — даже FAT в исполнении современной системы (Windows2000 или Windows98) использует сходную оптимизацию поиска. Это просто еще один факт в вашу копилку знаний. Хочется также развеять распространенное заблуждение (которое я сам разделял совсем еще недавно) о том, что добавлять файл в каталог в виде дерева труднее, чем в линейный каталог: это достаточно сравнимые по времени операции — дело в том, что для того, чтобы добавить файл в каталог, нужно сначала убедится, что файла с таким именем там еще нет :) — и вот тут-то в линейной системе у нас будут трудности с поиском файла, описанные выше, которые с лихвой компенсируют саму простоту добавления файла в каталог.

Какую информацию можно получить, просто прочитав файл каталога? Ровно то, что выдает команда dir. Для выполнения простейшей навигации по диску не нужно лазить в MFT за каждым файлом, надо лишь читать самую общую информацию о файлах из файлов каталогов. Главный каталог диска — корневой — ничем не отличается об обычных каталогов, кроме специальной ссылки на него из начала метафайла MFT.

Журналирование

NTFS — отказоустойчивая система, которая вполне может привести себя в корректное состояние при практически любых реальных сбоях. Любая современная файловая система основана на таком понятии, как транзакция — действие, совершаемое целиком и корректно или не совершаемое вообще. У NTFS просто не бывает промежуточных (ошибочных или некорректных) состояний — квант изменения данных не может быть поделен на до и после сбоя, принося разрушения и путаницу — он либо совершен, либо отменен.

Пример 1: осуществляется запись данных на диск. Вдруг выясняется, что в то место, куда мы только что решили записать очередную порцию данных, писать не удалось — физическое повреждение поверхности. Поведение NTFS в этом случае довольно логично: транзакция записи откатывается целиком — система осознает, что запись не произведена. Место помечается как сбойное, а данные записываются в другое место — начинается новая транзакция.

Пример 2: более сложный случай — идет запись данных на диск. Вдруг, бах — отключается питание и система перезагружается. На какой фазе остановилась запись, где есть данные, а где чушь? На помощь приходит другой механизм системы — журнал транзакций. Дело в том, что система, осознав свое желание писать на диск, пометила в метафайле $LogFile это свое состояние. При перезагрузке это файл изучается на предмет наличия незавершенных транзакций, которые были прерваны аварией и результат которых непредсказуем — все эти транзакции отменяются: место, в которое осуществлялась запись, помечается снова как свободное, индексы и элементы MFT приводятся в с состояние, в котором они были до сбоя, и система в целом остается стабильна. Ну а если ошибка произошла при записи в журнал? Тоже ничего страшного: транзакция либо еще и не начиналась (идет только попытка записать намерения её произвести), либо уже закончилась — то есть идет попытка записать, что транзакция на самом деле уже выполнена. В последнем случае при следующей загрузке система сама вполне разберется, что на самом деле всё и так записано корректно, и не обратит внимания на «незаконченную» транзакцию.

И все-таки помните, что журналирование — не абсолютная панацея, а лишь средство существенно сократить число ошибок и сбоев системы. Вряд ли рядовой пользователь NTFS хоть когда-нибудь заметит ошибку системы или вынужден будет запускать chkdsk — опыт показывает, что NTFS восстанавливается в полностью корректное состояние даже при сбоях в очень загруженные дисковой активностью моменты. Вы можете даже оптимизировать диск и в самый разгар этого процесса нажать reset — вероятность потерь данных даже в этом случае будет очень низка. Важно понимать, однако, что система восстановления NTFS гарантирует корректность файловой системы, а не ваших данных. Если вы производили запись на диск и получили аварию — ваши данные могут и не записаться. Чудес не бывает.

Сжатие

Файлы NTFS имеют один довольно полезный атрибут — «сжатый». Дело в том, что NTFS имеет встроенную поддержку сжатия дисков — то, для чего раньше приходилось использовать Stacker или DoubleSpace. Любой файл или каталог в индивидуальном порядке может хранится на диске в сжатом виде — этот процесс совершенно прозрачен для приложений. Сжатие файлов имеет очень высокую скорость и только одно большое отрицательное свойство — огромная виртуальная фрагментация сжатых файлов, которая, правда, никому особо не мешает. Сжатие осуществляется блоками по 16 кластеров и использует так называемые «виртуальные кластеры» — опять же предельно гибкое решение, позволяющее добиться интересных эффектов — например, половина файла может быть сжата, а половина — нет. Это достигается благодаря тому, что хранение информации о компрессированности определенных фрагментов очень похоже на обычную фрагментацию файлов: например, типичная запись физической раскладки для реального, несжатого, файла:

кластеры файла с 1 по 43-й хранятся в кластерах диска начиная с 400-го

кластеры файла с 44 по 52-й хранятся в кластерах диска начиная с 8530-го…

Физическая раскладка типичного сжатого файла:

кластеры файла с 1 по 9-й хранятся в кластерах диска начиная с 400-го

кластеры файла с 10 по 16-й нигде не хранятся

кластеры файла с 17 по 18-й хранятся в кластерах диска начиная с 409-го

кластеры файла с 19 по 36-й нигде не хранятся

Видно, что сжатый файл имеет «виртуальные» кластеры, реальной информации в которых нет. Как только система видит такие виртуальные кластеры, она тут же понимает, что данные предыдущего блока, кратного 16-ти, должны быть разжаты, а получившиеся данные как раз заполнят виртуальные кластеры — вот, по сути, и весь алгоритм.

Безопасность

NTFS содержит множество средств разграничения прав объектов — есть мнение, что это самая совершенная файловая система из всех ныне существующих. В теории это, без сомнения, так, но в текущих реализациях, к сожалению, система прав достаточно далека от идеала и представляет собой хоть и жесткий, но не всегда логичный набор характеристик. Права, назначаемые любому объекту и однозначно соблюдаемые системой, эволюционируют — крупные изменения и дополнения прав осуществлялись уже несколько раз и к Windows 2000 все-таки они пришли к достаточно разумному набору.

Права файловой системы NTFS неразрывно связаны с самой системой — то есть они, вообще говоря, необязательны к соблюдению другой системой, если ей дать физический доступ к диску. Для предотвращения физического доступа в Windows2000 (NT5) всё же ввели стандартную возможность — об этом см. ниже. Система прав в своем текущем состоянии достаточно сложна, и я сомневаюсь, что смогу сказать широкому читателю что-нибудь интересное и полезное ему в обычной жизни. Если вас интересует эта тема — вы найдете множество книг по сетевой архитектуре NT, в которых это описано более чем подробно.

На этом описание строение файловой системы можно закончить, осталось описать лишь некоторое количество просто практичных или оригинальных вещей.

Hard Links

Эта штука была в NTFS с незапамятных времен, но использовалась очень редко — и тем не менее: Hard Link — это когда один и тот же файл имеет два имени (несколько указателей файла-каталога или разных каталогов указывают на одну и ту же MFT запись). Допустим, один и тот же файл имеет имена 1.txt и 2.txt: если пользователь сотрет файл 1, останется файл 2. Если сотрет 2 — останется файл 1, то есть оба имени, с момента создания, совершенно равноправны. Файл физически стирается лишь тогда, когда будет удалено его последнее имя.

Symbolic Links (NT5)

Гораздо более практичная возможность, позволяющая делать виртуальные каталоги — ровно так же, как и виртуальные диски командой subst в DOSе. Применения достаточно разнообразны: во-первых, упрощение системы каталогов. Если вам не нравится каталог Documents and settingsAdministratorDocuments, вы можете прилинковать его в корневой каталог — система будет по прежнему общаться с каталогом с дремучим путем, а вы — с гораздо более коротким именем, полностью ему эквивалентным. Для создания таких связей можно воспользоваться программой junction (junction.zip, 15 Кб), которую написал известный специалист Mark Russinovich. Программа работает только в NT5 (Windows 2000), как и сама возможность.

Для удаления связи можно воспользоваться стандартной командой rd.
ВНИМАНИЕ: Попытка уделения связи с помощью проводника или других файловых менеджеров, не понимающих виртуальную природу каталога (например, FAR), приведет к удалению данных, на которые ссылается ссылка! Будьте осторожны.

Шифрование (NT5)

Полезная возможность для людей, которые беспокоятся за свои секреты — каждый файл или каталог может также быть зашифрован, что не даст возможность прочесть его другой инсталляцией NT. В сочетании со стандартным и практически непрошибаемым паролем на загрузку самой системы, эта возможность обеспечивает достаточную для большинства применений безопасность избранных вами важных данных.Часть 2. Особенности дефрагментации NTFS

Вернемся к одному достаточно интересному и важному моменту — фрагментации и дефрагментации NTFS. Дело в том, что ситуация, сложившаяся с этими двумя понятиями в настоящий момент, никак не может быть названа удовлетворительной. В самом начале утверждалось, что NTFS не подвержена фрагментации файлов. Это оказалось не совсем так, и утверждение сменили — NTFS препятствует фрагментации. Оказалось, что и это не совсем так. То есть она, конечно, препятствует, но толк от этого близок к нулю… Сейчас уже понятно, что NTFS — система, которая как никакая другая предрасположена к фрагментации, что бы ни утверждалось официально. Единственное что — логически она не очень от этого страдает. Все внутренние структуры построены таким образом, что фрагментация не мешает быстро находить фрагменты данных. Но от физического последствия фрагментации — лишних движений головок — она, конечно, не спасает. И поэтому — вперед и с песней.

К истокам проблемы

Как известно, система сильнее всего фрагментирует файлы когда свободное место кончается, когда приходится использовать мелкие дырки, оставшиеся от других файлов. Тут возникает первое свойство NTFS, которое прямо способствует серьезной фрагментации.

Диск NTFS поделен на две зоны. В начала диска идет MFT зона — зона, куда растет MFT, Master File Table. Зона занимает минимум 12% диска, и запись данных в эту зону невозможна. Это сделано для того, чтобы не фрагментировался хотя бы MFT. Но когда весь остальной диск заполняется — зона сокращается ровно в два раза :). И так далее. Таким образом мы имеем не один заход окончания диска, а несколько. В результате если NTFS работает при диске, заполненном на около 90% — фрагментация растет как бешенная.

Попутное следствие — диск, заполненный более чем на 88%, дефрагментировать почти невозможно — даже API дефрагментации не может перемещать данные в MFT зону. Может оказаться так, что у нас не будет свободного места для маневра.

Далее. NTFS работает себе и работает, и всё таки фрагментируется — даже в том случае, если свободное место далеко от истощения. Этому способствует странный алгоритм нахождения свободного места для записи файлов — второе серьезное упущение. Алгоритм действий при любой записи такой: берется какой-то определенный объем диска и заполняется файлом до упора. Причем по очень интересному алгоритму: сначала заполняются большие дырки, потом маленькие. Т.е. типичное распределение фрагментов файла по размеру на фрагментированной NTFS выглядит так (размеры фрагментов):

16 — 16 — 16 — 16 — 16 — [скачек назад] — 15 — 15 — 15 — [назад] — 14 — 14 — 14 …. 1 — 1 — 1 -1 — 1…

Так процесс идет до самых мелких дырок в 1 кластер, несмотря на то, что на диске наверняка есть и гораздо более большие куски свободного места.

Вспомните сжатые файлы — при активной перезаписи больших объемов сжатой информации на NTFS образуется гигантское количество «дырок» из-за перераспределения на диске сжатых объемов — если какой-либо участок файла стал сжиматься лучше или хуже, его приходится либо изымать из непрерывной цепочки и размещать в другом месте, либо стягивать в объеме, оставляя за собой дырку.

Смысл в сего этого вступления в пояснении того простого факта, что никак нельзя сказать, что NTFS препятствует фрагментации файлов. Наоборот, она с радостью их фрагментирует. Фрагментация NTFS через пол года работы доведет до искреннего удивления любого человека, знакомого с работой файловой системой. Поэтому приходится запускать дефрагментатор. Но на этом все наши проблемы не заканчиваются, а, увы, только начинаются.

Средства решения?

В NT существует стандартное API дефрагментации. Обладающее интересным ограничением для перемещения блоков файлов: за один раз можно перемещать не менее 16 кластеров (!), причем начинаться эти кластеры должны с позиции, кратной 16 кластерам в файле. В общем, операция осуществляется исключительно по 16 кластеров. Следствия:

  1. В дырку свободного места менее 16 кластеров нельзя ничего переместить (кроме сжатых файлов, но это неинтересные в данный момент тонкости).
  2. Файл, будучи перемещенный в другое место, оставляет после себя (на новом месте) «временно занятое место», дополняющее его по размеру до кратности 16 кластерам.
  3. При попытке как-то неправильно (»не кратно 16») переместить файл результат часто непредсказуем. Что-то округляется, что-то просто не перемещается… Тем не менее, всё место действия щедро рассыпается «временно занятым местом».

«Временно занятое место» служит для облегчения восстановления системы в случае аппаратного сбоя и освобождается через некоторое время, обычно где-то пол минуты.

Тем не менее, логично было бы использовать это API, раз он есть. Его и используют. Поэтому процесс стандартной дефрагментации, с поправками на ограниченность API, состоит из следующих фаз (не обязательно в этом порядке):

  • Вынимание файлов из MFT зоны. Не специально — просто обратно туда их положить не представляется возможным :) Безобидная фаза, и даже в чем то полезная.
  • Дефрагментация файлов. Безусловно, полезный процесс, несколько, правда, осложняемый ограничениями кратности перемещений — файлы часто приходится перекладывать сильнее, чем это было бы логично сделать по уму.
  • Дефрагментация MFT, виртуалки (pagefile.sys) и каталогов. Возможна через API только в Windows2000, иначе — при перезагрузке, отдельным процессом, как в старом Diskeeper-е.
  • Складывание файлов ближе к началу — так называемая дефрагментация свободного места. Вот это — воистину страшный процесс.

Допустим, мы хотим положить файлы подряд в начало диска. Кладем один файл. Он оставляет хвост занятости дополнения до кратности 16. Кладем следующий — после хвоста, естественно. Через некоторое время, по освобождению хвоста, имеем дырку <16 кластеров размером. Которую потом невозможно заполнить через API дефрагментации! В результате, до оптимизации картина свободного места выглядела так: много дырок примерно одинакового размера. После оптимизации — одна дыра в конце диска, и много маленьких <16 кластеров дырок в заполненном файлами участке. Какие места в первую очередь заполняются? Правильно, находящиеся ближе к началу диска мелкие дырки <16 кластеров… Любой файл, плавно созданный на прооптимизированном диске, будет состоять из дикого числа фрагментов. Да, диск потом можно оптимизировать снова. А потом еще раз.. и еще.. и так — желательно каждую неделю. Бред? Реальность.

Таким образом, имеется два примерно равнозначных варианта. Первый — часто оптимизировать диск таким дефрагментатором, смиряясь при этом с дикой фрагментацией заново созданных файлов. Второй вариант — вообще ничего не трогать, и смириться с равномерной, но гораздо более слабой фрагментацией всех файлов на диске.

Пока есть всего один дефрагментатор, который игнорирует API дефрагментации и работает как-то более напрямую — Norton Speeddisk 5.0 для NT. Когда его пытаются сравнить со всеми остальными — Diskeeper, O&O defrag, т. д. — не упоминают этого главного, самого принципиального, отличия. Просто потому, что эта проблема тщательно скрывается, по крайней мере уж точно не афишируется на каждом шагу. Speeddisk — единственная на сегодняшний день программа, которая может оптимизировать диск полностью, не создавая маленьких незаполненных фрагментов свободного места. Стоит добавить также, что при помощи стандартного API невозможно дефрагментировать тома NTFS с кластером более 4 Кбайт, а SpeedDisk и это может.

К сожалению, в Windows 2000 поместили дефрагментатор, который работает через API, и, соответственно, плодит дырки <16 кластеров. Так что как только появится (если еще не появился) — так сразу надо качать Speeddisk для W2k.

Как некоторый вывод из всего этого: все остальные дефрагментаторы при одноразовом применении просто вредны. Если вы запускали его хоть раз — нужно запускать его потом хотя бы раз в месяц, чтобы избавится от фрагментации новоприбывающих файлов. В этом основная суть сложности дефрагментации NTFS теми средствами, которые сложились исторически.Часть 3. Что выбрать?

Любая из представленных ныне файловых систем уходит своими корнями в глубокое прошлое — еще к 80-м годам. Да, NTFS, как это не странно — очень старая система! Дело в том, что долгое время персональные компьютеры пользовались лишь операционной системой DOS, которой и обязана своим появлением FAT. Но параллельно разрабатывались и тихо существовали системы, нацеленные на будущее. Две таких системы, получившие всё же широкое признание — NTFS, созданная для операционной системы Windows NT 3.1 еще в незапамятные времена, и HPFS — верная спутница OS/2.

Внедрение новых систем шло трудно — еще в 95м году, с выходом Windows95, ни у кого не было и мыслей о том, что что-то нужно менять — FAT получил второе дыхание посредством налепленной сверху заплатки «длинные имена», реализация которых там хоть и близка к идеально возможной без изменения системы, но всё же довольно бестолкова. Но в последующие годы необходимость перемен назрела окончательно, поскольку естественные ограничения FAT стали давать о себе знать. FAT32, появившаяся в Windows 95 OSR2, просто сдвинула рамки — не изменив сути системы, которая просто не дает возможности организовать эффективную работу с большим количеством данных.

HPFS (High Performance File System), активно применяемая до сих пор пользователями OS/2, показала себя достаточно удачной системой, но и она имела существенные недостатки — полное отсутствие средств автоматической восстанавливаемости, излишнюю сложность организации данных и невысокую гибкость.

NTFS же долго не могла завоевать персональные компьютеры из-за того, что для организации эффективной работы с её структурами данных требовались значительные объемы памяти. Системы с 4 или 8 Мбайт (стандарт 95-96 годов) были просто неспособны получить хоть какой-либо плюс от NTFS, поэтому за ней закрепилась не очень правильная репутация медленной и громоздкой системы. На самом деле это не соответствует действительности — современные компьютерные системы с памятью более 64 Мб получают просто огромный прирост производительности от использования NTFS.

В данной таблице сведены воедино все существенные плюсы и минусы распространенных в наше время систем, таких как FAT32, FAT и NTFS. Вряд ли разумно обсуждать другие системы, так как в настоящее время 97% пользователей делают выбор между Windows98, Windows NT4.0 и Windows 2000 (NT5.0), а других вариантов там просто нет.

FAT

FAT32

NTFS

Системы, её поддерживающие DOS, Windows9Х, NT всех версий Windows98, NT5 NT4, NT5
Максимальный размер тома 2 Гбайт практически неограничен практически неограничен
Макс. число файлов на томе примерно 65 тысяч практически не ограничено практически не ограничено
Имя файла с поддержкой длинных имен — 255 символов, системный набор символов с поддержкой длинных имен — 255 символов, системный набор символов 255 символов, любые символы любых алфавитов (65 тысяч разных начертаний)
Возможные атрибуты файла Базовый набор Базовый набор всё, что придет в голову производителям программного обеспечения
Безопасность нет нет да (начиная с NT5.0 встроена возможность физически шифровать данные)
Сжатие нет нет да
Устойчивость к сбоям средняя (система слишком проста и поэтому ломаться особо нечему :)) плохая (средства оптимизации по скорости привели к появлению слабых по надежности мест) полная — автоматическое восстановление системы при любых сбоях (не считая физические ошибки записи, когда пишется одно, а на самом деле записывается другое)
Экономичность минимальная (огромные размеры кластеров на больших дисках) улучшена за счет уменьшения размеров кластеров максимальна. Очень эффективная и разнообразная система хранения данных
Быстродействие высокое для малого числа файлов, но быстро уменьшается с появлением большого количества файлов в каталогах. результат — для слабо заполненных дисков — максимальное, для заполненных — плохое полностью аналогично FAT, но на дисках большого размера (десятки гигабайт) начинаются серьезные проблемы с общей организацией данных система не очень эффективна для малых и простых разделов (до 1 Гбайт), но работа с огромными массивами данных и внушительными каталогами организована как нельзя более эффективно и очень сильно превосходит по скорости другие системы

Хотелось бы сказать, что если ваша операционная система — NT (Windows 2000), то использовать какую-либо файловую систему, отличную от NTFS — значит существенно ограничивать свое удобство и гибкость работы самой операционной системы. NT, а особенно Windows 2000, составляет с NTFS как бы две части единого целого — множество полезных возможностей NT напрямую завязано на физическую и логическую структуру файловой системы, и использовать там FAT или FAT32 имеет смысл лишь для совместимости — если у вас стоит задача читать эти диски из каких-либо других систем.

Хотелось бы выразить искреннюю признательность Андрею Шабалину, без которого эта статья просто не была бы написана, а даже будучи написанной, содержала бы много досадных неточностей

Продолжение читайте в статье «Надежность дисковой системы NT»

About Windows File System

file system structure

What is file system? Have you ever paid attention to it? This article aims to introduce Windows file system to you.

In computing, file system controls how data is stored and retrieved. In other words, it is the method and data structure that an operating system uses to keep track of files on a disk or partition.

It separates the data we put in computer into pieces and gives each piece a name, so the data is easily isolated and identified.

Without file system, information saved in a storage media would be one large body of data with no way to tell where the information begins and ends.

Types of Windows File System

Knowing what is file system, let’s learn about the types of Windows file system.

There are five types of Windows file system, such as FAT12, FAT16, FAT32, NTFS and exFAT. Most of us like to choose the latter three, and I would like to introduce them respectively for you.

Tip: You may hear ReFS (Resilient File System), a Microsoft proprietary file system introduced in Windows Server 2012, and you can click here to learn more about it.

FAT32 in Windows

In order to overcome the limited volume size of FAT16 (its supported maximum volume size is 2GB) Microsoft designed a new version of the file system FAT32, which then becomes the most frequently used version of the FAT (File Allocation Table) file system.

NTFS in Windows

NTFS is the newer drive format. Its full name is New Technology File System. Starting with Windows NT 3.1, it is the default file system of the Windows NT family.

Microsoft has released five versions of NTFS, namely v1.0, v1.1, v1.2, v3.0, and v3.1.

exFAT in Windows

exFAT (Extended File Allocation Table) was designed by Microsoft back in 2006 and was a part of the company’s Windows CE 6.0 operating system.

This file system was created to be used on flash drives like USB memory sticks and SD cards, which gives a hint for its precursors: FAT32 and FAT16.

Comparisons among the Three Types of Windows File System

Everything comes in advantages and shortcomings. Comparisons among the three types of Windows File System will be showed in following content to help you make a choice about selecting one type of file system.

Compatibility

The three types can work in all versions of Windows.

For FAT32, it also works in game consoles and particularly anything with a USB port; for exFAT, it requires additional software on Linux; for NTFS, it is read only by default with Mac, and may be read only by default with some Linux distributions.

With respect to the ideal use, FAT32 is used on removable drives like USB and Storage Card; exFAT is used for USB flash drives and other external drivers, especially if you need files of more than 4 GB in size; NTFS can be used for servers.

Security

The files belonging to FAT32 and NTFS can be encrypted, but the flies belong to the latter can be compressed.

The encryption and compression in Windows are very useful. If other users do not use your user name to login Windows system, they will fail to open the encrypted and compressed files that created with your user name.

In other word, after some files are encrypted, such files only can be opened when people use your account to login Windows system.

Note: Although the files have been encrypted and compressed, people still can open it when they use your user name to login Windows system. You can apply Hide Partition, a function in MiniTool Partition Wizard to protect your important data and privacy better.

Supported Volume Size

For FAT32, the partition size is no larger than 2TB, which means you cannot format a hard drive larger than 2TB as a single FAT32 partition. NTFS allows you use 64KB clusters to achieve a 256TB volume. In theory, you can achieve a 16EB volume of exFAT.

Supported File Size

For FAT32, it fails to support the single files whose size is over 4GB, while NTFS file system can support the size of single file more than 4GB, and for exFAT, the maximum size of single file, in theory, is 16EB.

In conclusion, compared with NTFS and exFAT, FAT32 comes in higher compatibility in old operating systems and removable storage devices, whereas its features limit in single file size and partition size.

Compared with FAT32 and exFAT, NTFS surpasses in security. And exFAT features larger volume volume size and single file size.

File System Conversion

Maybe you already have a hard drive featuring FAT32 or NTFS file system, and you want to make a conversion. In this situation, you can download MiniTool Partition Wizard to help you complete this conversion.

Convert NTFS to FAT in the main interface of MiniTool Partition Wizard Pro

About Windows File System

file system structure

What is file system? Have you ever paid attention to it? This article aims to introduce Windows file system to you.

In computing, file system controls how data is stored and retrieved. In other words, it is the method and data structure that an operating system uses to keep track of files on a disk or partition.

It separates the data we put in computer into pieces and gives each piece a name, so the data is easily isolated and identified.

Without file system, information saved in a storage media would be one large body of data with no way to tell where the information begins and ends.

Types of Windows File System

Knowing what is file system, let’s learn about the types of Windows file system.

There are five types of Windows file system, such as FAT12, FAT16, FAT32, NTFS and exFAT. Most of us like to choose the latter three, and I would like to introduce them respectively for you.

Tip: You may hear ReFS (Resilient File System), a Microsoft proprietary file system introduced in Windows Server 2012, and you can click here to learn more about it.

FAT32 in Windows

In order to overcome the limited volume size of FAT16 (its supported maximum volume size is 2GB) Microsoft designed a new version of the file system FAT32, which then becomes the most frequently used version of the FAT (File Allocation Table) file system.

NTFS in Windows

NTFS is the newer drive format. Its full name is New Technology File System. Starting with Windows NT 3.1, it is the default file system of the Windows NT family.

Microsoft has released five versions of NTFS, namely v1.0, v1.1, v1.2, v3.0, and v3.1.

exFAT in Windows

exFAT (Extended File Allocation Table) was designed by Microsoft back in 2006 and was a part of the company’s Windows CE 6.0 operating system.

This file system was created to be used on flash drives like USB memory sticks and SD cards, which gives a hint for its precursors: FAT32 and FAT16.

Comparisons among the Three Types of Windows File System

Everything comes in advantages and shortcomings. Comparisons among the three types of Windows File System will be showed in following content to help you make a choice about selecting one type of file system.

Compatibility

The three types can work in all versions of Windows.

For FAT32, it also works in game consoles and particularly anything with a USB port; for exFAT, it requires additional software on Linux; for NTFS, it is read only by default with Mac, and may be read only by default with some Linux distributions.

With respect to the ideal use, FAT32 is used on removable drives like USB and Storage Card; exFAT is used for USB flash drives and other external drivers, especially if you need files of more than 4 GB in size; NTFS can be used for servers.

Security

The files belonging to FAT32 and NTFS can be encrypted, but the flies belong to the latter can be compressed.

The encryption and compression in Windows are very useful. If other users do not use your user name to login Windows system, they will fail to open the encrypted and compressed files that created with your user name.

In other word, after some files are encrypted, such files only can be opened when people use your account to login Windows system.

Note: Although the files have been encrypted and compressed, people still can open it when they use your user name to login Windows system. You can apply Hide Partition, a function in MiniTool Partition Wizard to protect your important data and privacy better.

Supported Volume Size

For FAT32, the partition size is no larger than 2TB, which means you cannot format a hard drive larger than 2TB as a single FAT32 partition. NTFS allows you use 64KB clusters to achieve a 256TB volume. In theory, you can achieve a 16EB volume of exFAT.

Supported File Size

For FAT32, it fails to support the single files whose size is over 4GB, while NTFS file system can support the size of single file more than 4GB, and for exFAT, the maximum size of single file, in theory, is 16EB.

In conclusion, compared with NTFS and exFAT, FAT32 comes in higher compatibility in old operating systems and removable storage devices, whereas its features limit in single file size and partition size.

Compared with FAT32 and exFAT, NTFS surpasses in security. And exFAT features larger volume volume size and single file size.

File System Conversion

Maybe you already have a hard drive featuring FAT32 or NTFS file system, and you want to make a conversion. In this situation, you can download MiniTool Partition Wizard to help you complete this conversion.

Convert NTFS to FAT in the main interface of MiniTool Partition Wizard Pro

Файловые системы FAT

     FAT16

     FAT32

Файловая система NTFS

     Атрибуты файлов в NTFS

Файловая система CDFS

Universal Disk Format

Сравнение файловых систем

     Файловые системы FAT

     Файловая система NTFS

Файловая система и скорость

Максимальный размер тома

     Максимальный размер томов FAT

     Максимальный размер томов NTFS

Одной из важнейших характеристик операционной системы помимо управления памятью, ресурсами компьютера и задачами является поддержка файловой системы — основного хранилища системной и пользовательской информации. В данном обзоре мы рассмотрим основные файловые системы, поддерживаемые в 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-битная адресация и, соответственно,
возможно использование до 216 адресов. В Windows 2000 первые четыре бита таблицы
расположения файлов FAT32 необходимы для собственных нужд, поэтому в FAT32 число
адресов достигает 228.

В табл. 8 показаны размеры кластеров для файловых
систем FAT16 и FAT32.

Помимо существенных отличий в размере кластера FAT32 также позволяет корневому
каталогу расширяться (в FAT16 число вхождений ограничено 512 и может быть даже
ниже при использовании длинных имен файлов).

Преимущества FAT16

Среди преимуществ FAT16 можно отметить следующие:

  • файловая система поддерживается операционными системами MS-DOS, Windows
    95, Windows 98, Windows NT, Windows 2000, а также некоторыми операционными
    системами UNIX;

  • существует большое число программ, позволяющих исправлять ошибки в этой
    файловой системе и восстанавливать данные;

  • при возникновении проблем с загрузкой с жесткого диска система может быть
    загружена с флоппи-диска;

  • данная файловая система достаточно эффективна для томов объемом менее 256
    Мбайт.
Недостатки 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 является более надежной файловой системой. В частности, она поддерживает
    возможность перемещения корневого каталога и использования резервной копии
    FAT. Помимо этого загрузочная запись содержит ряд критичных для файловой системы
    данных.
Недостатки FAT32

Основные недостатки FAT32:

  • размер тома при использовании FAT32 под Windows 2000 ограничен 32 Гбайт;
  • тома FAT32 недоступны из других операционных систем — только из Windows
    95 OSR2 и Windows 98;

  • не поддерживается резервная копия загрузочного сектора;
  • в FAT32 не поддерживается встроенная защита файлов и их сжатие.

Файловая система NTFS

При работе в Windows 2000 Microsoft рекомендуется отформатировать все разделы
жесткого диска под NTFS, за исключением тех конфигураций, когда используется
несколько операционных систем (кроме Windows 2000 и Windows NT). Применение
NTFS вместо FAT позволяет использовать функции, доступные в NTFS. К ним, в частности,
относятся:

  • возможность восстановления. Эта возможность «встроена» в файловую систему.
    NTFS гарантирует сохранность данных за счет того, что использует протокол
    и некоторые алгоритмы восстановления информации. В случае системного сбоя
    NTFS использует протокол и дополнительную информацию для автоматического восстановления
    целостности файловой системы;

  • сжатие информации. Для томов NTFS Windows 2000 поддерживает сжатие отдельных
    файлов. Такие сжатые файлы могут использоваться Windows-приложениями без предварительной
    распаковки, которая происходит автоматически при чтении из файла. При закрытии
    и сохранении файл снова упаковывается;

  • помимо этого можно выделить следующие преимущества NTFS:

— некоторые функции операционной системы требуют наличия 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 и
    более ранних версиях;

  • для томов небольшого объема, содержащих много файлов небольшого размера,
    возможно снижение производительности по сравнению с FAT.

Файловая система и скорость

Как мы уже выяснили, для томов небольшого объема FAT16 или FAT32 обеспечивает
более быстрый доступ к файлам по сравнению с NTFS, так как:

  • FAT обладает более простой структурой;
  • размер каталогов меньше;
  • 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 могут быть менее фрагментированными;

  • расположение файлов небольшого размера. При использовании NTFS файлы небольшого
    размера содержатся в MFT-записи. Размер файла, помещающегося в одну запись
    MFT, зависит от числа атрибутов этого файла.

Максимальный размер тома

Максимальный размер тома зависит от используемой файловой системы. 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 поддерживает тома с числом кластеров до 232. Но тем не менее
помимо отсутствия жестких дисков такого объема существуют и другие ограничения
на максимальный размер тома.

Одним из таких ограничений является таблица разделов. Индустриальные стандарты
ограничивают размер таблицы разделов 232 секторами. Другим ограничением является
размер сектора, который обычно равен 512 байт. Поскольку размер сектора может
измениться в будущем, текущий размер дает ограничение на размер одного тома —
2 Тбайт (232 x 512 байт = 241). Таким образом, 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.

КомпьютерПресс 7’2000

Вы знаете, что Windows Phone использует NTFS? Почему большинство карт памяти и почти все USB-накопители по-прежнему используют старый-добрый FAT? Почему вы можете хранить полноразмерные HD-фильмы на некоторых флеш-накопителях и не можете на других? Почему некоторые устройства поддерживают только карты памяти SDHC до 32 ГБ, и что можно сделать, чтобы заставить их использовать 64 ГБ SDXC? Эти и многие другие вопросы связаны с типом файловой системы, используемой конкретным устройством хранения. Но как это связано с Windows?


Файловые системы Windows

Содержание

  1. Файловые системы Windows
  2. FAT32: Очевидный выбор
  3. NTFS: системный диск
  4. exFAT: лучшее, если поддерживается…
  5. ReFS: лучшее решение для сервера
  6. Сравнение файловых систем или какую файловую системы выбрать?
  7. Открытие файловых систем в Windows и восстановление данных

Файловые системы Windows

В начале истории персональных компьютеров (думаю, в эпоху текстовых DOS-боксов и дискет) единственной используемой файловой системой была FAT12. С появлением жестких дисков, способных хранить несколько мегабайт данных (да, именно мегабайт, а не гигабайт!) была разработана новая версия FAT под названием FAT16. Под эту файловую систему и разрабатывался Windows 95, получив лишь «апгрейд» в виде поддержки более длинных имен файлов. В Windows 98 Microsoft добавили поддержку еще одной новой версии FAT под названием FAT32 для поддержки больших жестких дисков (да, к тому времени мы уже начали измерять дисковое пространство в гигабайтах).

В параллельной вселенной Windows NT Microsoft все время использовала файловую систему новых технологий, или NTFS. Windows NT 4, Windows 2000, а затем Windows XP, Vista, Windows 7, 8, 8.1 и новые Windows 10 используют NTFS.

В еще одной параллельной вселенной – вселенной съемного хранилища вы можете выбирать между универсальным FAT32 (при этом столкнувшись с его ограничением в размерах файлов в 4 ГБ) и более новым, но не так широко поддерживаемым (из-за ограничений по лицензированию) exFAT. Кстати, exFAT используется в качестве файловой системы по выбору на всех картах SDXC емкостью 64 ГБ и более.

Итак, в настоящее время у нас есть три различных семейства файловых систем: древняя, но все же широко применяемая FAT32, новая NTFS и свежеразработанная, оптимизированная на основе Solid ExFAT. Какую из этих файловых систем использовать, и когда? И каковы различия между ними?

FAT32: Очевидный выбор

FAT32 по-прежнему остается единственной файловой системой, используемой в Windows 98 или Windows ME. FAT32 фактически является файловой системой выбора для карт памяти SD до 32ГБ включительно. Наконец, FAT32 часто используется для форматирования USB-накопителей, в том числе емкостью 64ГБ и выше.

Старичок FAT32… Его основные ограничения хорошо известны. FAT32 поддерживает работу с файлами размером не более 4 ГБ. Если кажется, что для одного файла это много, вспомните о том, что один видеоролик в формате HD занимает от 4,5 до 10 ГБ, и сразу станет понятно, насколько данное ограничение существенно в современных реалиях. Его другие ограничения включают в себя отсутствие надежной поддержки, абсолютное отсутствие контроля доступа, отсутствия шифрования, сжатия или отказоустойчивости.

Иначе говоря, это совершенно простая и легкая файловая система, которая подходит практически для любой портативной электроники с низкой производительностью, такой как цифровые камеры и видеокамеры, простые смартфоны, MP3-плееры и аналогичные устройства. Из-за его почтенного возраста и широкой популярности в Windows с 1997 года FAT32 поддерживается практически всей техникой, включая холодильник и кофеварку. Другими словами, если вы хотите носить с собой одно съемное запоминающее устройство и быть уверенным, что его можно использовать с любым подключаемым модулем, FAT32 – то, что вам нужно.

NTFS: системный диск

Однако ограничения FAT32 не позволят эффективно использовать ее в современных вычислительных средах. Отсутствие контроля доступа – это одно, абсолютное отсутствие ведения журнала и каких-либо намеков на отказоустойчивость – это другое. Ограниченный размер файла также является огромным минусом. В результате Microsoft представила новую файловую систему, которую они назвали файловой системой новых технологий, или NTFS.

В NTFS есть все, чего не хватает FAT. Мощные параметры контроля доступа? Пожалуйста. Отказоустойчивость и ведение журнала? Получите. Мгновенное сжатие и шифрование отдельных файлов, папок и целых томов диска? Конечно. Альтернативные потоки данных, повышенные меры безопасности, резервное копирование самой файловой системы и важных системных файлов и многие другие функции… Начиная с его первоначального выпуска в 1994 году, NTFS получала все новые обновления, в том числе, повышающие ее совместимость. Ее великолепный дизайн и простая реализация по-прежнему не имеют аналогов среди других файловых систем даже сегодня. Она достаточно универсальна для использования даже на смартфонах начального уровня под управлением Windows Phone 8 и 8.1. Но, если это такая отличная файловая система, почему ее не используют все и везде?

Как вы могли ожидать, NTFS не лишена недостатков. Разработанная еще в 1994 году для серверных операций, эта файловая система всегда требовала большой вычислительной мощности для поддержания своих многочисленных структур. Ее системные записи быстро растут, занимают драгоценное пространство и добавляют дополнительную нагрузку на эти устройства хранения, использующие флэш-память NAND. Наконец, если использовать что-либо, кроме больших жестких дисков, ее накладные расходы окажутся слишком велики, поэтому всеобщее признание система пока так и не завоевала. И последнее, но не менее важное: NTFS запатентована Microsoft, которые не желают открывать лицензии на эту файловую систему конкурентам.

exFAT: лучшее, если поддерживается…

Чтобы преодолеть ограничения FAT32 и уменьшить дополнительную нагрузку, оказываемую NTFS на носители на основе NAND, Microsoft разработала еще одну файловую систему под названием Extended FAT или exFAT. Эта файловая система в значительной степени основана на той же концепции, что и оригинальный FAT, только теперь она является настоящей 64-битной файловой системой без ограничения размера файла, существующего в FAT32. Именно поэтому exFAT используется как стандарт для больших SD-карт (стандарт SDXC требует, чтобы все SD-карты размером 64 ГБ и более были отформатированы с помощью exFAT). Поэтому, если вы покупаете 64-гигабайтную карту microSDXC, она будет работать на основе exFAT … и по этой причине она может не распознаваться вашим смартфоном или планшетом.

Причина, по которой exFAT не заменила древний FAT32 повсюду – платное лицензирование. В отличие от FAT32, которая бесплатна для всех без роялти, с производителей, которые хотят использовать exFAT на своих устройствах Microsoft взимает плату за лицензирование. В результате создатели телефонов Android, низкоуровневых Android-планшетов и дешевых камеры предпочитают сэкономить несколько центов стоимости устройств (в пересчете на единицу выпущенной техники) на лицензировании, предпочитая исключить exFAT из списка поддерживаемых файловых систем. В результате, если вы вставляете новую 64-гигабайтную микро SD-карту в такое устройство, карта, скорее всего, не будет распознана.

Можете ли вы самолично преодолеть это ограничение? В большинстве случаев да, и довольно легко. Просто подключите свою SD-карту к ПК через устройство чтения карт и отформатируйте ее с помощью … вы догадались… FAT32! Таким образом, вы потеряете возможность хранить на ней файлы размером более 4 ГБ, но ваша карта памяти, скорее всего, будет распознана и будет бесперебойно работать на устройстве Android, которое по техническим характеристикам вроде как и не должно поддерживать SD-карты емкостью более 32 ГБ.

(Обратите внимание, что некоторые устройства могут быть слишком старыми, чтобы распознавать карты памяти SDXC чисто физически. Да, таковые не производятся вот уже несколько лет, но выпущенные ранее устройства могут по-прежнему не поддерживать карту SDXC независимо от того, с какой файловой системой она поставляются)

Однако минуточку… Windows Phone – это ОС Microsoft, так не будут ли устройства Windows Phone поддерживать exFAT по умолчанию? Так и есть! Windows Phone 8 и 8.1 действительно поставляются со встроенной поддержкой exFAT, бесплатной для производителей, которые хотят выпускать устройства для платформы Windows Phone. Microsoft предлагает бесплатную лицензию exFAT в рамках своего «пакета стимулирования», призванного побудить большее число производителей присоединиться к платформе Windows Phone.

Наконец, все или почти все планшеты с операционной системой Windows RT и полной версией Windows 8 или 8.1 поддерживают exFAT и распознают 64-ГБ и более крупные SD-карты без труда.

ReFS: лучшее решение для сервера

Еще одной отличной файловой системой является ReFS. Изначально она была добавлена в Windows 10 по умолчанию, однако позже ее убрали. Одной из причин является то, что ReFS вполне способна заменить файловую систему NTFS, так как с самого начала ReFS была призвана исправить её недостатки.

Немного позже компания Microsoft оценила потенциал ReFS и ее модернизировали под нужды Windows Server, удалив некоторые функции, которые использовались для обычной Windows.

Таким образом, получилось, что NTFS осталась основной файловой системой обычной Windows, а ReFS переехала в Windows Server чтобы обеспечить более быструю работу серверов и новые возможности.

Несмотря на все это, пользователи настольной версии Windows могут без проблем открывать ReFS накопители, но возможность создать ReFS диск при помощи встроенных средств отсутствует.

Но в чем же особенности файловой системы ReFS?

Начать, пожалуй, стоит с постоянной проверки контрольных сумм. Благодаря этому значительно возрастает уровень защиты данных от повреждения, так как файловая система автоматически обнаруживает и исправляет проблемы с некорректными данными.

Еще появилась возможность быстрого масштабирования данных без падения скорости работы.

В ReFS реализована технология copy-on-write, благодаря чему риск потери данных во время переноса сведен к минимуму.

ReFS отлично подходит для клонирования виртуальных машин за счет более быстрого создания фиксированных виртуальных жестких дисков (VHD). Таким образом получается сэкономить немало времени.

В ReFS было уделено большое внимание работе в зеркальными томами. Восстановление поврежденных данных на зеркальном диске (томе) происходит в разы быстрее чем в других файловых системах.

Постоянный анализ ReFS самой себя избавляет от нужды периодического сканирования диска на наличие ошибок и битых секторов. Все проблемы находятся и исправляются автоматически в реальном времени.

Помимо этих нововведений можно также отметить базовые, такие как увеличенный размер одного тома (до 262144 экзабайт) и возможность использовать до 32768 символов в пути файла, а также поддержку шифрования BitLocker (хотя, в настоящее время поддерживается только этот метод шифрования).

Таким образом получилось, что обычный пользователь не реализовал бы многие из них по ненадобности, в то время, как для сервера это базовые необходимые вещи.

В то же время у файловой системы ReFS есть несколько недостатков в виде отсутствия поддержки сжатия файловой системы, жестких ссылок, транзакций, укороченных имен, которые используются для взаимодействия со старым ПО, отсутствие квот и уровней хранилища, а также отсутствие поддержки дедупликации данных. Несмотря на это, файловая система ReFS это лучшее решение для пулов серверных носителей, где важно безопасное хранение большого количества данных.

На последок, хотелось бы сказать, что в сети интернет появляется все больше слухов о том, что в ближайшем будущем будет создана еще одна версия файловой системы ReFS, полностью адаптирована для работы на настольных версиях Windows, которая сможет ускорить работу компьютера и полностью заменит NTFS.

Сравнение файловых систем или какую файловую системы выбрать?

Не существует файловой системы, которая была бы идеальной и обладала только одними преимуществами. Каждая файловая система приносит какие-то свои функции, принося в жертву другие. Именно поэтому, при выборе файловой системы для накопителя, в первую очередь следует ориентироваться на то, где именно накопитель будет использоваться и что именно вы хотите получить.

Если речь идет о переносе файлов большого размера лучше всего отказаться от использования файловой системы FAT (16, 32), так как они не поддерживают хранение файлов больше 4 ГБ. В таком случае, если вы используете операционную систему Windows, вам лучше обратить внимание на файловую систему exFAT.

То, как именно вы планируете использовать ваш накопитель тоже играет огромную роль. К примеру, если накопитель используется для переноса данных с одного компьютера на другой – лучше использовать NTFS или exFAT, так как их поддерживает большинство операционных систем и у вас не будет возникать проблем с совместимостью.

Если же речь идет об использовании на серверах или NAS системах – есть смысл обратить внимание на ReFS, UFS, ZFS. Тут многое зависит от типа сервера и в какой отрасли он используется, так как каждая из этих файловых систем обладает своими преимуществами и недостатками. Больше информации об этих файловых системах вы можете найти в статьях «ReFS – и восстановление данных», «UFS – преимущества и недостатки», «ZFS – особенности работы, преимущества и недостатки».

Если же речь идет об использовании операционной системы Linux – то для нее наиболее предпочтительным вариантом будет ext4, так как она поддерживается на уровне ядра и достаточно производительна для большинства задач.

Открытие файловых систем в Windows и восстановление данных

По умолчанию операционная система Windows поддерживает только такие файловые системы как FAT, NTFS и exFAT. Но если вы использовали ваш накопитель в другой операционной системе, которая использует, к примеру, Btrfs или UFS, тогда у вас возникнут проблемы с открытием такого накопителя в Windows. А поскольку Windows является самой популярной системой – необходимость открыть диск, отформатированный в «чужой» для Windows файловой системе возникает довольно часто. Ну и нельзя не упомянуть, к примеру, что многие телевизоры используют в своей работе файловую систему ext3, которая не поддерживается в Windows.

К счастью есть простое решение как быстро и без проблем открыть такой накопитель в Windows. Речь идет о программе RS Partition Recovery, которая проста в использовании и не требовательна к ресурсам компьютера.

Кроме того, RS Partition Recovery поддерживает ВСЕ современные файловые системы, такие как FAT, NTFS, exFAT, Ext2,3,4, UFS, Btrfs, ReFS, APFS, HFS+, XFS, ReiserFS, HikvisionFS.

RS Partition Recovery поддержка всех современных файловых систем

Просто подключите ваш накопитель и извлеките нужные данные.

Однако самое важное преимущество RS Partition Recovery заключается в возможности восстановления утерянных данных.

Зачастую бывает, что при подключении накопителя с файловой системой, не знакомой Windows сразу же выскакивает окно с предложением отформатировать диск. Но наихудшим является тот факт, что нередко из-за того, что Windows не знает, как правильно работать с диском — она может повредить логическую структуре диска и сделать данные нечитаемыми.

Ну и нельзя исключать человеческий фактор, так как чаще всего именно действия пользователя приводят в потере ценной информации.

Во всех этих случаях RS Partition Recovery станет отличным помощником, который благодаря интуитивно-понятному интерфейсу и встроенному помощнику восстановит ваши данные в несколько кликов.

Like this post? Please share to your friends:
  • Какую файловую систему поддерживает windows xp
  • Какую файловую систему использует windows 10 при установке
  • Какую файловую систему выбрать при создании загрузочной флешки windows 10
  • Какую файловую систему выбрать для флешки для установки windows 10 x64
  • Какую файловую систему выбрать для жесткого диска windows 10