Смотреть что такое "FAT" в других словарях. Типы файловых систем — в чем разница между FAT32, NTFS и exFAT Что формат фс fat считается

Файловые системы 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 Гбайт.

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

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

Под управлением Microsoft Windows 2000 возможно использование файловых систем FAT16, FAT32, NTFS или их комбинаций. Выбор операционной системы зависит от следующих критериев:

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

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

Как вы уже могли заметить, цифры в названии файловых систем - FAT16 и FAT32 - указывают на число бит, необходимых для хранения информации о номерах кластеров, используемых файлом. Так, в FAT16 применяется 16-битная адресация и, соответственно, возможно использование до 2 16 адресов. В Windows 2000 первые четыре бита таблицы расположения файлов FAT32 необходимы для собственных нужд, поэтому в FAT32 число адресов достигает 2 28 .

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

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

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

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

  • файловая система поддерживается операционными системами MS-DOS, Windows 95, Windows 98, Windows NT, Windows 2000, а также некоторыми операционными системами UNIX;
  • существует большое число программ, позволяющих исправлять ошибки в этой файловой системе и восстанавливать данные;
  • при возникновении проблем с загрузкой с жесткого диска система может быть загружена с флоппи-диска;
  • данная файловая система достаточно эффективна для томов объемом менее 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, зависит от числа атрибутов этого файла.

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

Теоретически NTFS поддерживает тома с числом кластеров до 2 32 . Но тем не менее помимо отсутствия жестких дисков такого объема существуют и другие ограничения на максимальный размер тома.

Одним из таких ограничений является таблица разделов. Индустриальные стандарты ограничивают размер таблицы разделов 2 32 секторами. Другим ограничением является размер сектора, который обычно равен 512 байт. Поскольку размер сектора может измениться в будущем, текущий размер дает ограничение на размер одного тома - 2 Тбайт (2 32 x 512 байт = 2 41). Таким образом, 2 Тбайт является практическим пределом для физических и логических томов NTFS.

В табл. 11 показаны основные ограничения NTFS.

Управление доступом к файлам и каталогам

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

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

Под управлением FAT16 и FAT32 тоже возможно устанавливать атрибуты файлов, но они не обеспечивают права доступа к файлам.

В версии NTFS, используемой в Windows 2000, появился новый тип разрешения на доступ - наследуемые разрешения. Вкладка Security содержит опцию Allow inheritable permissions from parent to propagate to this file object , которая по умолчанию находится в активном состоянии. Данная опция существенно сокращает время, требуемое на изменение прав доступа к файлам и подкаталогам. Например, для изменения прав доступа к дереву, содержащему сотни подкаталогов и файлов, достаточно включить эту опцию - в Windows NT 4 необходимо изменить атрибуты каждого отдельного файла и подкаталога.

На рис. 5 показаны диалоговая панель Properties и вкладка Security (раздел Advanced) - перечислены расширенные права доступа к файлу.

Напомним, что для томов FAT можно управлять доступом только на уровне томов и такой контроль возможен только при удаленном доступе.

Сжатие файлов и каталогов

В Windows 2000 поддерживается сжатие файлов и каталогов, расположенных на NTFS-томах. Сжатые файлы доступны для чтения и записи любыми Windows-приложениями. Для этого нет необходимости в их предварительной распаковке. Используемый алгоритм сжатия схож с тем, который используется в DoubleSpace (MS-DOS 6.0) и DriveSpace (MS-DOS 6.22), но имеет одно существенное отличие - под управлением MS-DOS выполняется сжатие целого первичного раздела или логического устройства, тогда как под NTFS можно упаковывать отдельные файлы и каталоги.

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

Самовосстановление NTFS

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

NTFS рассматривает каждую операцию, модифицирующую системные файлы на NTFS-томах, как транзакцию и сохраняет информацию о такой транзакции в протоколе. Начатая транзакция может быть либо полностью завершена (commit), либо откатывается (rollback). В последнем случае NTFS-том возвращается в состояние, предшествующее началу транзакции. Для того чтобы управлять транзакциями, NTFS записывает все операции, входящие в транзакцию, в файл протокола, перед тем как осуществить запись на диск. После того как транзакция завершена, все операции выполняются. Таким образом, под управлением NTFS не может быть незавершенных операций. В случае дисковых сбоев незавершенные операции просто отменяются.

Под управлением NTFS также выполняются операции, позволяющие «на лету» определять дефектные кластеры и отводить новые кластеры для файловых операций. Этот механизм называется cluster remapping.

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

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

Материал к обзорной лекции № 33

для студентов специальности

«Программное обеспечение информационных технологий»

доцента кафедры ИВТ, к.т.н. Ливак Е.Н.

СИСТЕМЫ УПРАВЛЕНИЯ ФАЙЛАМИ

Основные понятия, факты

Назначение. Особенности файловыхсистем FAT , VFAT , FAT 32, HPFS , NTFS . Файловые системы ОС UNIX (s5, ufs), ОС Linux Ext2FS.Системные области диска (раздела, тома). Принципы размещения файлов и хранения информации о расположении файлов. Организация каталогов. Ограничение доступа к файлам и каталогам.

Навыки и умения

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

Файловые системы. Структура файловой системы

Данные на диске хранятся в виде файлов. Файл - это именованная часть диска.

Для управления файлами предназначены системы управления файлами.

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

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

Система управления файлами является основной подсистемой в абсолютном большинстве современных ОС.

С помощью системы управления файлами

· связываются по данным все системные обрабатывающие программы;

· решаются проблемы централизованного распределения дискового пространства и управления данными;

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

В некоторых ОС может быть несколько систем управления файлами, что обеспечивает им возможность работать с несколькими файловыми системами.

Постараемся различать файловую систему и систему управления файлами.

Термин «файловая система» определяет принципы доступа к данным, организованным в файлы.

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

Итак, для работы с файлами, организованными в соответствии с некоторой файловой системой, для каждой ОС должна быть разработана соответствующая система управления файлами. Эта система УФ будет работать только в той ОС, для которой она создана.

Для семейства ОС Windows в основном используются файловые системы: VFAT , FAT 32, NTFS .

Рассмотрим структуру этих файловых систем.

В файловой системе FAT дисковое пространство любого логического диска делится на две области:

· системную область и

· область данных.

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

Системная область состоит из следующих компонентов:

· загрузочного сектора, содержащего загрузочную запись (boot record );

· зарезервированных секторов (их может и не быть);

· таблицыразмещенияфайлов (FAT, File Allocation Table);

· корневогокаталога (Root directory, ROOT).

Эти компоненты расположены на диске друг за другом.

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

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

Разбиение области данных на кластеры вместо использования секторов позволяет:

· уменьшить размер таблицы FAT ;

· уменьшить фрагментацию файлов;

· сокращается длина цепочек файла Þ ускоряется доступ к файлу.

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

В современных файловых системах (FAT 32, HPFS , NTFS ) эта проблема решается за счет ограничения размера кластера (максимум 4 Кбайта)

Картой области данных являетсяТ аблица размещения файлов (File Allocation Table - FAT) Каждый элемент таблицы FAT (12, 16 или 32 бит) соответствует одному кластеру диска и характеризует его состояние: свободен, занят или является сбойным кластером (bad cluster).

· Если кластер распределен какому-либо файлу (т.е., занят), то соответствующий элемент FAT содержит номер следующего кластера файла;

· последний кластер файла отмечается числом в диапазоне FF8h - FFFh (FFF8h - FFFFh);

· если кластер является свободным, он содержит нулевое значение 000h (0000h);

· кластер, непригодный для использования (сбойный), отмечается числом FF7h (FFF7h).

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

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

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

В связи с тем, что FAT используется очень интенсивно при доступе к диску, она обычно загружается в ОП (в буфера ввода/вывода или кэш) и остается там настолько долго, насколько это возможно.

Основной недостаток FAT - медленная работа с файлами. При создании файла работает правило - выделяется первый свободный кластер. Это ведет к фрагментации диска и сложным цепочкам файлов. Отсюда следует замедление работы с файлами.

Для просмотра и редактирования таблицы FAT можно использовать утилиту Disk Editor .

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

Корневой каталог описываетфайлы и другие каталоги. Элементом каталога является дескриптор (описатель) файла.

Дескриптор каждого файла и каталога включает его

· имя

· расширение

· дату создания или последней модификации

· время создания или последней модификации

· атрибуты (архивный, атрибут каталога, атрибут тома, системный, скрытый, только для чтения)

· длину файла (для каталога - 0)

· зарезервированное поле, которое не используется

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

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

Для просмотра и редактирования корневого каталога ROOT можно также использовать утилиту Disk Editor .

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

Файловая система VFAT (виртуальная FAT ) впервые появилась в Windows for Workgroups 3.11 и была предназначена для файлового ввода/вывода в защищенном режиме.

Используется эта файловая система в Windows 95.

Поддерживается она также и в Windows NT 4.

VFAT - это «родная» 32-разрядная файловая система Windows 95. Ее контролирует драйвер VFAT .VXD .

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

НО, элементы таблицы размещения файлов остаются 12- или 16-разрядными, поэтому на диске используется та же структура данных (FAT ). Т.е. формат таблицы VFAT такой же , как и формат FAT .

VFAT наряду с именами «8.3» поддерживает длинные имена файлов . (Часто говорят, что VFAT - это FAT с поддержкой длинных имен).

Основной недостаток VFAT - большие потери на кластеризацию при больших размерах логического диска и ограничения на сам размер логического диска.

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

Это новая реализация идеи использования таблицы FAT .

FAT 32 - это полностью самостоятельная 32-разрядная файловая система.

Впервые использовалась в Windows OSR 2 (OEM Service Release 2).

В настоящее время FAT 32 используется в Windows 98 и Windows ME .

Она содержит многочисленные усовершенствования и дополнения по сравнению с предыдущими реализациями FAT .

1. Намного эффективнее расходует дисковое пространство за счет того, что использует кластеры меньшего размера (4 Кб) - подсчитано, что экономится до 15%.

2. Имеет расширенную загрузочную запись, которая позволяет создавать копии критических структур данных Þ повышает устойчивость диска к нарушениям структур диска

3. Может использовать резервную копию FAT вместо стандартной.

4. Может перемещать корневой каталог, другими словами, корневой каталог может находиться в произвольном месте Þ снимает ограничение на размер корневого каталога (512 элементов, т.к. ROOT должен был занимать один кластер).

5. Усовершенствована структура корневого каталога

Появились дополнительные поля, например, время создания, дата создания, дата последнего доступа, контрольная сумма

По-прежнему для длинного имени файла используется несколько дескрипторов.

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

HPFS (High Performance File System ) - вы­сокопроизводительная файловая система.

HPFS впервые появилась в OS/2 1.2 и LAN Manager .

Перечислим основные особенности HPFS.

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

· Дисковое пространство в HPFS выделяется не кластерами (как в FAT ), а блоками. В современной реализации размер блока взят равным одному сектору, но в принципе он мог бы быть и иного размера. (По сути дела, блок - это и есть кластер, только кластер всегда равен одному сектору). Размещениефайлов в таких небольших блоках позволяет более эффектив­но использовать пространство диска , так как непроизводительные потери сво­бодного места составляют в среднем всего (полсектора) 256 байт на каждый файл. Вспомним, что чем больше размер кластера, тем больше места на диске расходуется напрас­но.

· Система HPFS стремится расположить файл в смежных блоках, или, если такой возможности нет, разместить его на диске таким образом, чтобы экстенты (фрагменты) файла физически были как можно ближе друг к другу. Такой подход существенно уменьшает время позиционирова­ния головок записи/чтения жесткого диска и время ожидания (задержка между установкой головки чтения/записи на нужную дорожку). Напомним, что в FAT файлу просто выделяется первый свободный кластер.

Экстенты (extent ) - фрагменты файла, располагающиеся в смежных секторах диска. Файл имеет по крайней мере один экстент, если он не фрагментирован, а в противномслучае - несколько экстентов.

· Используется метод сбалансированных двоичных деревьев для хранения и поиска ин­формации о местонахождении файлов (каталоги хранятся в центре диска, кроме того, предусмотрена автоматиче­ская сортировка каталогов), что существенно повышает производительность HPFS (в сравнении с FAT ).

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

Расширенные атрибуты (extended attributes , EAs ) позволяют хранить дополнительную информацию о файле. Например, каждому файлу может быть сопоставлено его уникаль­ное графическое изображение (значок), описание файла, коммента­рий, сведения о владельце файла и т. д.

C труктура раздела HPFS


В начале раздела с установленной HPFS расположено три управляющих блока:

· загрузочный блок (boot block ),

· дополнительный блок (super block ) и

· запас­ной (резервный) блок (spare block ).

Они занимают 18 секторов.

Все остальное дис­ковое пространство в HPFS разбито на части из смежных секторов - полосы (band - полоса, лента). Каждая полоса занимает на диске 8 Мбайт.

Каждая полоса и имеет свою собственную битовую карту распределе­ния секторов .Битовая карта показывает, какие секторы данной полосы за­няты, а какие - свободны. Каждому сектору полосы данных соответствует один бит в ее битовой карте. Если бит = 1, то сектор занят, если 0 - свободен.

Битовые карты двух полос располагаются на диске рядом, так же располагаются и сами полосы. То есть последовательность полос и карт выглядит как на рис.

Сравним с FAT . Там на весь диск только одна «битовая карта» (таблица FAT ). И для работы с ней приходится перемещать головки чте­ния/записи в среднем через половину диска.

Именно для того, чтобы сократить время позиционирования головок чтения/записи жесткого диска, в HPFS диск разбит на полосы.

Рассмотрим управляющие блоки .

Загрузочный блок (boot block )

Содержит имя тома, его серийный номер, блок парамет­ров BIOS и программу начальной загрузки.

Программа начальной загрузки на­ходит файл OS 2 LDR , считывает его в память и передает управление этой про­грамме загрузки ОС, которая, в свою очередь, загружает с диска в память ядро OS/2 - OS 2 KRNL . И уже OS 2 KRIML с помощью сведений из файла CONFIG . SYS за­гружает в память все остальные необходимые программные модули и блоки дан­ных.

Загрузочный блок располагается в секторах с 0 по 15.

Супер Блок (super block )

Содержит

· указатель на список битовых карт (bitmap block list ). В этом списке перечислены все блоки на диске, в которых расположены би­товые карты, используемые для обнаружения свободных секторов;

· указатель на список дефектных блоков (bad block list ). Когда система обнаруживает поврежденный блок, он вносится в этот список и для хранения информации больше не используется;

· указатель на группу каталогов (directory band ),

· указатель на файловый узел (F -node ) корневого каталога,

· дату последней проверки раздела програм­мой CHKDSK ;

· информацию о размере полосы (в текущей реализации HPFS - 8 Мбайт).

Super block размещается в 16 секторе.

Резервный блок (spare block)

Содержит

· указатель на карту аварийного замеще­ния (hotfix map или hotfix -areas );

· указатель на список свободных запасных бло­ков (directory emergency free block list );

· ряд системных флагов и дескрипторов.

Этот блок разме­щается в 17 секторе диска.

Резервный блок обеспечивает высокую отказоустойчивость файловой системы HPFS и позволяет восстанавливать поврежденные данные на диске.

Принцип размещения файлов

Экстенты (extent ) - фрагменты файла, располагающиеся в смежных секторах диска. Файл имеет по крайней мере один экстент, если он не фрагментирован, а в противномслучае - несколько экстентов.

Для сокращения времени позиционирования головок чтения/записи жесткого диска система HPFS стремится

1)расположить файл в смежных блоках;

2)если такой возможности нет, то разместить экстенты фрагментированного файла как можно ближе друг к другу,

Для этого HPFS использует статистику, а также старается условно резервировать хотя бы 4 килобайта места в конце файлов, которые растут.

Принципы хранения информации о расположении файлов

Каждый файл и каталог диска имеет свой файловый узел F-Node . Это структура, в которой содержится информация о располо­жении файла и о его расширенных атрибутах.

Каждый F-Node занимает один сектор и всегда располагается поблизости от своего файла или каталога (обычно - непосредственно перед файлом или ка­талогом). Объект F-Node содержит

· длину,

· первые 15 символов имени файла,

· специальную служебную информацию,

· статистику по доступу к файлу,

· расши­ренные атрибуты файла,

· список прав доступа (или только часть этого списка, если он очень большой); если расширен­ные атрибуты слишком велики для файлового узла, то в него записывается ука­затель на них.

· ассоциативную информацию о расположении и подчине­нии файла и т. д.

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

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

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

Структура и размещение каталогов

Для хранения каталогов используется полоса, находящаяся в центре диска .

Эта полоса называетсяdirectory band .

Если она полностью заполнена, HPFS начинает располагать каталоги файлов в других полосах.

Расположение этой информаци­онной структуры в середине диска значительно сокращает среднее время пози­ционирования головок чтения/записи.

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

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

В HPFS структура каталога представляет собой сбалансированное де­рево с записями, расположенными в алфавитном порядке.

Каждая за­пись, входящая в состав дерева, содержит

· атрибуты файла,

· указатель на соответствующий файловый узел,

· информацию о времени и дате создания фай­ла, времени и дате последнего обновления и обращения,

· длине данных, содержа­щих расширенные атрибуты,

· счетчик обращений к файлу,

· длине имени файла

· само имя,

· и другую информацию.

Файловая система HPFS при поиске файла в каталоге просматривает только не­обходимые ветви двоичного дерева. Такой метод во много раз эффек­тивнее, чем последовательное чтение всех записей в каталоге, что имеет место в системе FAT .

Размер каждого из блоков, в терминах которых выделяются каталоги в текущей реализации HPFS, равен 2 Кбайт. Размер записи, описывающей файл, зависит от размера имени файла. Если имя занимает 13 байтов (для формата 8.3), то блок из 2 Кбайт вмещает до 40 описателей файлов. Блоки связаны друг с другом по­средством списка.

Проблемы

При переименовании файлов может возникнуть так называемая перебаланси­ровка дерева. Создание файла, переименование или стирание может приводить к каскадированию блоков каталогов . Фактически, переименование может потер­петь неудачу из-за недостатка дискового пространства, даже если файл непо­средственно в размерах не увеличился. Во избежание этого «бедствия» HPFS поддерживает небольшой пул свободных блоков, которые могут использовать­ся при «аварии». Эта операция может потребовать выделения дополнительных блоков на заполненном диске. Указатель на этот пул свободных блоков сохраня­ется в SpareBlock ,

Принципы размещения файлов и каталогов на диске в HPFS :

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

· каталоги размещаются в середине дискового пространства;

· каталоги хранятся в виде бинарного сбалансированного дерева с записями, расположенными в алфавитном порядке.

Надежность хранения данных в HPFS

Любая файловая система должна обладать средствами исправления ошибок, возникаю­щих при записи информации на диск. Система HPFS для этого использует меха­низм аварийного замещения ( hotfix ).

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

Эта карта представляет собой просто пары двойных слов, каждое из которых является 32-битным номером сектора.

Первый номер указывает на дефектный сек­тор, а второй - на тот сектор среди имеющихся запасных секторов, который был выбран для его замены.

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

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

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

Файловая система NTFS (New Technology File System) содержит ряд значительных усовер­шенствований и изменений, существенно отличающих ее от других файловых систем.

Заметим, что за редкими исключениями, с разделами NTFS можно работать напрямую только из Windows NT , хотя и имеются для ряда ОС соответствующие реализа­ции систем управления файлами для чтения файлов из томов NTFS.

Однако полноценных реализаций для работы с NTFS вне системы Windows NT пока нет.

NTFS не поддерживается в широко распространенных ОС Windows 98 и Windows Millennium Edition .

Основные особенности NT FS

· работа на дисках большого объема происходит эффективно (намного эффективнее, чем в FAT );

· имеются средства для ограничения доступа к файлам и катало­гам Þ раз­делы NTFS обеспечивают локальную безопасность как файлов, так и каталогов;

· введен механизм транзакций, при котором осуществляется журналирование файловых операций Þ существенное увеличение надежности;

· сняты многие ограничения на максимальное количество дисковых секто­ров и/или кластеров;

· имя файла в NTFS, в отличие от файловых систем FAT и HPFS , может содержать любые символы, включая полный набор национальных алфавитов, так как данные представлены в Unicode - 16-битном представлении, которое дает 65535 разных символов. Максимальная длина имени файла в NTFS - 255 символов.

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

Структура тома с файловой системой NTFS

Раздел NTFS называется томом (volume ). Максимально возможные размеры тома (и размеры файла) составляют 16 Эбайт (экзабайт 2**64).

Как и другие системы, NTFS делит дисковое пространство тома на кластеры - блоки данных, адресуемые как единицы данных. NTFS поддержива­ет размеры кластеров от 512 байт до 64 Кбайт; стандартом же считается кластер размером 2 или 4 Кбайт.

Все дисковое пространство в NTFS делится на две неравные части.


Первые 12 % диска отводятся под так называемую MFT-зону - пространство, которое может занимать, увеличиваясь в размере, главный служебный метафайл MFT .

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

Остальные 88 % тома представляют собой обычное пространство для хранения файлов.

MFT (master file table - общая таблица файлов) по сути - это каталог всех остальных файлов диска, в том числе и себя самого. Он предназначен для определения расположения файлов.

MFT состоит из записей фиксированного размера. Размер записи MFT (минимум 1 Кб и максимум 4 Кб) оп­ределяется во время форматирования тома.

Каждая запись соответ­ствует какому-либо файлу.

Первые 16 записей но­сят служебный характер и недоступны операционной системе - они называются метафайлами, причем самый первый метафайл - сам MFT.

Эти первые 16 эле­ментов MFT - единственная часть диска, имеющая строго фиксированное поло­жение. Копия этих же 16 записей хранится в середине тома для надежности.

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

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

Имя метафайла

Назначение метафайла

$MFT

Сам Master File Table

$MFTmirr

Копия первых 16 записей MFT, размещенная посередине тома

$LogFile

Файл поддержки операций журналирования

$Volume

Служебная информация - метка тома, версия файловой системы и т. д.

$AttrDef

Список стандартных атрибутов файлов на томе

Корневой каталог

$Bitmap

Карта свободного места тома

$Boot

Загрузочный сектор (если раздел загрузочный)

$Quota

Файл, в котором записаны права пользователей на использование дискового пространства (этот файл начал работать лишь в Windows 2000 с системой NTFS 5.0)

$Upcase

Файл - таблица соответствия заглавных и прописных букв в именах файлов. В NTFS имена файлов записываются в Unicode (что составляет 65 тысяч различных символов) и искать большие и малые эквиваленты в данном случае - нетривиальная задача

В соответствующей записи MFT хранится вся информация о файле:

· имя файла,

· размер;

· атрибуты файла;

· положение на диске отдельных фрагментов и т. д.

Если для информации не хватает одной записи MFT, то используется несколько записей, причем не обязательно идущих подряд.

Если файл имеет не очень большой размер, то данные файла хранятся прямо в MFT, в оставшемся от основных данных месте в пределах одной записи MFT.

Файл в томе с NTFS идентифицируется так называемой файловой ссылкой (File Reference ), которая представляется как 64-разрядное число.

· номера файла, который соответствует номеру записи в MFT,

· и номера последовательности. Этот номер увеличивается всякий раз, когда данный номер в MFT используется повторно, что позволяет файловой системе NTFS выполнять внутренние проверки целостности.

Каждый файл в NTFS представлен с помощью потоков (streams ), то есть у него нет как таковых «просто данных», а есть потоки.

Один из потоков - это и есть данные файла.

Большинство атрибутов файла - это тоже потоки.

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

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

Стандартные атрибуты для файлов и каталогов в томе NTFS имеют фиксиро­ванные имена и коды типа.

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

Файл каталога разделен на блоки, каждый из которых содержит

· имя файла,

· базовые атрибуты и

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

Внутренняя структура каталога представляет собой бинарное дерево, как в HPFS.

Количество файлов в корневом и некорневом каталогах не ограни­чено.

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

NTFS обеспечивает безопасность на уровне файлов; это означает, что права доступа к томам, каталогам и файлам могут зависеть от учетной записи пользователя и тех групп, к которым он принадлежит. Каждый раз, когда пользователь обращается к объекту файловой системы, его права доступа проверяются по списку разреше­ний данного объекта. Если пользователь обладает достаточным уровнем прав, его запрос удовлетворяется; в противном случае запрос отклоняется. Эта модель безопасности применяется как при локальной регистрации пользователей на компьютерах с NT , так и при удаленных сетевых запросах.

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

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

Основной недостаток файловой системы NTFS - служебные данные занимают много места (например, каждый элемент каталога занимает 2 Кбайт) - для малых раз­делов служебные данные могут занимать до 25% объема носителя.

Þ система NTFS не может использоваться для форматирования флоппи-дисков. Не стоит пользоваться ею для форматирования разделов объемом менее 100 Мбайт.

Файловая система ОС UNIX

В мире UNIX существует несколько разных видов файловых систем со своей структурой внешней памяти. Наиболее известны традиционная файловая система UNIX System V (s5) и файловая система семейства UNIX BSD (ufs).

Рассмотрим s 5.

Файл в системе UNIX представляет собой множество символов с произвольным доступом.

Файл имеет такую структуру, которую налагает на него пользователь.

Файловая система Unix, это иерархическая, многопользовательская файловая система.

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

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

Структура диска

Диск разделен на блоки. Размер блока данных определяется при форматировании файловой системы командой mkfs и может быть установлен 512, 1024, 2048, 4096 или 8192 байтов.

Считаем по 512 байт (размер сектора).

Дисковое пространство делится на следующие области (см. рис.):

· загрузочный блок;

· управляющий суперблок;

· массив i -узлов;

· область для хранения содержимого (данных) файлов;

· совокупность свободных блоков (связанных в список);

Блокначальной загрузки

Суперблок

i - узел

. . .

i - узел

Замечание. Для файловой системы UFS - все это для группы цилиндров повторяется (кроме Boot -блока) + выделена специальная область для описания группы цилиндров

Блок начальной загрузки

Блок размещен в блоке №0. (Вспомним, что размещение этого блока в нулевом блоке системного устройства определяется аппаратурой, так как аппаратной загрузчик всегда обращается к нулевому блоку системного устройства. Это последний компонент файловой системы, который зависит от аппаратуры.)

Boot -блок содержит программу раскрутки, которая служит для первоначального запуска ОС UNIX . В файловых системах s 5 реально используется boot -блок только корневой файловой системы. В дополнительных файловых системах эта область присутствует, но не используется.

Суперблок

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

В частности суперблок содержит следующую информацию

· количество i -узлов (индексных дескрипторов);

· размер раздела???;

· список свободных блоков;

· список свободных i -узлов;

· и другое.

Обратим внимание! Свободное пространство на диске образует связанный список свободных блоков . Этот список хранится в суперблоке.

Элементами списка являются массивы из 50 элементов(если блок = 512 байт, то элемент = 16 бит):

· в элементах массива №№1-48 записаны номера свободных блоков пространства блоков файлов с 2 до 49.

· в №0 элементе содержится указатель на продолжение списка, а

· в последнем элементе (№49) содержится указатель на свободный элемент в массиве.

Если какому-то процессу для расширения файла требуется свободный блок, то система по указателю (на свободный элемент) выбирает элемент массива, и блок с №, хранящимся в данном элементе, предоставляется файлу. Если происходит сокращение файла, то высвободившиеся номера добавляются в массив свободных блоков и корректируется указатель на свободный элемент.

Так как размер массива - 50 элементов, то возможны две критические ситуации:

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

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

Список свободных i -узлов . Это буфер, состоящий из 100 элементов. В нем находится информация о 100 номерах i -узлов, которые свободны в данный момент.

Суперблок всегда находится в ОЗУ

Þ все операции (освобождение и занятие блоков и i -узлов происходят в ОЗУ Þ минимизация обменов с диском.

Но! Если содержимое суперблока не будет записано на диск и выключено питание, то возникнут проблемы (несоответствие реального состояния файловой системы и содержимого суперблока). Но это уже требование к надежности аппаратуры системы.

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

Область индексных дескрипторов

Это массив описаний файлов, называемых i -узлами (i - node ) .(64-х байтные?)

Каждый индексный описатель (i -узел) файла содержит:

· Тип файла (файл/каталог/специальный файл/fifo/socket)

· Атрибуты (права доступа) - 10

· Идентификатор владельца файла

· Идентификатор группы-владельца файла

· Время создания файла

· Время модификации файла

· Время последнего доступа к файлу

· Длина файла

· Количество ссылок к данному i -узлу из различных каталогов

· Адреса блоков файла

! Обратите внимание . Здесь нет имени файла

Рассмотрим подробнее как организована адресация блоков , в которых размещен файл. Итак, в поле с адресами находятся номера первых 10 блоков файла.

Если файл превышает десять блоков, то начинает работать следующий механизм: 11-й элемент поля содержит номер блока, в котором размещены 128(256) ссылок на блоки данного файла. В том случае, если файл еще больше - то используется 12й элемент поля- он содержит номер блока, в котором содержится 128(256) номеров блоков, где каждый блок содержит 128(256) номеров блоков файловой системы. А если файл еще больше, то используется 13 элемент - где глубина вложенности списка увеличена еще на единицу.

Таким образом мы можем получить файл размером (10+128+128 2 +128 3)*512.

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

Адрес 1-го блока файла

Адрес 2-го блока файла

Адрес 10-го блока файла

Адрес блока косвенной адресации (блока с 256 адресами блоков)

Адрес блока 2-й косвенной адресации (блока с 256 адресами блоков с адресами)

Адрес блока 3-й косвенной адресации (блока с адресами блоков с адресами блоков с адресами)

Защита файла

Теперь обратим внимание на идентификаторы владельца и группы и биты защиты.

В ОС Unix используется трехуровневая иерархия пользователей :

Первый уровень - все пользователи.

Второй уровень - группы пользователей. (Все пользователи подразделены на группы.

Третий уровень - конкретный пользователь (Группы состоят из реальных пользователей). В связи с этой трехуровневой организацией пользователей каждый файл обладает тремя атрибутами:

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

2) Защита доступа к файлу. Доступ к каждому файлу ограничивается по трем категориям:

· права владельца (что может делать владелец с этим файлом, в общем случае - не обязательно все, что угодно);

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

· все остальные пользователи системы;

По этим трем категориям регламентируются три действия: чтение из файла, запись в файл и исполнение файла (в мнемонике системы R,W,X, соответственно). В каждом файле по этим трем категориям определено - какой пользователь может читать, какой писать, а кто может запускать его в качестве процесса.

Организация каталогов

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

Элемент каталога состоит из двух полей:

1)номер i -узла (порядковый номер в массиве i -узлов)и

2)имя файла:

Каждый каталог содержит два специальных имени: ‘.’ - сам каталог; ‘..’ - родительский каталог.

(Для корневого каталога родитель ссылается на него же самого.)

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

Файлы существуют независимо от элементов каталогов, а связи в каталогах указывают действительно на физические файлы. Файл «исчезает» когда удаляется последняя связь, указывающая на него.

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

1. находит это имя в каталоге, содержащем файл,

2. получает номер i -узла файла,

3. по номеру находит i- узел в области i-узлов,

4. из i-узла получает адреса блоков, в которых расположены данные файла,

5. по адресам блоков считывает блоки из области данных.

Структура дискового раздела в EXT 2 FS

Все пространство раздела делится на блоки. Блок может иметь размер от 1, 2 или 4 килобайта. Блок является адресуемой единицей дискового пространства.

Блоки, в свою область объединяются в группы блоков. Группы блоков в файловой системе и блоки внутри группы нумеруются последовательно, начиная с 1. Первый блок на диске имеет номер 1 и принадлежит группе с номером 1. Общее число блоков на диске (в разделе диска) является делителем объема диска, выраженного в секторах. А число групп блоков не обязано делить число блоков, потому что последняя группа блоков может быть не полной. Начало каждой группы блоков имеет адрес, который может быть получен как ((номер группы - 1)* (число блоков в группе)).

Каждая группа блоков имеет одинаковое строение. Ее структура представлена в таблице.

Первый элемент этой структуры (суперблок) - одинаков для всех групп, а все остальные - индивидуальны для каждой группы. Суперблок хранится в первом блоке каждой группы блоков (за исключением группы 1, в которой в первом блоке расположена загрузочная запись). Суперблок является начальной точкой файловой системы. Он имеет размер 1024 байта и всегда располагается по смещению 1024 байта от начала файловой системы. Наличие нескольких копий суперблока объясняется чрезвычайной важностью этого элемента файловой системы. Дубликаты суперблока используются при восстановлении файловой системы после сбоев.

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

Вслед за суперблоком расположено описание группы блоков (Group Descriptors). Это описание содержит:

Адрес блока, содержащего битовую карту блоков (block bitmap) данной группы;

Адрес блока, содержащего битовую карту индексных дескрипторов (inode bitmap) данной группы;

Адрес блока, содержащего таблицу индексных дескрипторов (inode table) данной группы;

Счетчик числа свободных блоков в данной группе;

Число свободных индексных дескрипторов в данной группе;

Число индексных дескрипторов в данной группе, которые являются каталогами

и другие данные.

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

Файловая система Ext 2 характеризуется:

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

Внутреннее представление файлов

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

Индексные дескрипторы файлов

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

Индексный дескриптор файла содержит следующую информацию:

- Тип и права доступа к данному файлу.

Идентификатор владельца файла (Owner Uid).

Размер файла в байтах.

Время последнего обращения к файлу (Access time).

Время создания файла.

Время последней модификации файла.

Время удаления файла.

Идентификатор группы (GID).

Счетчик числа связей (Links count ).

Число блоков, занимаемых файлом.

Флагифайла (File flags)

Зарезервировано для ОС

Указатели на блоки, в которых записаны данные файла (пример прямой и косвенной адресации на рис.1)

Версия файла (для NFS)

ACL файла

ACL каталога

Адресфрагмента (Fragment address)

Номерфрагмента (Fragment number)

Размер фрагмента (Fragment size )

Каталоги

Каталоги являются файлами.

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

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

Дополнительные возможности EXT2 FS

В дополнение к стандаpтным возможностям Unix, EXT2fs пpедоставляет некотоpые дополнительные возможности, обычно не поддеpживаемые файловыми системами Unix.

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

Во вpемя монтиpования системы могут быть установлены некотоpые особенности, связанные с файловыми атpибутами. Опция mount позволяет администpатоpу выбpать особенности создания файлов. В файловой системе с особенностями BSD, файлы создаются с тем же идентификатоpом гpуппы, как и у pодительского каталога. Особенности System V несколько сложнее. Если у каталога бит setgid установен, то создаваемые файлы наседуют идентификатоp гpуппы этого каталога, а подкаталоги наследуют идентификатоp гpуппы и бит setgid. В пpотивном случае, файлы и каталоги создаются с основным идентификатоpом гpуппы вызывающего пpоцесса.

В системе EXT2fs может использоваться синхpонная модификация данных, подобная системе BSD. Опция mount позволяет администpатоpу указывать чтобы все данные (индексные дескpиптоpы, блоки битов, косвенные блоки и блоки каталогов) записывались на диск синхpонно пpи их модификации. Это может быть использовано для достижения высокой потности записи инфоpмации, но также пpиводит к ухудшению пpоизводительности. В действительности, эта функция обычно не используется, так как кpоме ухудшения пpоизводительности, это может пpивести к потеpе данных пользователей, котоpые не помечаются пpи пpовеpке файловой системы.

EXT2fs позволяет пpи создании файловой системы выбpать pазмеp логического блока. Он может быть pазмеpом 1024, 2048 или 4096 байт. Использование блоков большого объема пpиводит к ускоpению опеpаций ввода/вывода (так как уменьшается количество запpосов к диску), и, следовательно, к меньшему пеpемещению головок. С дpугой стоpоны, использование блоков большого объема пpиводит к потеpе дискового пpостpанства. Обычно последний блок файла используется не полностью для хpанения инфоpмации, поэтому с увеличением объема блока, повышается объем теpяемого дискового пpостpанства.

EXT2fs позволяет использовать ускоpенные символические ссылки. Пpи пpименении таких ссылок, блоки данных файловой системы не используются. Имя файла назначения хpанится не в блоке данных, а в самом индексном дескpиптоpе. Такая стpуктуpа позволяет сохpанить дисковое пpостpанство и ускоpить обpаботку символических ссылок. Конечно, пpостpанство, заpезеpвиpованное под дескpиптоp, огpаничено, поэтому не каждая ссылка может быть пpедставлена как ускоpенная. Максимальная длина имени файла в ускоpенной ссылке pавна 60 символам. В ближайшем будующем планиpуется pасшиpить эту схему для файлов небольшого объема.

EXT2fs следит за состоянием файловой системы. Ядpо использует отдельное поле в супеpблоке для индикации состояния файловой системы. Если файловая система смонтиpована в pежиме read/write, то ее состояние устанавливается как "Not Clean". Если же она демонтиpована или смонтиpована заново в pежиме read-only, то ее состояние устанавливается в "Clean". Во вpемя загpузки системы и пpовеpке состояния файловой системы, эта инфоpмация используется для опpеделения необходимости пpовеpки файловой системы. Ядpо также помещает в это поле некотоpые ошибки. Пpи опpеделении ядpом несоответствия, файловая система помечается как "Erroneous". Пpогpамма пpовеpки файловой системы тестиpует эту инфоpмацию для пpовеpки системы, даже если ее состояние является в действительности "Clean".

Длительное игноpиpование тестиpования файловой системы иногда может пpивести к некотоpым тpудностям, поэтому EXT2fs включает в себя два метода для pегуляpной пpовеpки системы. В супеpблоке содеpжится счетчик монтиpования системы. Этот счетчик увеличивается каждый pаз, когда система монтиpуется в pежиме read/write. Если его значение достигает максимального (оно также хpанится в супеpблоке), то пpогpамма тестиpования файловой системы запускает ее пpовеpку, даже если ее состояние является "Clean". Последнее вpемя пpовеpки и максимальный интеpвал между пpовеpками также хpанится в супеpблоке. Когда же достигается максимальный интеpвал между пpовеpками, то состояние файловой системы игноpиpуется и запускается ее пpовеpка.

Оптимизация пpоизводительности

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

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

Система EXT2fs также содеpжит большое количество оптимизаций pазмещения инфоpмации. Гpуппы блоков используются для объединения соответствующих индексных дескpиптоpов и блоков данных. Ядpо всегда пытается pазместить блоки данных одного файла в одной гpуппе, так же как и его дескpиптоp. Это пpедназначено для уменьшения пеpемещения головок пpивода пpи считывании дескpиптоpа и соответствующих ему блоков данных.

Пpи записи данных в файл, EXT2fs заpанее pазмещает до 8 смежных блоков пpи pазмещении нового блока. Такой метод позволяет достичь высокой пpоизводительности пpи сильной загpуженности системы. Это также позволяет pазмещать смежные блоки для файлов, что укоpяет их последующее чтение.

Каждый из нас хотя бы раз в жизни форматировал флешку, SD-карту, внешний или внутренний жесткий диск и наверняка помнит, что перед началом форматирования любого из вышеперечисленных устройств операционная система Windows всегда задает вопрос - в какую файловую систему вы хотите отформатировать ваше устройство: FAT32, NTFS или exFAT?

Разумеется, большинство пользователей не знают разницы между ними, и обычно выбирают тот вариант, который установлен по умолчанию. А всё потому что Windows, задавая этот вопрос, никак не объясняет разницу между ними. Мы же в этой статье постараемся понятным языком вам её объяснить и рассказать, чем отличается файловая система FAT32 от NTFS и exFAT.

FAT32 является самой старой из рассматриваемых файловых систем и чаще всего используется на переносных флеш-накопителях - флешках или SD-картах.

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

exFAT является более современным аналогом устаревшей системы FAT32 и её поддерживает большее количество устройств, чем NTFS, но всё ещё не так много, как "классическую" FAT32.

Теперь давайте рассмотрим подробнее каждую из этих файловых систем.

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

FAT32 является самой старой файловой системой из рассматриваемых в этой статье. Она начала активно использоваться начиная с Windows 95 и пришла на замену еще более устаревшей системе - FAT16.

Большой возраст этой файловой системы имеет свои преимущества и недостатки.

К преимуществам в данном случае можно отнести тот факт, что FAT32 стала своеобразным стандартом и используется до сих пор во всех сменных носителях по умолчанию. Если вы сегодня купите флешку или SD-карту - "с завода" на ней будет установлена файловая система FAT32. Сделано это в первую очередь для того, что бы ваш сменный носитель могли поддерживать не только современные компьютера и гаджета, но и старые устройства и игровые консоли, которые имеют USB порт и умеют работать только с файловой системой FAT32.

Однако, в связи с возрастом этой системы, она имеет и некоторые недостатки, основным из которых является ограничение по размеру файла и всего тома. Каждый отдельный файл в этой файловой системе не может иметь размер больше 4 гигабайт, а весь раздел с файловой системой FAT32 не может быть более 8 терабайт.

И если со вторым минусом ещё вполне можно смириться (пока что мало кто использует накопители размером более 8Тб), то ограничение на размер файла является достаточно серьезным минусом - большинство видео в высоком качестве сейчас уже не укладываются в размер 4Гб, особенно если они в современном формате 4K.

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

Совместимость FAT32

Устройства с файловой системой FAT32 являются наиболее универсальными и совместимы со всеми версиями операционных систем Windows, Mac OS, Linux, любыми игровыми консолями и в общем практически всем, что имеет USB порт.

Ограничения FAT32

Основным минусом этой файловой системы являются ограничения на размер файла и тома - максимальный размер файла не может превышать 4 GB, а максимальный размер раздела ограничен 8 TB.

Применение FAT32

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

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

NTFS - это более современная и технологичная файловая система, о чем говорит даже расшифровка аббревиатуры её названия -"new technology file system". Больше всего её любит операционная система Windows, что в общем и не удивительно - ведь и то, и другое, разработано компанией Microsoft.

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

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

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

К несчастью, NTFS не совместима с большинством других операционных систем, так как она была разработана под требования ОС Windows. С ней отлично работают все версии операционной системы от Microsoft начиная с XP и заканчивая последней на сегодняшний день Windows 10, но вот другие ОС имеют значительные ограничения при работе с ней.

К примеру, Mac OS может только считывать данные с дисков с файловой системой NTFS, но не может записывать на них. Некоторые редкие дистрибутивы линукса могут иметь возможность записи на диски с NTFS, но большинство всё же ограничены лишь чтением информации. Ни одна из версии Playstation не может работать с NTFS, так же как и Xbox 360 от Microsoft, и лишь новая Xbox One поддерживает эту файловую систему.

Совместимость NTFS

Эта файловая система отлично работает со всеми последними версиями операционной системы Windows начиная с XP, имеет ограничения на запись в Mac OS и Linux, и не работает с большинством других устройств, за исключением разве что Xbox One.

Ограничения NTFS

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

Применение NTFS

Использование этой файловой системы разумно только на жестких дисках и SSD, на которых установлена операционная система Windows, так как только лишь с ней этот формат раскрывает все свои преимущества.

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

exFAT была впервые представлена в 2008 году и является наиболее современной из рассматриваемых в этой статье файловых систем, её поддержка была добавлена в Windows начиная с версии XP при помощи обновлений ОС.

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

Также exFAT обладает лучшей совместимостью с различными операционными системами, чем NTFS, и устройства с ней отлично читаются и перезаписываются как на Windows и Mac OS, так и на Linux (при условии установки некоторого программного обеспечения).

Так как exFAT поддерживается операционной системой Mac OS по умолчанию, то вероятно она будет поддерживаться и большинством других современных девайсов, с которым работают устройства от Apple, например, цифровыми камерами.

Современные версии игровых консолей, такие как Xbox One и Playstation 4, также поддерживают устройства с файловой системой exFAT, в отличие от их предыдущих версий (Xbox 360 и Playstation 3).

Совместимость exFAT

exFAT отлично работает со всеми современными версиями Windows (начиная с XP) и Mac OS. Для работы с Linux потребуется установка дополнительного программного обеспечения. Эту файловую систему поддерживает намного больше различных устройств, чем NTFS, однако некоторые из них (в основном старые версии) всё еще могут работать только с FAT32.

Ограничения exFAT

Также, как и в случае с NTFS, реалистичных ограничений на размер файла или раздела в системе exFAT пока что нет.

Применение exFAT

Эта файловая система отлично подходит для использования на различных съемных носителях, размер файлов на которых может превышать 4 GB (внешние жесткие диски, флешки большого объема). Если все устройства, с которыми вы работаете, являются современными, вы вполне можете отказаться от FAT32 на съемных накопителях в пользу exFAT.

Подводя итог можно сделать следующие выводы: NTFS отлично подходит для системного жесткого диска с ОС Windows, exFAT лучше использовать на съемных носителях информации, а FAT32 стоит использовать лишь в том случае, если вы хотите добиться максимальной совместимости со всем разнообразием ваших устройств.

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

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

Данная статья адресована тем, кто желает восполнить этот пробел в своих знаниях.

Файловая структура FAT: принципы и назначение

Файловая структура или File system была разработана в 70-х годах прошлого столетия компанией Microsoft и представляла собой определенный порядок организации пространства для хранения и доступа к данным на компьютерах и других цифровых устройствах.

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

Структурно вся область дискового пространства поделена на кластеры, как лист бумаги в клетку. Каждая клетка – это блок, размер которого задается при форматировании и должен быть кратным 2. Минимальный размер может быть 512 байт (у флешки), для жесткого диска он составляет 32 Кб. Один файл может занимать несколько таких кластеров. Образно можно представить дисковое пространство в виде тетради, где кластер – это буква, файл – слово, а файловая структура – оглавление тетради.

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

  1. Свободный, готовый к записи данных.
  2. Занятый, который хранит часть информации и имеющий в метке данные о следующем кластере в цепочке, при этом последний помечается особой меткой.
  3. BAD-блок – кластер с ошибками, который стане недоступен после форматирования.

Размер метки определяется видом файловой структуры: для FAT32 он равен 32 байтам.

Вся файловая система состоит из следующих частей:

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

Всего существует три типа файловой системы FAT: FAT12, FAT16 и FAT32. На смену FAT пришла NTFS, а exFAT является расширенной версией FAT32 и используется в основном для флеш-накопителей.

Достоинства и недостатки файловых структур FAT32, NTFS и exFAT

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

FAT32

Среди трех рассматриваемых файловых структур FAT32 является самой старшей. Она пришла на смену FAT16 и до недавнего времени была наиболее прогрессивной. Выход FAT32 приурочили к выпуску операционной системы Windows 95 OSR2 в 1996 году. Главные отличительные особенности: 32-разрядная адресация кластеров и ограничения в размерах: файла не более 4 Гб и тома в 128 Гб.

Достоинства

Несмотря на некоторую моральную отсталость, FAT32 обладает рядом преимуществ перед другими файловыми системами. Ее главная привлекательность - совместимость и универсальность. FAT32 работает со всеми версиями операционных систем, включая Windows (сравнение всех версий), Linux и MacOS, подходит к любыми игровым консолям и прочим гаджетам с USB портом. Сегодня она используется во всех внешних накопителях (флешках, CD-картах) по умолчанию, так как многие старые устройства: ПК, ноутбуки, приставки с USB-входом могут работать только с FAT32.

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

Недостатки

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

Размер файла не должен превышать 4 ГБ, таким образом, максимальный размер диска при размере кластера для таблицы размещения файлов в 32 КБ будет около 8 ТБ.

При форматировании диска средством ScanDisk, являющимся 16-разрядной программой, с учетом самих таблиц FAT и при максимальном размере кластера в 32 КБ размер тома ограничивается 128-ю гигабайтами.

С учетом того, что не многие компьютерные устройства оснащены винчестером объемом более 8 Тб, этот недостаток не будет ощутимым для большинства пользователей. Однако тот момент, что FAT32 работает с файлами размером до 4 Гб, является существенным минусом, так как большинство качественных видеофайлов современного формата 4К сегодня имеют размер свыше этих 4 Гб, а значит, не совместимы с данной файловой системой.

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

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

Главное применение файловой системы FAT32 сегодня – это переносные флешки и SD-карты (особенности), которые содержат не много файлов и совместимы с разнообразными цифровыми устройствами.

NTFS

Данная файловая система была разработана компанией Microsoft в 1993 году и представлена вместе версией Windows NT 3.1. В самом названии new technology file system , что означает файловая система новой технологии , заложена ее прогрессивная сущность.

После форматирования диска в системе NTFS он делится на три зоны:

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

Каждый из метафайлов ответственен за определённую область. Например, LogFile - это файл журналирования, в котором выполняется запись всех операций в журнал, Boot – загрузочный сектор, Bitmap контролирует свободное место в разделе и т.п. Такая структура надежно защищает файлы от любых сбоев, будь то зависания ОС или отключение электричества.

Достоинства

В отличие от FAT32 в данной файловой структуре практически отсутствуют ограничения в объеме файлов и каталогов. Размер кластера может варьироваться от 512 байт до 64 Кб, оптимальным считается размер в 4 Кб.

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

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

Недостатки

Главным минусом системы NTFS является несовместимость со всеми операционными системами ниже Windows NT, а также ограничения в совместимости с прочими ОС. Так, Mac OS читает файлы с дисков NTFS, но не может выполнять их запись, такая же ситуация с совместимостью файлов Linux. Самые популярные игровые консоли Playstation и Xbox 360 не работают с NTFS, только Xbox One может с ней взаимодействовать.

Среди недостатков NTFS можно назвать также высокие требования к объему оперативной памяти, более низкая скорость по сравнению с FAT32 и трудности управления каталогами среднего объема.

Таким образом, целесообразнее использовать файловую структуру NTFS на жестких дисках, в том числе и SSD под управлением последних версий Windows, начиная с NT.

exFAT

Эта файловая система является последней из рассматриваемых по времени выпуска. Она появилась в 2008 году с очередными обновлениями к Windows XP и является, по сути, расширенной версией FAT32.

Главная цель разработчиков – создать производительную, удобную и универсальную файловую структуру для переносных накопительных устройств: флешек, SD-карт и съемных жестких дисков.

Достоинства:

  • Простая организация без специализированных особенностей и ограничений в размерах файлов и раздела.
  • Отличная совместимость со всеми ОС Windows, а также Mac OS и Linux. В последнем варианте необходима установка дополнительного софта.
  • Поддержка со стороны всех современных яблочных девайсов, а также игровых приставок Xbox One и Playstation 4.

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

Наиболее оптимальная файловая структура

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

  • для компьютерных устройств с операционной системой выше Windows NT целесообразнее будет форматирование жесткого диска в системе NTFS;
  • для старых устройств, а также с целью совместимости с разными современными цифровыми гаджетами, оптимальным вариантом станет выбор FAT32;
  • для любых съемных носителей идеальной будет применение системы

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

Эта статья посвящена файловым системам . При установке ОС Windows предлагает выбрать файловую систему на разделе, где она будет устанавливаться, и пользователи ПК должны выбирать из двух вариантов FAT или NTFS .

В большинстве случаев пользователи довольствуются знанием, что NTFS «лучше» , и выбирают этот вариант.

Однако иногда им становится интересно, а чем именно лучше?

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

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

Файловая система – это способ организации данных на носителях информации. Файловая система определяет, где и каким образом на носителе будут записаны файлы, и предоставляет операционной системе доступ к этим файлам.

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

С точки зрения ОС, жесткий диск – это набор кластеров.

Кластер – это область диска определенного размера для хранения данных. Минимальный размер кластера – 512 байт. Поскольку используется двоичная система счисления, то размеры кластеров кратны степени двойки.

Пользователь может образно представить себе жесткий диск как блокнот в клеточку. Одна клеточка на странице – это один кластер. Файловая система – это содержание блокнота, а файл – слово.

Для жестких дисков в ПК в данный момент наиболее распространены две файловые системы: FAT или NTFS . Сначала появилась FAT (FAT16) , затем FAT32 , а потом NTFS .

FAT (FAT16) это аббревиатура от File Allocation Table (в переводе Таблица Размещения Файлов ).

Структура FAT была разработана Биллом Гейтсом и Марком МакДональдом в 1977 году. Использовалась в качестве основной файловой системы в операционных системах DOS и Microsoft Windows (до версии Windows ME).

Существует четыре версии FAT - FAT12 , FAT16 , FAT32 и exFAT . Они отличаются количеством бит, отведённых для хранения номера кластера.

FAT12 применяется в основном для дискет, FAT16 - для дисков малого объёма, а новая exFAT преимущественно для флэш-накопителей. Максимальный размер кластера, который поддерживается в FAT, составляет 64Кб. ()

FAT16 впервые представлена в ноябре 1987 года. Индекс 16 в названии показывает, что для номера кластера используется 16 бит. Вследствие этого максимальный объем раздела диска (тома), который может поддерживать эта система, равен 4Гб.

Позже, с развитием технологий и появлением дисков объемом более 4Гб, появилась файловая система FAT32 . Она использует 32-разрядную адресацию кластеров и появилась вместе с Windows 95 OSR2 в августе 1996 года. FAT32 ограничена в размере тома в 128Гб. Также эта система может поддерживать длинные имена файлов. ().

NTFS (аббревиатура New Technology File System - Файловая Система Новой Технологии ) - стандартная файловая система для семейства операционных систем Microsoft Windows NT.

Представлена 27 июля 1993 вместе с Windows NT 3.1. NTFS разработана на основе файловой системы HPFS (аббревиатура High Performance File System - Высокопроизводительная Файловая Система ), создававшейся Microsoft совместно с IBM для операционной системы OS/2.

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

Спецификации файловой системы являются закрытыми. Обычно размер кластера равен 4Кб. На практике не рекомендуют создавать тома более 2ТБ. Жесткие диски только достигли таких размеров, возможно в будущем нас ждет новая файловая система. ().

Во время установки ОС Windows ХР предлагается отформатировать диск в системе FAT или NTFS . При этом имеется в виду FAT32 .

Все файловые системы построены на принципе: один кластер – один файл. Т.е. один кластер хранит данные только одного файла.

Основное отличие для обычного пользователя между этими системами – размер кластера. «Давным-давно, когда диски были маленькими, а файлы – очень маленькими» это было очень заметно.

Рассмотрим на примере одного тома на диске объемом 120Гб и файла размером 10Кб.

Для FAT32 размер кластера будет 32Кб, а для NTFS – 4Кб.

В FAT32 такой файлзаймет 1 кластер, при этом останется 32-10=22Кб незанятого места.

В NTFS такой файлзаймет 3 кластера, при этом останется 12-10=2Кб незанятого места.

По аналогии с блокнотом кластер – это клетка. И поставив точку в клетку, мы уже логически занимаем ее всю, а в действительности остается много свободного места.

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

В 2003 году у меня был диск на 120Гб, разделенный на тома по 40 и 80Гб. Когда я перешел с Windows 98 на Windows ХР и конвертировал диск с FAT32 в NTFS , я получил около 1Гб освободившегося места на диске. В то время это была существенная «прибавка».

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

Том – это синоним раздела диска, пользователи том обычно называют «диск С», «диск Д» и т.д. Пример показан на картинке ниже:

В настоящий момент широко используются диски объемом 320Гб и больше. Поэтому я рекомендую использовать систему NTFS для оптимального использования дискового пространства.

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

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

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

При написании статьи использованы материалы сайтов ru.wikipedia.org

Автор статьи: Максим Тельпари
Пользователь ПК с 15-ти летним стажем. Специалист службы поддержки видеокурса "Уверенный пользователь ПК", изучив который Вы научитесь собирать компьютер, устанавливать Windows XP и драйверы, восстанавливать систему, работать в программах и многое другое.

Заработайте на этой статье!
Зарегистрируйтесь в партнерской программе. Замените в статье ссылку на курс на свою партнерскую ссылку. Добавьте статью на свой сайт. Получить версию для перепечатки можно .

2024 samgupsnn.ru. Samgupsnn - Немного о компьютере и современных гаджетах.