728x90
ext, ext2, ext3, ext4의 차이점
리눅스에서 사용되는 파일 시스템 중 ext, ext2, ext3, ext4는 각각의 특징과 발전 과정을 가지고 있습니다. 이 글에서는 각 파일 시스템의 주요 특징과 차이점을 살펴보겠습니다. 설명하기에 앞서 remy card는 사람 이름입니다. 프랑스 소프트 개발자고 ext와 ext2를 만들었습니다.
ext (Extended File)
- 개발자: Remy Card, 프랑스의 소프트웨어 개발자
- 출시: 1992년 4월
- 특징:
- 리눅스 운영체제를 위해 설계된 첫 번째 파일 시스템입니다.
- MFS(MINIX File System)의 한계를 극복하기 위해 개발되었습니다.
- 최대 파일 시스템 크기는 2GB이며, 파일 이름의 최대 길이는 256바이트입니다.
- 그러나 분리 접근, 아이노드 수정, 자료 수정 타임스탬프 등의 기능은 지원하지 않습니다.
- 연결 리스트를 사용하여 프리블록과 아이노드를 관리하지만, 이는 조각화를 초래하는 단점이 있습니다.
ext2 (Second Extended File)
- 개발자: Remy Card
- 출시: 1993년 1월
- 특징:
- ext의 문제점을 해결하기 위해 개발된 파일 시스템입니다.
- 안정성과 성능이 개선되었으며, 255자까지의 긴 파일 이름과 타임스탬프를 지원합니다.
- 최대 파일 시스템 크기는 블록 사이즈에 따라 2TiB에서 32TiB까지 확장 가능합니다.
- 서브디렉토리 개수 제한은 32,768개입니다.
ext3 (Third Extended File)
- 개발자: Stephan Tweedie
- 출시: 2001년 11월
- 특징:
- ext2에 저널링 기능을 추가하여 데이터 손실 가능성을 줄였습니다.
- 온라인 파일 시스템 증대와 HTree4 인덱싱 등의 기능이 포함되어 있습니다.
- ext2와의 호환성 덕분에 데이터 손실 없이 ext2에서 ext3로 변환할 수 있습니다.
- 단점으로는 온라인 조각모음 프로그램이 없고, 체크섬 검사를 수행하지 않는 점이 있습니다.
- 서브디렉토리 개수 제한은 31,998개입니다.
ext4 (Fourth Extended File)
- 개발자: Mingming Cao, Andreas Dilger, Alex Tomas 등
- 출시: 2006년 8월(unstable), 2008년 8월(stable)
- 특징:
- 최대 1EB의 볼륨과 16TB의 파일을 지원합니다.
- extents 방식으로 블록 매핑을 개선하여 조각화를 줄이고 큰 파일 처리 성능을 향상합니다.
- ext2 및 ext3 파일 시스템과의 호환성을 유지합니다.
- 저널 체크섬 기능이 추가되어 파일 시스템 손상 가능성이 줄어들었습니다.
- 서브디렉토리 개수 제한이 32,000개에서 64,000개로 증가했습니다.
- 온라인 조각모음, 빠른 파일 시스템 검사, 나노초 단위의 타임스탬프 지원 등의 기능이 추가되었습니다.
- 디스크 공간을 프로그램이 실제로 사용하기 전에 할당하는 영속적 선행 할당과 지연 할당 기능이 포함되어 성능이 향상됩니다.
마무리
ext, ext2, ext3, ext4 파일 시스템은 리눅스에서 데이터 저장 및 관리를 위해 발전해 왔습니다. 각 파일 시스템은 고유의 특징과 장점을 가지고 있으며, 사용자의 요구에 따라 적절한 파일 시스템을 선택하는 것이 중요합니다. 이러한 파일 시스템의 발전은 리눅스 환경에서의 안정성과 성능을 크게 향상시켰습니다.
728x90