Extent File System

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
EFS
Разработчик SGI
Файловая система Extent File System
Дата представления (IRIX)
Ограничения
Максимальный размер файла 2 ГБ минус 1 Бт
Максимальный размер тома 8 ГБ
Возможности
Свойства Время модификации (mtime), attribute modification (ctime), время последнего доступа (atime)
Диапазон дат 14 декабря 1901 г. - 18 января 2038 г.
Точность хранения даты 1 секунда
Права доступа POSIX
Фоновая компрессия нет
Фоновое шифрование нет
Поддерживается ОС IRIX, Linux, BSD

Extent File System или EFS — устаревшая, основанная на экстентах файловая система, используемая в IRIX до версии 5.3. В дальнейшем заменена XFS.

Файловая система EFS является оригинальной файловой системой IRIX. Максимальный размер файловой системы EFS составляет около 8 Гб. Она использует размер блока 512 байт и позволяет максимальный размер файла 2 ГБ минус 1 байт.

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

Индексные дескрипторы создаются в момент создания файловой системы EFS, а не в момент создания файла. При создании файла под него просто выделяется индексный дескриптор. Таким образом, максимальное количество файлов в файловой системе, ограничено количество индексных дескрипторов в файловой системе. По умолчанию число созданных индексных дескрипторов является функцией от размера раздела или логического тома. Обычно один индексный дескриптор создается для каждых 4 КБ раздела или логического тома. Есть возможность указать число узлов используя опцию -n команды mkfs. Индексные дескрипторы занимают дисковое пространство, поэтому существует компромисс между количеством дескрипторов и количеством свободного места на диске для файлов.

Первый блок файловой системы EFS не используется. Информация о файловой системе хранится во втором блоке файловой системы (блок 1), называется суперблок. Эта информация включает в себя:

  • Размер файловой системы, количество как физических, так и логических блоков
  • Флаг «только для чтения», если установлен, файловая система только для чтения
  • Флаг «суперблок модифицирован», если установлен, суперблок был изменен
  • Дата и время последнего изменения
  • Общее количество выделенных индексных дескрипторов
  • Общее количество свободных индексных дескрипторов
  • Общее количество свободных блоков
  • Номер первого свободного блока в битовой карте

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

Индексный дескриптор содержит 12 экстентов, которые могут содержать 1536 блоков, или 786432 байт. Если файл не помещается в 12 экстентов, то, начиная со 148-го адреса используются косвенные (indirect) экстенты. Косвенные экстенты, содержащие фактические данные, и составляют файл. В силу этой особенности архитектуры в EFS возможно создавать файлы размером до 2 Гб.

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