원문 보기: https://dawoum.duckdns.org/wiki/Extent_(file_systems)
컴퓨팅에서, 익스텐트(extent)는 파일 시스템에서 파일에 대해 예약된 연속적인 저장의 영역으로, 블록 번호의 범위, 또는 카운트 키 데이터 장치 위에 트랙으로 표현됩니다. 파일은 0개 이상의 익스텐트로 구성될 수 있습니다; 하나의 파일 조각은 하나의 익스텐트를 요구합니다. 직접적인 이점은 범위 내의 모든 각 블록 번호를 정식적으로 저장하는 대신, 각 범위를 두 개의 숫자로 간결하게 저장하는 것입니다. 역시, 익스텐트 할당은 파일 조각화를 줄이는 결과를 초래합니다.
범위-기반 파일 시스템은 역시 전통적으로 블록-할당 트리에 의해 차지했던 대용량 파일의 메타데이터 오버헤드 대부분을 제거할 수 있습니다. 그러나 절약은 (일반적으로 모든 파일 크기에 대해) 저장된 데이터 양에 비해 적지만 (큰 파일에 대해) 메타데이터의 상당 부분을 차지하기 때문에, 저장 효율성과 성에서 전반적인 이점은 미미합니다.
조각화를 방지하기 위해, 여러 익스텐트-기반 파일 시스템은 플러시-시-할당을 합니다. 많은 최신 내-결함성 파일 시스템도 쓰기-시-복사를 수행하지만, 조각화를 증가시킵니다. 유사한 설계로, CP/M 파일 시스템도 익스텐트를 사용하지만, 위에서 주어진 정의에 해당하지 않습니다. CP/M의 익스텐트는 조합된 디렉토리/할당 테이블에서 단일 블록으로 연속적으로 나타나고, 그것들은 디스크의 연속된 데이터 영역에 해당할 필요는 없습니다.
IBM OS/360과 후속 제품은 디스크 트랙 또는 실린더의 배수로 파일을 할당합니다. 파일은 원래 최대 16개의 익스텐트를 가질 수 있었지만, 이 제한은 그 이후로 해제되었습니다. 초기 할당 크기와 요구된다면 할당될 추가 익스텐트의 크기는 사용자에 의해 Job Control Language를 통해 지정합니다. 시스템은 초기 크기를 연속된 영역으로 할당하려고 시도하지만, 이것은 연속된 공간을 사용할 수 없으면 분할될 수 있습니다.
Adoption
The systems supporting filesystem extents include the following:
- APFS – Apple File System
- ASM – Automatic Storage Management – Oracle's database-oriented filesystem
- BFS – BeOS, Zeta and Haiku operating systems
- Btrfs – Extent-based copy-on-write (COW) file system for Linux
- EFS – Extent File System – SGI's first-generation file system for Irix
- Ext4 – Linux filesystem (when the configuration enables extents – the default in Linux since version 2.6.23)
- Files-11 – OpenVMS filesystem
- HFS and HFS Plus – Hierarchical File System – Apple Macintosh filesystems
- High Performance File System (HPFS) – on OS/2, eComStation and ArcaOS
- IceFS – IceFileSystem – optional file system for MorphOS
- JFS – Journaled File System – used by AIX, OS/2/eComStation/ArcaOS and Linux operating systems
- ISO 9660 – Extent-based file system for optical disc media
- Microsoft SQL Server – versions 2000–2008 support extents of up to 64 KB
- Multi-Programming Executive – a filesystem by Hewlett-Packard
- NTFS
- 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 for Irix and Linux
References
- "Understanding Ext4 (part1): Extents". 2010-12-20. Archived from the original on 2015-02-03. Retrieved 2015-02-02. What's really a departure for EXT4 however, is the use of extents rather than the old, inefficient indirect block mechanism used by earlier Unix file systems (e.g. EXT2 and EXT3) for tracking file content. Extents are similar to cluster runs in the NTFS file system; essentially, they specify an initial block address and the number of blocks that make up the extent. A file that is fragmented will have multiple extents, but EXT4 tries very hard to keep files contiguous.
- "Ext4 Disk Layout". 2015-01-26. Retrieved 2015-02-02. If flex_bg is enabled, it is possible to allocate very large files with a single extent, at a considerable reduction in metadata block use, and some improvement in disk efficiency.
- "Understanding Pages and Extents". Microsoft Developer Network. Retrieved 2014-08-14.
External links
- Getting to know the Solaris filesystem, Part 1: Allocation and storage strategy – a comparison of block-based and extent-based allocation