Red Hat Enterprise Linux File Systems
파일시스템 ext2, ext3 , XFS, ext4, Btrfs 에 대한 비교와 구조 설명
성능 비교/파일시스템의 제한등의 내용을 상세히 담고 있습니다.
아래는 Ext4에 대한 특징들입니다.

Ext4
● 개발자들은 Mingming Cao, Andreas Dilger, Alex Tomas, Dave Kleikamp, Theodore Ts'o, Eric Sandeen, Sam Naghshineh, 기타 입니다.
● Red Hat Enterprise Linux 5.3 와5.4 에서 Tech preview 로 지원됩니다.
● ext3의 확장적인 측면으로 시작되었습니다.
- ext3보다 성능 확장성, 신뢰성의 이슈가 좋아졌습니다.
- Fork of ext3 in 2006 to not affect current ext3 users
- 2008년도 2.6.28 커널에 안정적으로 추가되었습니다.
● Fedora 11 과 다른 배포판에 기본적으로 탑재되었습니다.
- Fedora 11 – first distribution shipping a testing version
- Red Hat Enterprise Linux 5.1 – first EL w/tech preview
● ext2 와 ext3의 호환성
- Can mount existing ext2 and ext3 file systems as ext4
- Can mount ext4 as ext3
- ... assuming extents were never used
● Delayed allocation
- Don't allocate blocks until data is going to be written to disk
- Improves performance
- Reduces fragmentation – allocations based upon actual file size
● Multiblock allocator
- Multiple blocks for a file allocated in a single operation
- Reduces fragmentation by choosing contiguous blocks
● Delayed and multiblock allocation observed benefits
-- Improved throughput by 30%
-- Reduced CPU usage by 50%
● Extents
- Replaces block mapping as used in ext2 and ext3
- Range of contiguous blocks
- Start/length pairs
- 215 blocks ? 128 MB with 4 KB block size
- Improves large file performance and reduces fragmentation
- Up to 4 extents can be stored in the inode, additional indexed in an Htree
- Extents w/48-bit block numbers (vs. 32-bit in ext3)...
- 16 TB (ext3) ? 1 EB (ext4 with 4 KB block size) max file size
● Persistent file pre-allocation
- Old way – write a file full of 0s
- New way – reserve but don't take time to write out 0s
- Guaranteed available (unlike a sparse file)
- Likely contiguous
- Ideal for media streaming and databases
● 32,000 ? 64,000+ subdirectories in a directory
● Improved timestamps
- Second ? nanosecond granularity
- Year 2038 problem deferred to 2514
● Online defrag of individual files or entire file system
- e4defrag
- Currently in git and Fedora Rawhide
● Journal and block group checksums
● Faster fsck
- Problem: full fsck of 2 TB ext3 on high end RAID ? 2 to 4 hours to days
- Unallocated block groups and inodes are marked and don't need to be fsck'ed
- Consequence: 2x to 10x+ speed up
- Enabled by default or via -O uninit_groups
degts_1010_rhel_file_systems.pdf