ext2

ext2
ext2
Разработчик

Реми Кард (англ.)

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

Second extended file system

Дата представления

Январь 1993 (Linux)

Метка тома

Apple_UNIX_SVR2 (Apple Partition Map)
0x83 (Master Boot Record)
EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)

Структура
Содержимое папок

Таблица

Размещение файлов

Битовая карта (свободное место), Таблица (метаданные)

Сбойные сектора

Таблица (используется та же таблица, что и для файлов)

Ограничения
Максимальный размер файла

16 ГБ - 2 ТБ

Максимум файлов

1018

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

255 байт

Максимальный размер тома

2-32 ТБ

Допустимые символы в названиях

Любой байт, кроме NULL и '/'

Возможности
Свойства

Время модификации (mtime), attribute modification (ctime), время последнего доступа (atime)

Диапазон дат

14 декабря 1901 г. - 18 января 2038 г.

Точность хранения даты

1 секунда

Права доступа

POSIX

Фоновая компрессия

нет (доступна через патчи)

Фоновое шифрование

нет

Поддерживается ОС

Linux, BSD, Windows (через IFS или ext2fsd), Mac OS X (через IFS)

Second Extended File System (дословно: «вторая расширенная файловая система»), сокращённо ext2 (иногда ext2fs) — файловая система ядра Linux. Была разработана Реми Кардом (англ.) взамен существующей тогда ext. По скорости и производительности работы она может служить эталоном в тестах производительности файловых систем. Так, в тестах на скорость последовательного чтения и записи, проведённых The Dell TechCenter, файловая система ext2 обгоняет ext3, и уступает лишь более современной ext4 в тесте на чтение.[1]

Главный недостаток ext2 (и одна из причин демонстрации столь высокой производительности) заключается в том, что она не является журналируемой файловой системой. Он был устранён в файловой системе ext3 — следующей версии Extended File System, полностью совместимой с ext2.

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

Содержание

История

На заре развития Linux использовала файловую систему ОС Minix. Она была довольно стабильна, но оставалась 16-разрядной и, как следствие, имела жёсткое ограничение в 64 Мегабайта на раздел. Также присутствовало ограничение на максимальную длину имени файла: оно составляло 14 символов. Эти и другие ограничения послужили стимулом к разработке «расширенной файловой системы» (англ. Extended File System), решавшей две главные проблемы Minix. Новая файловая система была представлена в апреле 1992 года. Ext расширила ограничения на размер файла до 2 гигабайт[2] и установила предельную длину имени файла в 255 символов.

Тем не менее, оставалось ещё много нерешённых проблем: не было поддержки раздельного доступа, временных меток модификации данных. Именно эти проблемы послужили инициативой для создания следующей версии расширенной файловой системы ext2 (англ. Second Extended File System), разработанной в январе 1993 года. В ext2 были также реализованы соответствующие стандарту POSIX списки контроля доступа ACL и расширенные атрибуты файлов.

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

Сетевая иерархия каталогов файловой системы ext2

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

Все типы файлов имеют символьные имена. В иерархически организованных файловых системах обычно используются три типа имен: простые, составные и относительные. Не является исключением и ext2. Ограничения на простое имя состоят в том что, его длина не должна превышать 255 символов, а также в имени не должны присутствовать символ NULL и слеш. Ограничения на символ NULL связаны с представлением строк в языке Си, а на символ слеш — с тем, что он используются как разделительный символ между каталогами. Полное имя представляет собой цепочку простых символьных имен всех каталогов, через которые проходит путь от корня до данного файла. В файловой системе ext2 файл может входить в несколько каталогов, а значит, иметь несколько полных имен; здесь справедливо соответствие «один файл — много полных имен». В любом случае полное имя однозначно определяет файл.

Атрибутами файловой системы ext2 являются:

  • тип и права доступа к файлу,
  • владелец, группа доступа,
  • информация о разрешённых операциях,
  • время создания, дата последнего доступа, дата последнего изменения и время последнего удаления,
  • текущий размер файла,
  • спецификация файла:
  • число занимаемых блоков,
  • ACL
  • другие

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

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

Структура дискового раздела

Как и в любой файловой системе UNIX, в составе ext2 можно выделить следующие составляющие:

Всё пространство раздела диска разбивается на блоки фиксированного размера, кратные размеру сектора: 1024, 2048, 4096 или 8192 байт. Размер блока указывается при создании файловой системы на разделе диска. Меньший размер блока позволяет сэкономить место на жёстком диске, но также ограничивает максимальный размер файловой системы. Все блоки имеют порядковые номера. С целью уменьшения фрагментации и количества перемещений головок жёсткого диска при чтении больших массивов данных блоки объединяются в группы блоков.

Базовым понятием файловой системы является индексный дескриптор, или inode (англ. information node). Это специальная структура, которая содержит информацию об атрибутах и физическом расположении файла. Индексные декрипторы объединены в таблицу, которая содержится в начале каждой группы блоков.

Обобщенная структурная схема ФС ext2

Суперблок — основной элемент файловой системы ext2. Он содержит общую информацию о файловой системе:

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

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

Группа блоков

Все блоки раздела ext2 разбиваются на группы блоков. Для каждой группы создаётся отдельная запись в глобальной дескрипторной таблице, в которой хранятся основные параметры:

  • номер блока в битовой карте блоков,
  • номер блока в битовой карте inode,
  • номер блока в таблице inode,
  • число свободных блоков в группе,
  • число индексных дескрипторов, содержащих каталоги.

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

Система адресации данных

Система адресации ФС ext2

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

Файловая система ext2 использует следующую схему адресации блоков файла. Для хранения адреса файла выделено 15 полей, каждое из которых состоит из 4 байт. Если файл умещается в 12 блоков, то номера соответствующих кластеров непосредственно перечисляются в первых двенадцати полях адреса. Если размер файла превышает 12 блоков, то следующее поле содержит адрес кластера, в котором могут быть расположены номера следующих блоков файла. Таким образом, 13-е поле используется для косвенной адресации.

При максимальном размере блока в 4096 байт кластер, соответствующий 13-му полю, может содержать до 1024 номеров следующих блоков файла. Если размер файла превышает 12+1024 блоков, то используется 14-е поле, в котором находится адрес кластера, содержащего 1024 номеров кластеров, каждый из которых ссылается на 1024 блока файла. Здесь применяется уже двойная косвенная адресация. И наконец, если файл включает более 12+1024+1048576 блоков, то используется последнее 15-е поле для тройной косвенной адресации.

Данная система адресации позволяет при максимальном размере блока в 4096 байт иметь файлы, размер которых превышает 2 TB.

См. также

Примечания

  1. A Comparison of Ext2, Ext3 and Ext4 Performance  (англ.). The Dell TechCenter (29 марта 2010 г.). Архивировано из первоисточника 25 августа 2011. Проверено 7 ноября 2010.
  2. M. Тим Джонс Анатомия ext4. Знакомимся с четвертой расширенной файловой системой. IBM developerWorks (30 июня 2009). Архивировано из первоисточника 25 августа 2011. Проверено 6 июля 2010.

Литература

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "ext2" в других словарях:

  • Ext2 — Hersteller Rémy Card Vollständige Bezeichnung Second extended file system Erstveröffentlichung Januar 1993 (Linux) Partitionskennung Apple UNIX SVR2 (Apple Partition Map) 0x83 (Master Boot Record) EBD0A0A2 B9E5 4433 87C0 68B6B72699C7 (GPT …   Deutsch Wikipedia

  • ext2 — Hersteller Rémy Card Vollständige Bezeichnung Second extended file system Erstveröffentlichung Januar 1993 (Linux) Partitionskennung Apple UNIX SVR2 (Apple Partition Map) 0x83 (Master Boot Record) EBD0A0A2 B9E5 4433 87C0 68B6B7269 …   Deutsch Wikipedia

  • Ext2 — или 2я расширенная файловая система  файловая система для ядра Linux. Она была разработана Rémy Card ом в качестве замены для extended file system. Она достаточно быстра для того, чтобы служить эталоном в тестах производительности файловых… …   Википедия

  • Ext2 — Saltar a navegación, búsqueda ext2 Desarrollador Rémy Card Nombre completo Second extended file system Introducido Enero de 1993 (Linux) Identificador de la partición Apple UNIX SVR2 (Apple Partition Map) 0x83 ( …   Wikipedia Español

  • Ext2 — Diffuseur de logiciel Rémy Card Nom anglais Extended file system 2 Introduction Janvier 1993 (Linux 2.?) Identificateur de partition 0x83 ( …   Wikipédia en Français

  • ext2 — Développeur Rémy Card Nom anglais Extended file system 2 Introduction Janvier 1993 (Linux 0.99.?) Identificateur de partition 0x83 (MBR) Structure Contenu des répertoires …   Wikipédia en Français

  • EXT2 — can refer to:*EXT2, a human gene *ext2, a file system for the Linux kernel …   Wikipedia

  • EXT2 — (second extended filesystem o segundo sistema de archivos extendido ) fue el sistema de archivos estándar en el sistema operativo GNU/Linux por varios años y continúa siendo ampliamente utilizado. Fue diseñado originalmente por Rémy Card. La… …   Enciclopedia Universal

  • Ext2 — infobox filesystem name = ext2 full name = Second extended file system developer = Rémy Card introduction os = Linux introduction date = January 1993 partition id = Apple UNIX SVR2 (Apple Partition Map) 0x83 (Master Boot Record) EBD0A0A2 B9E5… …   Wikipedia

  • Ext2-2 — Der Begriff ext steht für das unter Linux verwendete Dateisystem extended file system, der Nachfolger des Minix Dateisystems und Vorgänger von ext2, ext3 und ext4 die mathematische Gruppe, siehe Ext (Mathematik) das clientseitige JavaScript bzw.… …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»