Файловая система — что это такое и их виды

Файловая система и её компоненты

Что подразумевается под компонентами файловой системы? Это одинаково корректное описание для всех операционных систем, и включает в себя 4 основных составляющих:

В то время, как подавляющее число дисковых накопителей внутри ПК пользователей сегодня имеют SATA интерфейс, настоящие короли по скорости обмену информацией – твердотельные диски (SSD). SATA будут ещё долго находиться в чреве машин как зарекомендовавшие себя надёжные устройства, объём которых растёт и пока недосягаем для переносных накопителей. И, чтобы там не говорили, нередко при обновлении конфигурации компьютера «старый» жёсткий диск успешно перекочёвывает в новую систему, позволяя при правильном обращении работать годами. Единственной тому помехой являются:

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

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

скорость передачи данных жёсткого диска

а в USB 3.0 скорость передачи может достигать и 5 Гбит/сек

Видно, что у твердотельных дисков минус пока один – они дороги, однако, несомненны их преимущества:

  • Нет вращающихся частей
  • Устойчивы к механическим повреждениям
  • По заявлению разработчиков, время безотказной работы увеличилось до 1 млн. часов (против 750 тыс. для SATA)
  • Производительность чрезвычайно высока
  • Разъёмы и под 2,5 и под 3,5 дюймов
  • Интерфейсы питания аналогичны как и для SATA дисков
  • Наконец, просто они легче.

Причины известны, а тенденции понятны: в смартфонах и планшетных компьютерах не до вращающихся и хрупких устройств. А информацию всё равно приходится запихивать — ну что могут традиционные на сегодня встроенные 32 Гбайт? Так что изначально на компьютерах, а теперь на планшетах Windows в том числе предусмотрела возможность подключения, а, значит и разбиения существующих, новых хранилищ. Пользователи Windows 10 (планшетной версии) заметили, что в ней возможность использовать внешний диск SDHC полноценно с загрузкой, установкой и последующим запуском программ появилась вполне официально.

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

Файловая система (File System, ФС) — определяет и контролирует, как будут храниться и именоваться данные на носителе/накопителе информации: флешке, жестком или ssd диске и других. От нее зависит способ хранения данных на накопителе, сам формат данных и то, как они будут записываться/читаться в дальнейшем.

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

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

Что определяет файловая система:

  • Структура
  • Правила хранения и чтения данных
  • Размер кластеров
  • Формат содержимого
  • Размер имен файлов
  • Максимально возможный размер файла и раздела. К примеру, в ФАТ32 максимальный размер всего 4 ГБ, т.е. 4 294 967 295 байт.
  • Набор атрибутов файла

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

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

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

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

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

Какие еще бывают файловые системы?

На мобильных устройствах с ОС Android используется файловая система ext2/ext4, но только в установленном накопителе. Съемные карты памяти работают на системе FAT32.

Файловая система exFAT – модификация FAT32, отличающаяся возможностью работы с файлами размером более 4 ГБ и имеющая более динамичную систему поиска. Ее использование ограничено лицензионным соглашением.

ReFS – новейшая разработка Microsoft для ОС Windows 8 и Windows 10 Enterprise и Pro для рабочих станций. Возможность создания тома ReFS удалена в Windows 10 Fall Creators Update 2017. Файловая система ReFS отличается высокой степенью надежности хранения файлов и легким их восстановлением в случае сбоя.

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

Компания Apple использует собственные файловые системы HFS+ и Apple Xsan.

В дистрибутивах Linux, в зависимости от назначения устройства, используется около десятка файловых систем. Самые распространенные в пользовательском сегменте: Ext2, Ext3, Ext4.

Что же такое файловая система и для чего она нужна?

Файловая система по-простому говоря, это система, которая служит для хранения файлов и папок на жестком диске или на другом носителе, флешке, телефоне, камере и т.д. А так же для упорядочивании файлов и папок: перемещения их, копирования, переименования. Так что за все ваши файлы отвечает эта система, вот почему она так важна.

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

Устройство NTFS. Главная таблица файлов MFT

Как и любая другая файловая система, NTFS делит все полезное место на кластеры — минимальные блоки данных, на которые разбиваются файлы. NTFS поддерживает почти любые размеры кластеров — от 512 байт до 64 Кбайт. Однако общепринятым стандартом считается кластер размером 4 Кбайт. Именно он используется по умолчанию. Принцип существования кластеров можно проиллюстрировать следующим при­мером.

Если у вас размер кластера составляет 4 Кбайт (что скорее всего), а нужно сохранить файл, размером 5 Кбайт, то реально под него будет вы­делено 8 Кбайт, так как в один кластер он не помещается, а под файл дисковое пространство выделяется только кластерами.

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

Помимо MFT , имеется еще 15 специальных файлов (вместе с MFT — 16), которые недоступны операционной системе и называются метафайлами . Имена всех метафайлов начинаются с символа $, но стандартными средствами операционной системы просмотреть их и вообще увидеть не представляется возможным. Далее для примера представлены основные метафайлы:

  • SMFT — сам MFT.
  • $MFTmirr — копия первых 16 записей MFT, размещенная посе­редине диска (зеркало).
  • $LogFile — файл поддержки журналирования.
  • $Volume — служебная информация: метка тома, версия файловой системы, и т.д.
  • $AttrDef — список стандартных атрибутов файлов на томе.
  • $ — корневой каталог.
  • $Bitmap — карта свободного места тома.
  • $Boot — загрузочный сектор (если раздел загрузочный).
  • $Quota — файл, в котором записаны права пользователей на ис­пользование дискового пространства.
  • $Upcase — файл-таблица соответствия заглавных и прописных букв в именах файлов на текущем томе.

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

Что касается принципа организации данных на диске NTFS, то он условно делится на две части. Первые 12% диска отводятся под так называемую MFT-зону — пространство, в которое растет метафайл MFT.

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

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

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

Кроме того, при не дефрагментированном MFT-файле вся файловая система работает быстрее. Соответственно чем более дефрагментированным является MFT-файл, тем медленней работает файловая система.

Что касается размера MFT-файла, то он примерно вычисляется, исходя из 1 МБ на 1000 файлов.

Цели, состав и функции

Цели использования файловой системы:

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

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

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

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

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

Какие бывают файловые системы

Для Windows используются два файловые системы:

  1. FAT (File Allocation Table).
  2. NTFS (New Technology File System).

Для UNIX систем это:

  1. UFS (Unix File System).
  2. S5 (применительно к System V).
  1. Ext (Extended File System).
  2. Reiser.

Физическая организация файловых систем

Обычные HDD диски состоят из:

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

Организация физического диска

Логические диски

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

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

На одном логическом диске может использоваться только одна файловая система.

На моем примере.

Логические диски

В моем случае диск C это часть физического SSD диска. Диски D и E — полностью два физических диска. Часто один физический диск разбивают на два логически C и D.

Физические диски

Возможные варианты организации логических дисков:

  • Один физический – один логический.
  • Один физический – несколько логических.
  • Несколько физических – один логический.

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

RAID (англ. Redundant Array of Independent Disks — избыточный массив независимых (самостоятельных) дисков) — технология виртуализации данных для объединения нескольких физических дисковых устройств в логический модуль для повышения отказоустойчивости и/или производительности.

https://ru.wikipedia.org/wiki/RAID

На картинке выше видно что один диск (диск C) помечен как загружаемый (системный) иконкой слева.

Высокоуровневое форматирование диска

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

При форматировании пространство логического диска разбивается на кластеры определенного размера.

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

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

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

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

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

В файловой системе NTFS данные организуются следующим образом.

Организация данных в NTFS

Организация данных в NTFS

Возникает вопрос, а что же такое файл?

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

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

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

Типы файлов

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

Специальные файлы – фиктивные файлы, которые ассоциируются с устройствами ввода-вывода.

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

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

Иерархическая структура файловой системы состоит из следующих элементов:

  • Дерево – файл может входить только в один каталог.
  • Сеть – файл может входить в несколько каталогов.

Корневым называют каталог верхнего уровня.

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

Иерархическая структура файловой системы

Монтирование логических дисков

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

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

Выводы

Как видим, для каждой операционной системы существует своя оптимальная файловая система, которая позволяет наиболее эффективно работать с данными. Например, для Windows – это NTFS, для MacOS – HFS+ или APFS. Исключением из правила можно считать лишь многочисленные дистрибутивы Linux. Здесь имеется не один десяток файловых систем, каждая со своими преимуществами и недостатками.

Большинству же пользователей Windows стоит запомнить лишь три наиболее распространённые ФС: FAT32 – для небольших флешек и старого оборудования, NTFS – для большинства компьютеров и exFAT – для ёмких флеш-накопителей и внешних SSD-дисков (об актуальности форматирования системного диска в exFAT до сих пор спорят в виду отсутствия журналирования и большей подверженности сбоям).

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector