Extent (file systems)
|This article needs additional citations for verification. (September 2008)|
An extent is a contiguous area of storage in a computer file system, reserved for a file. When a process creates a file, file-system management software allocates a whole extent. When writing to the file again, possibly after doing other write operations, the data continues where the previous write left off. This reduces or eliminates file fragmentation and possibly file scattering too.
An extent-based file system (i.e., one that addresses storage via extents rather than in single blocks) need not require limiting each file to a single, contiguous extent.
The following systems support extents:
- ASM - Automatic Storage Management - Oracle's database-oriented filesystem.
- BFS - BeOS, Zeta and Haiku operating systems.
- Btrfs - GPL'd extent based file storage for Linux.
- Ext4 - Linux filesystem (when the configuration enables extents — the default in Linux since version 2.6.23).
- Files-11 - Digital Equipment Corporation (subsequently Hewlett-Packard) OpenVMS filesystem.
- HFS and HFS Plus - Hierarchical File System - Apple Macintosh filesystems.
- HPFS - High Performance File Syzstem - OS/2 and eComStation.
- JFS - Journaled File System - Used by AIX, OS/2/eComStation and Linux operating systems.
- Melio FS - a shared disk file system for Windows from Sanbolic.
- Microsoft SQL Server - Versions 2000-2008 supports extents of up to 64KB .
- Multi-Programming Executive - Filesystem by Hewlett-Packard.
- NTFS - Microsoft's latest-generation file system
- OCFS2 - Oracle Cluster File System - a shared disk file system for Linux.
- Reiser4 - Linux filesystem (in "extents" mode).
- SINTRAN III - File system used by early computer company Norsk Data.
- UDF - Universal Disk Format - Standard for optical media.
- VERITAS File System - Enabled via the pre-allocation API and CLI.
- XFS - SGI's second generation file system.
The CP/M file system uses extents as well, but those don't correspond to the definition given above. CP/M's extents appear contiguously as a single block in the combined directory/allocation table; they do not necessarily correspond to a contiguous data-area on disk.
|Look up extent in Wiktionary, the free dictionary.|
- Getting to know the Solaris filesystem, Part 1: Allocation and storage strategy — comparison of block-based and extent-based allocation