Екстент
Екстент (англ. extent — протяжність) — у файлових системах, безперервна область носія інформації. Як правило, у файлових системах з підтримкою екстентів великі файли складаються з декількох екстентів, не пов'язаних один з одним безпосередньо.
Екстенти і блоки
У багатьох файлових системах, в загальному випадку, файл зберігається у вигляді «заголовка», тобто якоїсь відносно невеликої структури даних (наприклад, inode і непрямих блоків в ext3 або рядка Master File Table в NTFS), яка містить вказівники на ділянки носія інформації, де по шматках зберігається вміст файлу. У традиційних файлових системах це покажчики на окремі блоки (мінімальні ділянки носія, які можна прочитати або записати за раз). У ряді сучасних файлових систем використовуються покажчики не на блоки, а на екстенти.
Використання вказівників на екстенти має ряд переваг над схемою з вказівками на окремі блоки. Оскільки всі дані в одному екстенті розташовані на диску поспіль, то підвищується швидкість читання і запису файлу і знижується ступінь фрагментації дискового простору. При однаковому розмірі і організації структури даних «заголовка» файлу, файлова система з підтримкою екстентів буде мати більший максимальний розмір файлів.
Головний недолік екстентів — підвищена складність реалізації файлової системи.
Слід зауважити, що використання алгоритму розподілу блоків, який розподіляє їх, за можливості, з безперервної ділянки, підвищує швидкість читання і запису даних і частково компенсує відсутність підтримки екстентів.[1] Швидкість доступу до файлу також можна підвищити, якщо заздалегідь зарезервувати під файл безперервну ділянку на диску (наприклад, через системний виклик fallocate в Unix або через SetFileValidData і SetEndOfFile в Microsoft Windows).
Відомі файлові системи з підтримкою екстентів
Примітки
- L. W. McVoy; S. R. Kleiman (1991). Extent−like Performance from a UNIX File System (PostScript) USENIX − Winter ’91. Даллас. Процитовано 13.08.2008.
- CS 537 Notes, Section #26: Windows (NT) File System[недоступне посилання] : [арх. 21.09.2008]. — Дата звернення: 13.08.2008.
Посилання
- Getting to know the Solaris filesystem, Part 1 : Learn all about the inner workings of your on-disk filesystem, including allocation management, storage capacity and access control list support, and metadata logging / Richard McDougall // SunWorld. — 1999. — May.