Extent File System


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 смежных блоков.