Файловые системы: Типы файловых систем, их предназначение и отличия – База знаний Timeweb Community

Содержание

Файловые системы накопителей | Технологии | Блог

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

Существует больше 30 файловых систем (ФС), большая часть которых имеет специфическое применение. Например, ФС под названием XFS создана исключительно для операционной системы IRIX, а DTFS — это файловая система, специализирующаяся на сжатии данных.

Если говорить относительно обычных пользователей ПК на Windows, MacOS и Linux, то для них список можно сократить до нескольких самых распространенных.

FAT32

Файловая система, разработанная компанией Microsoft на замену FAT16. Структурно вся область диска в FAT32 делится на кластеры размером от 512 байт до 32 Кбайт. Представьте себе тетрадь в клеточку. Каждая клетка — это кластер, в который может быть записан файл или его часть. Таким образом, большие файлы состоят из цепочки кластеров, которые совсем не обязательно будут располагаться друг за другом.

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

Главное и пока неоспоримое достоинство этой файловой системы — ее универсальность. FAT32 работает практически со всеми операционными системами Windows, а также без проблем распознается linux, MacOS, операционными системами игровых приставок и даже Android (если в смартфоне предусмотрена поддержка OTG).

Именно поэтому флеш-накопители чаще всего форматируют в FAT32, чтобы не иметь проблем с совместимостью на различных устройствах. С завода больше 90% всех флешек поставляется с этой ФС. Параллельно к плюсам относится высокая скорость работы с малыми и средними файлами (десятки/сотни мегабайт) и нетребовательность к объему ОЗУ.

Однако почтенный возраст FAT32 (больше 24 лет, что по меркам IT-индустрии просто огромный срок) накладывает ряд неприятных ограничений.

Несмотря на то, что размер тома с технической точки зрения может доходить до 8 ТиБ (тебибайт), что составляет около 8,7 ТБ, по факту в операционных системах Windows из-за встроенного ограничения вы не сможете создать том больше 32 ГБ. Соответственно, разметить большие жесткие диски, по крайней мере в Windows, в FAT32 не получится. Возникнут проблемы и с флешками на 64 ГБ.

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

exFAT

Одна из самых последних «новинок», созданная в 2008 году как расширенная версия FAT32 (extended FAT). Майкрософт решила взять лучшее и избавиться от самых неприятных недостатков.

exFAT ориентирована сугубо на переносные накопители — флешки, SD-карты и съемные жесткие диски. Размер кластера был увеличен до 32 мегабайт, благодаря чему размер файла теперь достигает целых 16 эксабайт (1 эксабайт = 1 048 576 ТБ). Задел на будущее у exFAT довольно внушительный.

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

Ощутимый минус только один — незначительная потеря совместимости. exFAT поддерживает Windows XP SP2 и более новые ОС. Соответственно, Windows 2000, NT и все, что старше, остается «за бортом». Усложнение структуры также привело к большим затратам вычислительной мощности компьютера. Однако на фоне современных процессоров с их потенциалом этим недостатком можно пренебречь.

NTFS

New Technology File System разработали еще в 1993 году, однако, как и FAT32, используют по сей день. Сходство с FAT проявляется и в том, что, пространство делится на кластеры заданного размера. Однако высокую гибкость NTFS обеспечивает именно структура.

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

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

NTFS обладает множеством достоинств. Максимальный размер тома на практике — 256 ТБ. Размера файла также хватит с запасом — около 16 ТБ. Помимо этого, за счет функции журналирования NTFS — отказоустойчивая система. Проще говоря, ФС либо выполняет действие до конца, либо откатывает все до состояния, когда действие еще не было совершено. Промежуточных «ошибочных» состояний практически не бывает. Имеется встроенное сжатие, средства разграничения прав объектов и шифрование данных.

К главному минусу NTFS относится низкая совместимость — не поддерживается все, что ниже Windows NT. Это не столь печально, но вот на MacOS и Linux записывать файлы на диски с NTFS не получится — только чтение. Игровые консоли Playstation и Xbox 360 также с этой файловой системой не работают.

Например, в PS4 можно отформатировать внешний жесткий диск, но только в формате самой приставки для обеспечения совместимости.

Таким образом, благодаря своему функционалу и поддержке больших объемов пространства NTFS — это отличный вариант для накопителей HDD и SSD. Несмотря на это, вы вполне можете создать на NTFS и флешку, но скорость ее работы по сравнению с FAT будет ниже.

Сравнительная таблица

Три приведенных файловых системы являются самыми популярными и наиболее совместимыми среди всех. Для удобства приведем основные параметры в общую таблицу.

 

FAT32

exFAT

NTFS

MAX объем тома

8 TiB (8,79 ТБ)

256 ТБ 

256 ТБ 

MAX размер файла

4 ГБ

16 эксабайт

16 ТБ 

Максимальная длина имени файла

до 255 символов

Системные копии

Резервная копия FAT

Нет

Резервная копия MFT файла

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

Стандартные

Стандартные

Расширенные

Отказоустойчивость

Минимальная

Минимальная

Высокая

Шифрование

Нет

Нет

Да

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

Все версии Windows, MacOS, Linux, Android

Windows XP с Service Pack 2 и новее, Mac OS X (начиная с версии 10. 6.5), Linux

Windows 2000 и новее, MacOS и Linux (возможны ограничения)

 

Экзотические файловые системы

Специально под Linux разработана линейка файловых систем ext1-ext4. Самой распространенной можно считать ext3 — максимальный размер файла 2 ТиБ (около 2 ТБ), а ограничение на размер ФС — 32 ТиБ (около 35 TБ). Предусмотрено ведение журнала, благодаря которому можно восстанавливать систему в случае некоторых сбоев. Читать ext можно и на Windows, но только с использованием специального софта (Ext2Explore и аналоги).

Файловая система ext4 является модификацией третьей версии. К основным нововведениям относится увеличение максимального объема раздела до 1 эксбибайта и файла до 16 тебибайт (17,6 ТБ). Во многих дистрибутивах именно ext4 используется по умолчанию, например, Ubuntu, Debian, Fedora, Mandriva Linux, Red Hat Enterprise.

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

Глава 17. Файловые системы Red Hat Enterprise Linux 7

OverlayFS

OverlayFS относится к категории каскадных файловых систем, в которых одна файловая система располагается поверх другой. При этом все изменения будут сохраняться только на верхнем уровне, не затрагивая нижний уровень. Это позволяет пользователям совместно использовать образ файловой системы, будь то контейнер или DVD, даже если он доступен только для чтения. Подробную информацию можно найти в файле Documentation/filesystems/overlayfs.txt.

В Red Hat Enterprise Linux 7.2 поддержка OverlayFS продолжает оставаться на экспериментальном уровне, поэтому при ее активации будут регистрироваться предупреждения ядра.

Полная поддержка OverlayFS предлагается только в комплексе с Docker, но с некоторыми ограничениями:

* OverlayFS поддерживается только как storage-драйвер Docker и подходит только для хранения контента COW, в то время как для постоянного размещения данных должны выбираться другие файловые системы. При этом может использоваться только стандартная конфигурация Docker — один верхний уровень и один lowerdir, причем оба уровня должны располагаться в одной файловой системе.

* На нижнем уровне должна использоваться только файловая система XFS.

* SELinux должен быть включен на физическом узле в строгом режиме, но отключен в контейнере, то есть /etc/sysconfig/docker не должен содержать —selinux-enabled. Работа над реализацией полноценной поддержки SELinux для OverlayFS продолжается и завершится к следующему выпуску.

* OverlayFS ABI и поведение OverlayFS в пространстве пользователя не являются стабильными и в будущем могут измениться.

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

Существуют и некоторые другие проблемы, связанные с имплементацией OverlayFS в Red Hat Enterprise Linux 7.2. Подробную информацию можно найти в секции Non-standard behavior в файле Documentation/filesystems/overlayfs.txt.

Гибкая файловая разметка в NFSv4

В Red Hat Enterprise Linux 7.2 добавлена поддержка гибкой файловой разметки (Flexible file layout) на клиентах NFSv4, которая обеспечивает мобильность файлов и зеркалирование на стороне клиента, что значительно облегчает работу с базами данными, большими объемами данных и в окружениях виртуализации.

NFSoRDMA

В Red Hat Enterprise Linux 7.2 добавлена экспериментальная поддержка NFSoRDMA (NFS over RDMA). Для этой цели администраторам, планирующим использовать транспорт RDMA (Remote Direct Memory Access) на NFS-сервере Red Hat Enterprise Linux 7, доступен модуль svcrdma.

Btrfs

Red Hat Enterprise Linux 7.2 предлагает экспериментальную поддержку файловой системы Btrfs, построенной на основе B-деревьев и характеризующейся усовершенствованными функциями управления, масштабирования и надежности.

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

Сравнение файловых систем NTFS и FAT(16/32)

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

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

В чем отличия FAT32 и NTFS?

Таблица размещения файлов FAT — это файловая система, в основе которой лежит электронная таблица данных. Существуют две наиболее популярные разновидности данной системы: FAT16 и FAT32. По сути, это однотипные таблицы размещения информации с одной лишь разницей: использование 16-ти или 32-х разрядных адресаций кластеров. В современных системах FAT16 уже не используется, ввиду ее ограниченных возможностей по размеру тома (логического диска).

Максимальный размер файла в системе FAT32 составляет до 4 Гб, а размер кластера от 512 байт до 32 КБ, что позволяет разбить логический диск до 8 ТБ, однако сделать это штатными средствами не представляется возможным.

Главные преимущества FAT32 перед NTFS:

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

К недостаткам файловой системы FAT32 можно отнести:

  • Уязвимость и возможности сбоя системы;
  • Медленные запросы при работе с большими каталогами файлов;
  • Отсутствие поддержки малых кластеров;
  • Необходимость фрагментации пространства на диске.

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

Основными достоинствами NTFS являются:

  • Рациональное использование места на носителе;
  • Высокая производительность при работе с большими файлами;
  • Значительная надежность;
  • Поддержка сжатия;
  • Восстановление системы при сбоях.

Есть у этой системы и ряд недостатков:

  • Высокая требовательность к объему оперативной памяти;
  • Отсутствие доступа NTFS-томов в MS-DOS;
  • Снижение производительности при работе с малыми объемами томов.

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

Что такое файловая система и почему их так много

Различные операционные системы поддерживают различные файловые системы. Ваш съемный диск должен использовать FAT32 для лучшей совместимости, но если Вы планируете хранить большие файлы – то форматируйте в NTFS. Mac форматирует диски в стандарт HFS+, который не работает с Windows. В Linux тоже есть свои файловые системы.

Почему их так много?

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

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

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

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

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

Почему так много файловых систем

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

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

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

Переключение файловых систем

Каждый раздел имеет файловую систему. Иногда вы можете «конвертировать» файловую систему раздела, но это редко возможно. Вместо этого, вероятно, Вам придётся сначала скопировать важные данные из раздела.

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

Таким образом, если у вас есть устройство хранения данных и вы хотите использовать другую файловую систему, просто скопируйте файлы с него, чтобы создать их резервную копию. Затем воспользуйтесь инструментом Управление дисками в Windows, gparted в Linux или дисковой утилитой в Mac OS.

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

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

  • FAT32: является одной из наиболее старых файловых систем Windows, но он всё ещё используется на съемных носителях – небольших по объему. Большие внешние жесткие диски объемом 1 ТБ или более будут, в любом случае, отформатированы с помощью NTFS. FAT32 имеет смысл использовать только с небольшими устройствами хранения или для совместимости с другими устройствами, такими как цифровые камеры, игровые консоли, приставки и другие устройства, которые поддерживают только FAT32, но NTFS.
  • NTFS: современная версия файловой системы Windows – используется начиная с Windows XP. Внешние диски могут быть отформатированы с помощью FAT32 или NTFS.
  • HFS+: Mac использует HFS+ для своих внутренних разделов, ей же форматирует внешние диски – для использования внешнего жесткого диска с Time Machine требуется, чтобы атрибуты файловой системы можно было добавлять в резервную копию. Маки также могут читать и записывать файлы в файловые системы FAT32, но Вам понадобится стороннее программное обеспечение для записи в файловые системы NTFS с Mac.
  • Ext2 / Ext3 / Ext4: Вы будете часто видеть файловые системы ext2, ext3 и ext4 в Linux. Ext2 является более старой файловой системой, и она не имеет важных функций, таких как ведение журнала – если питание гаснет или компьютер аварийно завершает работу во время записи на диск ext2, данные могут быть потеряны. Ext3 добавляет эти характеристики робастности за счет некоторой скорости. Ext4 является более современным и быстрым вариантом – это файловая система используется по умолчанию на большинстве дистрибутивов Linux. Windows и Mac не поддерживают эти файловые системы – вам понадобится сторонний инструмент для доступа к файлам в таких файловых системах. Вместе с тем, Linux может читать и записывать как в FAT32, так и в NTFS.
  • Btrfs: это новая файловая система Linux, которая всё ещё находится в разработке. На данный момент он не является стандартным для большинства дистрибутивов Linux, но, вероятно, однажды заменит Ext4. Цель состоит в том, чтобы предоставить дополнительные функции, которые позволяют Linux масштабировать до больших объемов хранения.
  • Swap: в Linux файловая система «swap», на самом деле, не является файловой системой. Раздел, отформатированный как «swap», может быть использован в качестве пространства подкачки операционной системы – как файл подкачки Windows, но требует специальный раздел.

Существуют и другие файловые системы, особенно в Linux и других Unix-подобных системах.

Типичный пользователь компьютера не должен знать большую часть этого материала – но знание основ поможет Вам понять такие вопросы, как: «почему этот диск в формате Mac не работает с моим ПК на Windows?» и «должен ли я отформатировать этот жесткий диск USB как FAT32 или NTFS?».

Файловая система — это… Что такое Файловая система?

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

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

Файловая система связывает носитель информации с одной стороны и API для доступа к файлам — с другой. Когда прикладная программа обращается к файлу, она не имеет никакого представления о том, каким образом расположена информация в конкретном файле, так же, как и на каком физическом типе носителя (CD, жёстком диске, магнитной ленте, блоке флеш-памяти или другом) он записан. Всё, что знает программа — это имя файла, его размер и атрибуты. Эти данные она получает от драйвера файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жёстком диске).

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

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

Иерархия каталогов

Практически всегда файлы на дисках объединяются в каталоги.

В простейшем случае все файлы на данном диске хранятся в одном каталоге. Такая одноуровневая схема использовалась в CP/M и в первой версии MS-DOS 1.0. Иерархическая файловая система со вложенными друг в друга каталогами впервые появилась в Multics, затем в UNIX.

Wiki.txt
Tornado.jpg
Notepad.exe
(Одноуровневая файловая система)

Каталоги на разных дисках могут образовывать несколько отдельных деревьев, как в DOS/Windows, или же объединяться в одно дерево, общее для всех дисков, как в UNIX-подобных системах.

C:
  \Program files
      \CDEx
           \CDEx.exe
           \CDEx.hlp
           \mppenc.exe
  \Мои документы
      \Wiki.txt
      \Tornado.jpg
D:
  \Music
      \ABBA
           \1974 Waterloo
           \1976 Arrival
               \Money, Money, Money.ogg
           \1977 The Album
(Иерархическая файловая система Windows/DOS)

В UNIX существует только один корневой каталог, а все остальные файлы и каталоги вложены в него. Чтобы получить доступ к файлам и каталогам на каком-нибудь диске, необходимо смонтировать этот диск командой mount. Например, чтобы открыть файлы на CD, нужно, говоря простым языком, сказать операционной системе: «возьми файловую систему на этом компакт-диске и покажи её в каталоге /mnt/cdrom». Все файлы и каталоги, находящиеся на CD, появятся в этом каталоге /mnt/cdrom, который называется точкой монтирования (англ. mount point).[2] В большинстве UNIX-подобных систем съёмные диски (дискеты и CD), флеш-накопители и другие внешние устройства хранения данных монтируют в каталог /mnt, /mount или /media. Unix и UNIX-подобные операционные системы также позволяет автоматически монтировать диски при загрузке операционной системы.

/
    /usr                                  
        /bin                              
            /arch                        
            /ls                         
            /raw                     
        /lib                           
            /libhistory.so.5.2           
            /libgpm.so.1                
    /home                                
        /lost+found                      
            /host.sh                    
        /guest                         
            /Pictures                   
                /example. png        
            /Video                     
                /matrix.avi            
                /news                
                    /lost_ship.mpeg    
(Иерархическая файловая система в Unix и UNIX-подобных операционных системах)

Обратите внимание на использование слешей в файловых системах Windows, UNIX и UNIX-подобных операционных системах (В Windows используется обратный слеш «\», а в UNIX и UNIX-подобных операционных системах простой слеш «/»)

Кроме того, следует отметить, что вышеописанная система позволяет монтировать не только файловые системы физических устройств, но и отдельные каталоги (параметр —bind) или, например, образ ISO (опция loop). Такие надстройки, как FUSE, позволяют также монтировать, например, целый каталог на FTP и ещё очень большое количество различных ресурсов.

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

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

Классификация файловых систем

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

  • Для носителей с произвольным доступом (например, жёсткий диск): FAT32, HPFS, ext2 и др. Поскольку доступ к дискам в разы медленнее, чем доступ к оперативной памяти, для прироста производительности во многих файловых системах применяется асинхронная запись изменений на диск. Для этого применяется либо журналирование, например в ext3, ReiserFS, JFS, NTFS, XFS, либо механизм soft updates и др. Журналирование широко распространено в Linux, применяется в NTFS. Soft updates — в BSD системах.
  • Для носителей с последовательным доступом (например, магнитные ленты): QIC и др.
  • Для оптических носителей — CD и DVD: ISO9660, HFS, UDF и др.
  • Виртуальные файловые системы: AEFS и др.
  • Сетевые файловые системы: NFS, CIFS, SSHFS, GmailFS и др.
  • Для флэш-памяти: YAFFS, ExtremeFFS, exFAT.
  • Немного выпадают из общей классификации специализированные файловые системы: ZFS (собственно файловой системой является только часть ZFS), VMFS (т. н. кластерная файловая система, которая предназначена для хранения других файловых систем) и др.

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

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

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

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

См. также

Примечания

файловые системы пользовательского пространства теперь доступны и в Windows / Хабр

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

ext4

,

reiserfs

,

btrfs

, или даже сетевые файловые системы — вроде

nfs

. Кроме того, в Linux существуют и виртуальные файловые системы, вроде

/sys

и

/dev

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

FUSE

(Filesystem in USErspace — файловая система в пользовательском пространстве). В частности, речь идёт о модуле файловой системы, который позволяет создавать новые файловые системы путём написания вполне обычного кода.



Мои любимые файловые системы пользовательского пространства

Существует несколько FUSE, которые способны принести тем, кто их применяет, реальную пользу. Вот некоторые из моих любимых:

  • sshfs — монтирует удалённую файловую систему, используя лишь ssh-доступ.
  • rclone — позволяет организовывать доступ ко многим удалённым файловым системам и осуществлять их монтирование.
  • tagsistant — файловая система, основанная на тегах, облегчающая работу с большим количеством файлов.
  • fuse-zip — позволяет монтировать zip-файлы в виде файловых систем.
  • gitfs — позволяет монтировать в виде файловых систем git-репозитории.

Есть и множество

других

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

А как насчёт Windows?

FUSE в Linux — это весьма полезная штука. А есть ли что-то подобное в Windows? Да, нечто такое есть и в Windows. Называется оно

WinFsp

и выглядит как интересный механизм для работы с файловыми системами. Правда, прямой совместимости с FUSE у него нет. Но имеются слои совместимости с FUSE (один — для версии 2.8, и ещё один — для версии 3.2), которые упрощают портирование существующего FUSE-кода на WinFsp.

Это — достаточно новый проект такого рода. Но существует ещё один подобный проект — Dokan, авторы которого говорят о наличии интерфейсов к его API для FUSE. Правда, если верить бенчмаркам, выполненным в рамках проекта WinFsp, оказывается, что WinFsp отличается более высокой производительностью.

Итоги

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

Например, у вас может быть некая система для логирования данных. Вы решили, что хотите представить результаты её работы в виде файловой системы. Сделать это не так уж и сложно. Так, например, имеются некоторые структуры данных, которые нужно заполнить, причём, заполнять нужно далеко не все эти структуры. Нужно написать функции, которые будут использоваться в виде инструментов для чтения и записи данных, представляющих директории и файлы. Вот — пример, написанный на C. А вот — C++-обёртка, которая позволит создать файловую систему, написав меньше кода, чем при выборе C. В этом примере имеется всего четыре простых функции. Так что — если вам нужна собственная файловая система пользовательского пространства — вы, что для Linux, что для Windows, вполне можете создать её своими силами.

Возникала ли у вас когда-нибудь необходимость в создании собственной файловой системы?

Что такое журналируемые файловые системы?

Что такое журналируемые файловые системы?

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

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

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

Пример1. Файловая система Ext3

По большому счету, файловая система Ext3 не была новой файловой системой. Это похоже на ситуацию с файловой системой FAT 16/FAT 32 — они совместимы, но проблема решена экстенсивным путем. Было необхо­димо срочно создать журналируемую файловую систему. Если начинать с нуля — долго и накладно, тогда сделали для Ext2 несколько десятков специ­альных функций и назвали все это Ext3 — получился непонятный гибрид.

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

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

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

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

В файловой системе ext3 доступны 3 режима работы с данными:

  • Writeback – позволяет старым данным оставаться в системе, при этом операции над этими данными, как правило, выполняются быстрее. Этот режим не предусматривает планирование каких-либо операций над данными.
  • Ordered – хранит данные в согласованном состоянии, однако скорость выполнения операций над данными падает (этот режим установлен по умолчанию).
  • Journal – требует дополнительного пространства на диске для выполнения журналирования. При этом может упасть производительность, поскольку данные записываются дважды.

Для большинства пользователей наилучшим режимом будет Ordered, который выбран по умолчанию. Режим выбирается с помощью соответствующей опции монтирования в файле /etc/fstab.

Пример2. Файловая система ReiserFS

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

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

В системе ReiserFS применяются так называемые «сбалансированные дере­вья» или «B+Trees», время поиска в которых пропорционально не количест­ву объектов, а логарифму этого числа. В сбалансированном дереве все ветви имеют одинаковую длину. ReiserFS использует сбалансированные деревья для хранения всех объектов файловой системы: файлов в каталогах, данных о свободных блоках и т.д. Это позволяет существенно повысить производи­тельность обращения к дискам.

Кроме того, система ReiserFS является журналируемой, т.е. в ней решена проблема быстрого восстановления после сбоев. Решена в ReiserFS и про­блема с ограничением на размер файла.

 

файловых систем в операционной системе: структура, атрибуты, типы

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

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

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

Из этого руководства по операционной системе вы узнаете:

Цель системы управления файлами

Вот основные задачи системы управления файлами:

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

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

Вот важные свойства файловой системы:

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

Файловая структура

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

Три типа структуры файлов в ОС:

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

Рекомендации по прочтению: — Что такое операционная система? Объясните типы ОС, функции и примеры.

Атрибуты файла

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

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

  • Название: Это единственная информация, хранящаяся в удобочитаемой форме.
  • Идентификатор : Каждый файл идентифицируется уникальным номером тега в файловой системе, известным как идентификатор.
  • Расположение: Указывает на расположение файла на устройстве.
  • Тип: Этот атрибут требуется для систем, поддерживающих различные типы файлов.
  • Размер . Атрибут, используемый для отображения текущего размера файла.
  • Защита . Этот атрибут назначает и контролирует права доступа на чтение, запись и выполнение файла.
  • Время, дата и безопасность: Используется для защиты, безопасности, а также используется для мониторинга

Тип файла

Это относится к способности операционной системы различать различные типы файлов, такие как текстовые файлы, двоичные и исходные файлы. Однако операционные системы, такие как MS_DOS и UNIX, имеют следующие типы файлов:

Специальный файл символов

Это аппаратный файл, который считывает или записывает данные посимвольно, например мышь, принтер и т. Д.

Обычные файлы

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

Каталог файлов

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

Специальные файлы

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

Функции файла

  • Создайте файл, найдите место на диске и сделайте запись в каталоге.
  • Запись в файл, требуется позиционирование внутри файла
  • Чтение из файла включает позиционирование внутри файла
  • Удалить запись в каталоге, освободить место на диске.
  • Reposition: перемещение позиции чтения / записи.

Термины, часто используемые в файловых системах

Поле:

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

БАЗА ДАННЫХ:

Сборник связанных данных называется базой данных. Связи между элементами данных явные.

ФАЙЛОВ:

Файлы — это набор похожих записей, которые рассматриваются как единое целое.

ЗАПИСЬ:

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

Методы доступа к файлам

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

Три метода доступа к файлам:

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

Последовательный доступ

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

Произвольный доступ

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

Последовательный доступ

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

Распределение площадей

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

Три метода распределения пространства:

  • Связанное размещение
  • Индексированное размещение
  • Непрерывное размещение

Непрерывное размещение

В этом методе

  • Каждый файл использует непрерывное адресное пространство в памяти.
  • Здесь ОС назначает дисковый адрес в линейном порядке.
  • В методе непрерывного размещения самая большая проблема — внешняя фрагментация.

Связанное размещение

В этом методе

  • Каждый файл содержит список ссылок.
  • Каталог содержит ссылку или указатель в первом блоке файла.
  • При этом методе отсутствует внешняя фрагментация
  • Этот метод размещения файлов используется для файлов с последовательным доступом.
  • Этот метод не идеален для файла с прямым доступом.

Индексированное размещение

В этом методе

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

Файловые каталоги

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

Одноуровневый каталог

Ниже приводится информация, которая хранится в каталоге:

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

Типы файлов — имя, расширение

Тип файла Обычный добавочный номер Функция
Исполняемый exe, com, bin или нет Готовая к запуску программа на машинном языке
Объект obj, o выполнено, машинный язык, не связано
Исходный код г.п, па, 177, асм, а исходный код на разных языках
Партия летучая мышь, ш Серия команд для выполнения
Текст txt, doc документов с текстовыми данными
Текстовый процессор doc, docs, tex, rrf и т. Д. различные форматы текстовых процессоров
Библиотека библиотека, h библиотеки подпрограмм
Архив arc, zip, tar связанных файла сгруппированы в один файл, иногда в сжатом виде.

Резюме:

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

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

Зачем мне нужны файловые системы Linux для Windows от Paragon Software?
В Windows нет возможности читать или записывать данные из хранилищ в формате Linux.Если у вас дома есть устройства на базе Linux (NAS, smartTV, мультимедийные блоки, маршрутизаторы) и вы хотите получить доступ к данным из хранилищ в формате Linux на ПК с Windows, вам потребуются файловые системы Linux для Windows от Paragon Software.
С какими файловыми системами Linux я могу работать?
Файловые системы Linux для Windows от Paragon Software обеспечивают доступ для чтения и записи к томам Ext2, Ext3 и Ext4. Btrfs и XFS доступны в режиме только для чтения.
Какие функции расширенной файловой системы поддерживаются?
Это 64-битные, dir_index, extension, extra_isize, ext_attr, flex_bg, has_journal и т. Д. Обратите внимание, что файловые системы Linux для Windows от Paragon Software не поддерживают функции bigalloc, journal_dev, meta_bg, inline_data в момент.
Что я могу делать с файлами?
Вы можете выполнять операции создания / чтения / изменения / копирования / удаления с вашими файлами ExtFS обычным способом и читать или копировать данные из хранилищ, отформатированных в Btrfs и XFS.
Могу ли я писать на диски в формате Btrfs и XFS?
Нет, Btrfs и XFS доступны в режиме только для чтения. Доступ для записи скоро будет доступен.
Могу ли я отформатировать тома Btrfs и XFS?
Да, вы можете отформатировать тома Btrfs и XFS в ExtFS. Обратите внимание, что вы не можете форматировать тома в Btrfs и XFS.
Могу ли я попробовать продукт бесплатно перед покупкой?
Конечно, вы можете попробовать файловые системы Linux для Windows от Paragon Software в течение десяти дней совершенно бесплатно. После этого скорость будет снижаться, пока вы не активируете купленную лицензию.
У меня Paragon ExtFS для Windows. Будет ли обновляться?
Файловые системы Linux для Windows от Paragon Software — преемник и крупное обновление Paragon ExtFS для Windows.
У меня уже есть Paragon ExtFS для Windows. Могу ли я получить файловые системы Linux для Windows от Paragon Software бесплатно?
Если у вас установлена ​​последняя версия extFS, мы бесплатно предлагаем текущую версию файловых систем Linux для Windows от Paragon Software. Также мы предлагаем различные скидки, если у вас более старая версия extFS. Свяжитесь с нашим отделом продаж, чтобы узнать больше о скидках.
Следует ли мне удалить Paragon ExtFS для Windows перед установкой файловых систем Linux для Windows от Paragon Software?
Да.Если у вас есть Paragon ExtFS для Windows или Paragon ExtFS для Windows Professional, удалите его перед установкой файловых систем Linux для Windows от Paragon Software.
Могу ли я активировать продукт на другом ПК?
Да, для этого повторно активируйте продукт, выполнив следующие действия.
  1. Авторизуйтесь на портале MyParagon.
  2. Найдите свой продукт в списке «Мои продукты», затем нажмите «Показать подробности», нажмите «Освободить лицензию».
  3. Статус лицензии будет отмечен как «Не используется»: статья в базе знаний Paragon.
  4. Затем снова активируйте свой продукт.
Сколько раз я могу повторно активировать свою лицензию?
Вы можете повторно активировать его 4 раза. Если вам необходимо повторно активировать лицензию более 4 раз, обратитесь в нашу службу поддержки или отправьте заявку в службу поддержки, и мы поможем вам разблокировать счетчик лицензий.
После переустановки Windows продукт не работает.
Если вы переустановили Windows, вам необходимо повторно активировать продукт, выполнив следующие действия.
  1. Авторизуйтесь на портале MyParagon.
  2. Найдите свой продукт в списке «Мои продукты», затем нажмите «Показать подробности», нажмите «Освободить лицензию».
  3. Статус лицензии будет отмечен как «Не используется»: статья в базе знаний Paragon.
  4. Затем снова активируйте свой продукт.
Когда я пытаюсь установить продукт, я получаю сообщение об ошибке: «Другая версия этого продукта уже установлена. Установка этой версии не может быть продолжена ».
Скорее всего, у вас установлен Paragon ExtFS для Windows. Удалите его и установите Linux File Systems для Windows от Paragon Software.
Продукт не работает в Windows 7 SP1.
Я не могу установить продукт через интерфейс командной строки.
Продукт не работает в Windows 8.1.
Пожалуйста, установите эти дополнительные обновления для версий Windows 8.1 x64 / x86: KB2919442, если он не установлен, то KB2919355.
Я часто работаю с разделами в формате NTFS, HFS +, APFS на моем Mac и ПК с Windows.Могу ли я получить скидку, если куплю сразу все драйвера?
Да, вы можете приобрести наш новый Paragon Mac ToolBox всего за 39,95 долларов. Пакет содержит четыре инструмента для обеспечения беспрепятственного межплатформенного обмена данными и управления дисковым пространством:

  • Microsoft NTFS для Maс от Paragon Software
  • APFS для Windows от Paragon Software
  • HFS + для Windows от Paragon Software
  • Paragon CampTune

Лекция 11: Файловые системы

Лекция 11: Файловые системы

Зака ​​Бордофски, Кевина Ву и Криса Чжу

Файловые системы: IBM General Parallel File System (GPFS)

GPFS состоит из 120 петабайт информации, хранящейся на 200 000 жестких дисков.

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

Для управления этим потребуется несколько ЦП, чтобы не было узкого места для скорости ЦП. Вместо этого работа распределяется между несколькими процессорами с доступом к дискам.

Техник выполнения этой работы:

  • Чередование: храните части файлов в разных блоках, чтобы не хранить все в одном месте. Это увеличивает возможность параллельной работы.
  • Распределенные метаданные: распространение метаданных для файлов по множеству процессоров, чтобы многие люди могли находить файлы одновременно.Если бы все метаданные были в одном месте, этот ЦП был бы перегружен запросами на доступ и поиск файлов.
  • Информация о разделах: создавайте копии наших файлов, чтобы в случае выхода из строя части сети (например, Чикаго) люди, не находящиеся в отключенной части сети, по-прежнему могли работать.
  • Распределенная блокировка: блокировки должны существовать на нескольких процессорах, чтобы люди, записывающие или читающие файл, могли захватить блокировку.
  • Эффективное индексирование каталогов: Поскольку система представляет собой большое количество файлов, для хранения всех файлов должна использоваться более эффективная структура данных.

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

Абстрактная организация данных на вторичном хранилище (обычно медленное, большое, постоянное).

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

Файловая система Пола Эггерта

В 1974 году профессор Эггерта сказал ему: «Пол, я хочу, чтобы ты построил файловую систему для моего конкурента UNIX». В то время он ничего не знал об операционных системах, потому что классов ОС не было.

Ограничения на оборудование в старые времена:

  • 16 килобайт RAM
  • Дисковод 700 Гб
  • 512-байтовый сектор

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

  1. Имя
  2. Стартовый сектор
  3. Размер файла в байтах

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

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

Далее он делает длину имени 8 байт. Если у вас меньше 8 байт, это круто. Просто используйте 0 заливок (по сути, добавьте кучу нулевых байтов, пока не достигнете 8 байтов, а затем поместите их в таблицу).Всего файлов 6.

~ Прочие сведения ~

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

Минусы:

  • Количество файлов ограничено кодом (предположим, вам нужно больше файлов, просто измените общее количество секторов).
  • Внутренняя фрагментация до 511 байт (в среднем 255,5 байта).
  • Внешняя фрагментация
  • Вы должны сообщить ОС, насколько велик файл. (требуется предварительное выделение)

Внутренняя фрагментация возникает из-за того, что каждый файл хранится в одном секторе независимо от его размера, поэтому при хранении небольших файлов возникает много бесполезного места. Внешняя фрагментация — серьезный недостаток файловой системы Эггерта, из-за которого он также приказал своему профессору выбросить мусорный код.По сути, происходит то, что вы притворяетесь, что какое-то время пользуетесь файловой системой. Вы распределяете файлы … чтение, запись, удаление. Файловая система растет и сжимается. В какой-то момент у вас будут пробелы, которые не используются между файлами (по сути, дыры). Когда у вас много этих отверстий, вы тратите много места, которое не может быть использовано файлом большего размера, чем отверстия. По сути, нет способа «объединить дыры», чтобы сэкономить память и выделить место для файла. Как сказал Эггерт: «Внешняя фрагментация — это свободное пространство, которое вы можете использовать, но не можете использовать его для конкретного запроса.«

Плюсы

  • Простой
  • Последовательный доступ быстрый. (эффективнее читать следующий сектор, а не случайный)

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

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

Представление структуры диска в файловой системе FAT

  • Загрузочная секция — эта часть сектора никогда не используется
  • Суперблок — эта часть сектора содержит метаинформацию файловой системы, такую ​​как версия FAT, которая используется, размер файла, количество используемых блоков, номер блока корневого каталога и т. Д.

Таблица размещения файлов (F.A.T) — Эта часть сектора разделена на блоки по 16 бит. Затем каждый блок будет указывать на следующий блок FAT в файловой системе. В блоке FAT будет число, которое что-то будет представлять.

FAT Обозначение:

  • -1: свободный блок
  • 0: конец файла (последний блок в текущем файле)
  • N: это индекс следующего файлового блока в файле.

ВАЖНЫЕ замечания о FAT: поскольку он использует указатели, файл не обязательно должен находиться в непрерывных блоках памяти.Однако это также неудобно, поскольку FAT работает так, что ей нужен указатель на следующий блок размером 4 байта. Это создает размер блока данных, равный 512 байтам — 4 байта, что больше не является степенью двойки, что создает проблемы с выравниванием данных. FAT по-прежнему имеет внутреннюю фрагментацию — процесс не использует все данные в данном секторе и не может использоваться другими процессами (потеря данных).

Как FAT представляет каталоги?

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

Плюсы файловой системы FAT

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

Минусы файловой системы FAT

  • потеря последовательного доступа
  • Это медленно, поскольку FAT использует указатели, диск должен продолжать поиск следующего блока.
  • Можно решить дефрагментацией, перемещая блоки, пока они не станут непрерывными, но это само по себе медленно и рискованно. Это рискованно, потому что при этом вы можете потерять питание и потерять место при перезагрузке, что приведет к повреждению.
  • lseek
  • Медленно, O (N), потому что вам нужно пройти через связанный список.
  • переименование файла FAT
  • переименовать в том же каталоге файлов легко и дешево: загрузить блок каталога, найти файл и обновить его имя.
  • Однако, если вы переименуете его в разных каталогах, вы будете управлять двумя разными блоками памяти, что может выйти из строя, если во время переименования отключится питание.

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

Представьте, что вам нужно хранить один файл в шкафу.Это не так уж и плохо, правда? Что, если бы вместо одного файла нужно было хранить 100000? Вы видите здесь проблему? Что ж, на наших компьютерах мы можем легко хранить сотни тысяч файлов, если не больше. Проблема решена? Не совсем так, мы должны иметь возможность отслеживать все эти файлы. Ядро обрабатывает файловые хранилища и файловые системы на наших машинах. И в этом уроке мы собираемся копнуть немного глубже, как он это делает. Есть три основных компонента для обработки файлов в ОС: файловые данные, метаданные и файловая система.Начнем с файловой системы. Когда у нас есть новый жесткий диск, на котором мы хотим хранить данные, нам нужно стереть и настроить диск. Таким образом, наша операционная система может читать и записывать в него данные. Это важно, поскольку именно так наша операционная система отслеживает файлы. Поэтому он должен знать, какая файловая система используется. Файловых систем много, и они используются для разных целей. Некоторые файловые системы поддерживают хранение больших объемов данных, другие — только небольшие.Они могут работать с разной скоростью и иметь разную устойчивость к повреждению файлов и т. Д. Мы не будем вдаваться в подробности, какая файловая система лучше. Это вам решать. Но основные производители ОС имеют свои собственные уникальные файловые системы, которые они рекомендуют. В Windows основной используемой файловой системой является NTFS. Он был представлен в предыдущей версии ОС Windows, Windows NT. И он включает в себя множество функций, таких как шифрование, более высокая скорость доступа, безопасность и многое другое. Microsoft разрабатывает другую файловую систему под названием ReFS, но она еще не совсем готова для использования потребителями.Если вам интересно узнать больше, вы можете прочитать об этом в следующем дополнительном чтении. Для Mac OS файловая система по умолчанию — HFS +. Он ведется журналом, что означает, что он лучше справляется с сохранением состояния вашего диска в случае сбоя. Это функция других типов файловых систем, например NTFS. Для Linux разные дистрибутивы будут использовать разные типы файловых систем. Стандарт файловых систем для Linux — ext4, который совместим со старыми файловыми системами ext. В общем, разные типы файловых систем плохо взаимодействуют друг с другом.Возможно, вам не удастся легко перемещать файлы между разными файловыми системами, в зависимости от типа файловой системы. Хороший совет — использовать только ту файловую систему, которую рекомендует ваша операционная система. Вы можете узнать больше о различных типах файловых систем в дополнительных материалах. Еще одна важная часть управления файлами — это хранение фактических файловых данных. Мы записываем данные на наш жесткий диск в виде блоков данных. Когда мы что-то сохраняем на наших жестких дисках, это не всегда целиком.Его можно разбить на множество частей и записать в разные части диска. Блочное хранилище улучшает более быструю обработку данных, поскольку данные хранятся не на одном длинном фрагменте, и к ним можно получить доступ быстрее. Также лучше использовать место для хранения. Наконец, нам нужно сохранить метаданные, содержащие информацию о нашем файле. Мы хотим знать много информации о нашем файле, например, кто его создал, когда он был в последний раз изменен, у кого есть доступ к нему и так далее. Метаданные файла сообщают нам все, что нам нужно знать о нашем файле.Он также сообщает нам, какой это тип файла. Расширение файла — это добавленная часть имени файла, которая сообщает нам, какой это тип файла в определенных операционных системах. Возьмите cool_image.jpeg. Jpeg — это расширение файла, связанное с файлами изображений. Вы увидите разные типы таких расширений файлов, когда будете работать со своей операционной системой. Практическое знание файловых систем и различий между ними — отличный навык в вашем наборе инструментов специалиста по ИТ-поддержке. Это может быть очень полезно, когда вам нужно восстановить данные с поврежденных дисков.Или изучите способы загрузки двух разных операционных систем, таких как Windows и Linux, на одном компьютере.

Обзор файловых систем FAT, HPFS и NTFS — клиент Windows

  • Статья
  • .
  • Читать 12 минут
Эта страница полезна?

Оцените, пожалуйста, свой опыт

да Нет

Любой дополнительный отзыв?

Отзыв будет отправлен в Microsoft: при нажатии кнопки «Отправить» ваш отзыв будет использован для улучшения продуктов и услуг Microsoft.Политика конфиденциальности.

Представлять на рассмотрение

В этой статье

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

Применимо к: Windows 10 — все выпуски, Windows Server 2012 R2
Исходный номер базы знаний: 100108

Примечание

HPFS поддерживается только в Windows NT версии 3.1, 3.5 и 3.51. Windows NT 4.0 не поддерживает и не может получить доступ к разделам HPFS. Кроме того, поддержка файловой системы FAT32 стала доступна в Windows 98 / Windows 95 OSR2 и Windows 2000.

Обзор FAT

FAT — самая простая из файловых систем, поддерживаемых Windows NT. Файловая система FAT характеризуется таблицей размещения файлов (FAT), которая на самом деле представляет собой таблицу, которая находится на самой «вершине» тома. Для защиты тома хранятся две копии FAT на случай повреждения одной.Кроме того, таблицы FAT и корневой каталог должны храниться в фиксированном месте, чтобы загрузочные файлы системы могли быть правильно расположены.

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

Обновление таблицы FAT очень важно и требует много времени. Если таблица FAT не обновляется регулярно, это может привести к потере данных. Это отнимает много времени, потому что считывающие головки диска необходимо перемещать на нулевую логическую дорожку диска при каждом обновлении таблицы FAT.

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

Соглашение об именах FAT

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

. "/ \ []:; | =,

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

Зарезервированы следующие имена:

CON, AUX, COM1, COM2, COM3, COM4, ​​LPT1, LPT2, LPT3, PRN, NUL

Все символы будут преобразованы в верхний регистр.

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

Невозможно выполнить восстановление под Windows NT ни на одной из поддерживаемых файловых систем. Утилиты отмены удаления пытаются получить прямой доступ к оборудованию, что невозможно в Windows NT. Однако, если файл был расположен в разделе FAT, а система перезагружена под MS-DOS, файл можно восстановить.Файловая система FAT лучше всего подходит для дисков и / или разделов размером менее 200 МБ, потому что FAT начинается с очень небольшими накладными расходами. Для дальнейшего обсуждения преимуществ FAT см .:

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Пакет ресурсов Windows NT Workstation 4.0, глава 18, «Выбор файловой системы»

  • Пакет ресурсов Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Недостатки FAT

Желательно, чтобы при использовании дисков или разделов размером более 200 МБ файловая система FAT не использовалась.Это связано с тем, что по мере увеличения размера тома производительность с FAT быстро снижается. Невозможно установить разрешения для файлов, которые являются разделами FAT.

Разделы

FAT ограничены по размеру до 4 гигабайт (ГБ) в Windows NT и 2 ГБ в MS-DOS.

Для дальнейшего обсуждения других недостатков FAT см .:

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Рабочая станция Windows NT 4.0 Resource Kit, Глава 18, «Выбор файловой системы»

  • Пакет ресурсов Microsoft Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Обзор HPFS

Файловая система HPFS была впервые представлена ​​в OS / 2 1.2, чтобы обеспечить более широкий доступ к более крупным жестким дискам, которые тогда появлялись на рынке. Кроме того, в новой файловой системе было необходимо расширить систему имен, организацию и безопасность для растущих требований рынка сетевых серверов.HPFS поддерживает организацию каталогов FAT, но добавляет автоматическую сортировку каталога по именам файлов. Имена файлов расширяются до 254 двухбайтовых символов. HPFS также позволяет составить файл из «данных» и специальных атрибутов, чтобы обеспечить повышенную гибкость с точки зрения поддержки других соглашений об именах и безопасности. Кроме того, единица распределения изменена с кластеров на физические секторы (512 байт), что уменьшает потерю дискового пространства.

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

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

HPFS разбивает диск на группы по 8 МБ, и, когда это возможно, файл содержится в одной из этих полос. Между каждым из этих диапазонов находятся битовые карты распределения 2K, которые отслеживают, какие секторы в пределах диапазона были распределены, а какие нет. Чередование увеличивает производительность, потому что головке диска не нужно возвращаться к логической вершине (обычно цилиндру 0) диска, а к ближайшей битовой карте распределения полосы, чтобы определить, где файл должен быть сохранен.

Кроме того, HPFS включает несколько уникальных специальных объектов данных:

Суперблок

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

Запасной блок

Запасной блок расположен в логическом секторе 17 и содержит таблицу «оперативных исправлений» и резервный блок каталога.В HPFS при обнаружении сбойного сектора запись «горячих исправлений» используется для логического указания на существующий исправный сектор вместо сбойного. Этот метод обработки ошибок записи известен как оперативное исправление.

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

Примечание

Версия HPFS, входящая в состав Windows NT, не поддерживает оперативное исправление.

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

HPFS лучше всего подходит для дисков размером 200–400 МБ. Для получения дополнительной информации о преимуществах HPFS см .:

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Рабочая станция Windows NT 4.0 Resource Kit, Глава 18, «Выбор файловой системы»

  • Пакет ресурсов Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Недостатки HPFS

Из-за накладных расходов, связанных с HPFS, это не очень эффективный выбор для тома менее 200 МБ. Кроме того, при использовании томов размером более 400 МБ будет некоторое снижение производительности. Вы не можете установить безопасность на HPFS под Windows NT.

HPFS поддерживается только в Windows NT версий 3.1, 3.5 и 3.51. Windows NT 4.0 не может получить доступ к разделам HPFS.

О дополнительных недостатках HPFS см .:

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Пакет ресурсов Windows NT Workstation 4.0, глава 18, «Выбор файловой системы»

  • Пакет ресурсов Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Обзор NTFS

С точки зрения пользователя NTFS продолжает организовывать файлы в каталоги, которые, как и HPFS, сортируются.Однако, в отличие от FAT или HPFS, на диске нет «специальных» объектов и нет зависимости от базового оборудования, например, 512-байтовых секторов. Кроме того, на диске нет специальных мест, таких как таблицы FAT или суперблоки HPFS.

Целями NTFS являются:

  • Надежность, которая особенно желательна для высокопроизводительных систем и файловых серверов

  • Платформа для дополнительных функций

  • Поддержка требований POSIX

  • Снятие ограничений файловых систем FAT и HPFS

Надежность

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

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

В FAT или HPFS, если сектор, в котором находится один из специальных объектов файловой системы, выходит из строя, происходит сбой одного сектора.NTFS позволяет избежать этого двумя способами: во-первых, не используя специальные объекты на диске, а также отслеживая и защищая все объекты, находящиеся на диске. Во-вторых, в NTFS сохраняется несколько копий (количество зависит от размера тома) главной таблицы файлов.

Подобно версиям HPFS для OS / 2, NTFS поддерживает оперативное исправление.

Добавлен функционал

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

Поддержка POSIX

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

Именование с учетом регистра:

В POSIX, README.64 байта (16 эксабайт или 18 446 744 073 709 551 616 байт). NTFS также вернулась к концепции кластеров FAT, чтобы избежать проблемы HPFS с фиксированным размером сектора. Это было сделано потому, что Windows NT — портативная операционная система, и в какой-то момент, вероятно, встретятся другие дисковые технологии. Поэтому считалось, что 512 байт на сектор имеют большую вероятность не всегда подходить для распределения. Это было достигнуто за счет определения кластера, кратного естественному размеру выделения аппаратного обеспечения.Наконец, в NTFS все имена файлов основаны на Unicode, а имена файлов 8.3 сохраняются вместе с длинными именами файлов.

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

NTFS лучше всего подходит для томов размером около 400 МБ и более. Это связано с тем, что производительность не снижается в NTFS, как это происходит в FAT с большими объемами.

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

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Рабочая станция Windows NT 4.0 Resource Kit, Глава 18, «Выбор файловой системы»

  • Пакет ресурсов Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Недостатки NTFS

Не рекомендуется использовать NTFS на томе размером меньше примерно 400 МБ, поскольку NTFS занимает много места. Эти накладные расходы на пространство представлены в виде системных файлов NTFS, которые обычно используют не менее 4 МБ дискового пространства на разделе размером 100 МБ.

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

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

Подробнее о недостатках NTFS см .:

  • Windows NT Server «Основные концепции и руководство по планированию», глава 5, раздел «Выбор файловой системы»

  • Рабочая станция Windows NT 4.0 Resource Kit, Глава 18, «Выбор файловой системы»

  • Пакет ресурсов Windows NT Server 4.0 «Руководство по ресурсам», глава 3, раздел под названием «Какую файловую систему использовать на каких томах»

Соглашения об именах NTFS

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

? "/ \ <> * |:

В настоящее время из командной строки можно создавать только имена файлов длиной до 253 символов.

Примечание

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

Дополнительные сведения о поддерживаемых файловых системах для Windows NT см. В Windows NT Resource Kit.

Расширенная файловая система — обзор

Различные файловые системы

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

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

Файловая система выполняет три основные функции: отслеживает выделенное и неиспользуемое пространство; он поддерживает каталоги и имена файлов; и отслеживает физические координаты каждого файла на диске.

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

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

USB-ключи используют FAT32

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

Некоторые из наиболее распространенных файловых систем, используемых сегодня:

Ext / ext2 / Ext3 / Ext4 — Расширенная файловая система, разработанная для систем Linux

FAT — Используется в DOS и Microsoft Windows, работает с 12 и 16 бит

FAT32 — FAT с 32 битами

HFS / HFS + — Иерархическая файловая система, используемая в системах Mac OS

HPFS — Высокопроизводительная файловая система, используемая в IBM OS / 2

ISO 9660 — Используется на CD и DVD-дисках на различных платформах

GPFS — Файловая система журналирования IBM, представленная в Linux, Windows и AIX

NTFS — Используется в системах Windows NT ( Windows 2000, XP, 7)

ReiserFS / 4 — Файловая система, которая использует журналирование, используется в Linux и Unix

FATX — Используется в Microsoft X-Box

LTFS — Файловая система IBM для Linux, Mac OSX и Plann ed для Microsoft Windows

ReFS — новая файловая система Microsoft Server 2012

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

FAT (Таблица размещения файлов)

Представленная Microsoft в 1983 году таблица размещения файлов (FAT) представляет собой файловую систему, которая была разработана для MS-DOS и использовалась в потребительских версиях Microsoft Windows вплоть до Windows ME. Даже с 512-байтовыми кластерами это могло дать до 32 МБ пространства — достаточно для жестких дисков XT на 10 или 20 МБ, которые были типичными в то время. Поскольку были выпущены жесткие диски размером более 32 МБ, использовались кластеры большого размера. Использование 8192-байтовых кластеров позволяло использовать файловую систему размером до 512 МБ.Однако это усугубило проблему внутренней фрагментации, когда небольшие файлы могли привести к потере большого количества места; например, 1-байтовый файл, хранящийся в 8192-байтовом кластере, приводит к 8191 байту потраченного впустую пространства.

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

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

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

FAT32 (32-разрядная таблица размещения файлов)

В 1997 году Microsoft создала FAT32 как расширение концепции FAT, поскольку возможности роста кластера были исчерпаны. FAT32 была усовершенствованием файловой системы FAT и основывалась на 32-битных записях таблицы размещения файлов, а не на 16-битных записях, используемых в предыдущей системе FAT. В результате FAT32 поддерживает диски или разделы гораздо большего размера (до 2 ТБ). Эта файловая система может использоваться в Windows 95 SP2 и Windows 98/2000 / XP.Предыдущие версии DOS или Windows не могут распознавать FAT32 и, следовательно, не могут загружаться или использовать файлы на диске или разделе FAT32. Файловая система FAT32 использует меньшие кластеры, чем файловая система FAT, имеет повторяющиеся загрузочные записи и имеет корневой каталог, который может иметь любой размер и может располагаться в любом месте диска или раздела. Максимально возможный размер файла на томе FAT32 составляет 4 ГБ. Видеоприложения, большие базы данных и некоторое другое программное обеспечение легко превышают этот предел, что является причиной того, что некоторые цифровые видеорегистраторы / сетевые видеорегистраторы, экспортирующие на USB-ключи, разбивают файлы до таких размеров.

Значения кластера FAT32 представлены 32-битными числами, из которых 28 битов используются для хранения номера кластера. Загрузочный сектор использует 32-битное поле для подсчета секторов, ограничивая размер тома FAT32 2 ТБ для размера сектора 512 байт и 16 ТБ для размера сектора 4096 байт. FAT32 была представлена ​​в Windows 95 в 1996 году, хотя для ее использования требовалось переформатирование, а DriveSpace 3 (версия, которая поставлялась с Windows 95 OSR2 и Windows 98) никогда не поддерживала ее. Windows 98 представила утилиту для преобразования существующих жестких дисков из FAT16 в FAT32 без потери данных.В линейке Windows NT встроенная поддержка FAT32 появилась в Windows 2000. Теоретически это должно поддерживать в общей сложности примерно 268 435 438 кластеров, что позволяет использовать диски размером в несколько терабайт. Однако из-за ограничений в утилите Microsoft ScanDisk, FAT не может превышать 4 177 920 кластеров, что ограничивает объем в 124,55 ГБ. В открытой спецификации FAT + предлагается, как хранить файлы большего размера до 256 ГБ на слегка измененных и обратно совместимых томах FAT32, но возникает риск того, что дисковые инструменты или реализации FAT32, не знающие об этом расширении, могут обрезать или удалять файлы, превышающие размер обычного файла FAT32. ограничение по размеру.

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

NTFS или файловая система новой технологии — это стандартная файловая система Microsoft Windows NT и ее потомков, Windows 2000, Windows XP, Windows 7 и серверов Windows. NTFS является потомком HPFS, файловой системы, разработанной Microsoft и IBM для OS / 2 в качестве замены старой файловой системы FAT MS-DOS. Усовершенствованиями по сравнению с FAT были поддержка метаданных и использование расширенных структур данных для повышения производительности, надежности и использования дискового пространства.NTFS включает в себя эти дополнительные расширения, такие как списки управления безопасным доступом и ведение журнала файловой системы. В NTFS все, что имеет отношение к файлу (имя, дата создания, права доступа и даже содержимое), записывается как метаданные. Внутри NTFS использует двоичные деревья для хранения данных файловой системы; Хотя это сложно реализовать, это обеспечивает быстрое время доступа и снижает фрагментацию. Журнал файловой системы используется, чтобы гарантировать целостность самой файловой системы (но не каждого отдельного файла).Известно, что системы, использующие NTFS, обладают повышенной надежностью, что является особенно важным требованием, учитывая нестабильный характер старых версий Windows NT.

NTFS претерпела эволюцию версий, начиная с версии 1.0 в середине 1993 года с Windows NT 3.1, затем версии 1.1 в 1994 году для NT 3.5, затем версии 1.2 для NT4 в 1996 году (иногда называемой NTFS 4.0), v.3.0 для Windows 2000 в 2000 году (иногда упоминается как NTFS 5.0), до версии 3.1 для Windows XP в 2001 году (иногда упоминается как NTFS 5.1).

Центральная системная структура файловой системы NTFS — это основная файловая таблица (MFT). NTFS хранит несколько копий критически важной части MFT для защиты от повреждения и потери данных. Подобно FAT и FAT32, NTFS использует кластеры для хранения файлов данных. Однако размер кластеров не зависит от размера диска или раздела. Можно указать размер кластера всего 512 байт, независимо от того, составляет ли раздел 6 ГБ или 60 ГБ. Использование небольших кластеров не только уменьшает объем неиспользуемого дискового пространства, , но также уменьшает фрагментацию файлов, — условие, при котором файлы разбиваются на множество несмежных кластеров, что приводит к более медленному доступу к файлам. Благодаря способности использовать небольшие кластеры NTFS обеспечивает хорошую производительность на больших дисках. Наконец, файловая система NTFS поддерживает горячее исправление — процесс, посредством которого поврежденные сектора автоматически обнаруживаются и помечаются, чтобы они не использовались.

Теоретически максимальный размер тома NTFS составляет 2 64 — 1 кластер. Однако максимальный размер тома NTFS, реализованный в Windows XP Professional, составляет 2 32 — 1 кластер, частично из-за ограничений таблицы разделов.Например, при использовании кластеров размером 64 КБ максимальный размер тома NTFS в Windows XP составляет 256 ТБ. При использовании размера кластера по умолчанию 4 КБ максимальный размер тома NTFS составляет 16 ТБ. Поскольку таблицы разделов на дисках с основной загрузочной записью (MBR) поддерживают только разделы размером до 2 ТБ, динамические тома необходимо использовать для создания томов NTFS размером более 2 ТБ. Согласно проекту максимальный размер файла NTFS составляет 16 ЭБ (16 × 1024 6 или 2 64 байт). В реализованном виде максимальный размер файла NTFS составляет 16 ТБ. В Windows 8 максимальный размер файла NTFS составляет 256 ТБ.

Ext2 / 3/4

Вторая расширенная файловая система ext2 или была стандартной файловой системой, которая использовалась в операционной системе Linux в течение ряда лет и остается широко используемой. Первоначально он был разработан Реми Кардом на основе концепций расширенной файловой системы. Это довольно быстро, достаточно, чтобы использовать его в качестве стандарта для измерения многих тестов. Его главный недостаток в том, что это не журналируемая файловая система. Файловая система Ext2 поддерживает максимальный размер диска или раздела 4 терабайта.Его преемник, Ext3, имеет журнал и совместим с Ext2.

Третья расширенная файловая система ext3 или — это журналируемая файловая система, которая все чаще используется пользователями операционной системы Linux. Хотя его производительность и масштабируемость менее привлекательны, чем у многих его конкурентов, таких как ReiserFS и XFS, у него есть значительное преимущество, заключающееся в том, что пользователи могут обновиться с популярной файловой системы Ext2 без резервного копирования и восстановления данных.Файловая система ext3 добавляет журнал, без которого файловая система является допустимой файловой системой Ext2. Файловую систему Ext3 можно смонтировать и использовать как файловую систему Ext2. Все утилиты обслуживания файловой системы для обслуживания и восстановления файловой системы Ext2 также могут использоваться с файловой системой Ext3, что означает, что Ext3 имеет гораздо более зрелый и хорошо протестированный набор утилит обслуживания, доступных, чем его конкуренты.

ext4 — четвертая расширенная файловая система с журналированием для Linux, разработанная как преемница ext3. Журнал позволяет файловой системе быстро вернуться в согласованное состояние после внепланового завершения работы системы, вызванного отключением электроэнергии или отказом системы. Эта функция значительно снижает риск повреждения файловой системы (и необходимость длительных проверок файловой системы). ReiserFS также очень эффективно обрабатывает каталоги, содержащие огромное количество небольших файлов. К сожалению, преобразование системы в ReiserFS требует, чтобы пользователи Ext2 полностью переформатировали свои диски, что является недостатком, которого не разделяет его основной конкурент Ext3.Из-за его преимуществ многие дистрибутивы Linux сделали его файловой системой по умолчанию.

Файловая система ext4 может поддерживать тома размером до 1 эксабайта (ЭБ) (1000 терабайт = 10 18 байт) и файлы размером до 16 терабайт (ТБ). Ext4 обратно совместим с ext3 и ext2, что позволяет монтировать ext3 и ext2 как ext4. Ext3 частично совместима с ext4.

Ext4 еще не имеет такой поддержки, как ext2 и ext3 в операционных системах, отличных от Linux.

Файловые системы различных ОС обрабатывают адресацию магнитных областей жесткого диска

Файловые системы ОС — E 115: Введение в вычислительную среду

Неотъемлемой частью ОС является то, что называется файловой системой. Файловая система — это структура данных, которая хранит данные и информацию на устройствах хранения (жестких дисках, дискетах и ​​т. Д.), Что делает их легко доступными. В разных ОС используются разные файловые системы, но у всех одинаковые функции.

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

В среде Windows вы найдете одну из трех файловых систем, каждая из которых имеет разные методы индексации. Первая известна как файловая система FAT (12, 16 или 32). Эта система использует так называемую таблицу размещения файлов для индексации файлов на диске.Эта таблица размещения файлов очень проста в реализации и использовании, но может работать несколько медленнее. Он разделяет жесткие диски на один или несколько разделов (частей), которые становятся буквами, например C :, D: и т. Д.

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

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

В среде macOS вы найдете файловую систему HFS +. HFS Plus или HFS + использует так называемое B-Tree для индексации файлов на жестких дисках. B-деревья (которые отличаются от двоичного дерева) обеспечивают быстрое время доступа, как и двоичное дерево.С июня 2016 года Apple внедрила свою новую файловую систему «APFS», которая также использует B-Tree для индексации файлов. Это стало заменой HFS + в macOS High Sierra и новее, а также в iOS 10.3+.

В зависимости от того, какой тип среды Linux вы используете, вы можете работать с несколькими различными файловыми системами. Некоторые из них — ext2, ext3 и ext4. Также используются XFS, JFS и некоторые другие. Наиболее распространенным является ext3, расширение журналирования файловой системы ext2 в Linux.Ведение журнала — это метод записи данных, который приводит к значительному сокращению времени, затрачиваемого на восстановление файловой системы после сбоя.

Leave a comment