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