필수는 아니지만 얼마 전 게시물 중 할당 이론이 있습니다. 어느 정도 유사한 내용이 있으니 도움이 될 수도 있습니다.
LINUX의 파일 시스템은 현재 EXT4입니다. 아직까지도 EXT3을 사용하는 리눅스도 꽤 많은 비중을 차지하고 있으며 EXT4는 EXT3, 2와 유사합니다.
EXT
EXT는 unix의 파일 시스템과 유사한 linux의 파일 시스템입니다. EXT는 파일의 대한 정보를 찾기 위해 inode를 사용합니다. inode의 테이블에는 파일 이름, 파일 크기, 파일의 소유자 파일이 속한 그룹, 파일에 대한 접근 권한, 파일의 데이터를 가리키는 포인터 항목이 존재합니다. inode마다 각 고유번호가 존재하는데 이를 통해 파일을 식별합니다.
EXT2는 EXT버전의 기본 구조를 따라간 채 업그레이드된 버전으로 나왔습니다. 최대 파일 크기도 버전 출시 당시 2TB로 하드디스크 읽기 속도 증가를 위한 그룹 할당 방식을 도입했습니다.
EXT3
EXT3는 2001년 2.4.15 커널에서 등장했습니다. 가장 큰 특징은 EXT2에 있었던 고질적인 문제 자료 손실 문제를 저널링을 통해 해결하였습니다.
-파일 최대 크기는 16GB에서 2TB 사이이고 파일 시스템 전체의 크기는 4~32TB 사이입니다.
-htree로 한 디렉터리가 32,000개의 하위 디렉터리를 가질 수 있습니다.
-또한 EXT2와 호환으로 백업 재저장 없이 EXT3로 변환 가능합니다.
-EXT3의 큰 특징은 저널링입니다.
저널링
EXT2의 경우 마운트 해제하지 않고 시스템 종료 시 마운트 전 검사를 진행하게 됩니다. 하지만 저장 공간이 클수록 검사 시간이 매우 길어집니다. 심각한 경우 수 시간이 소요될 수 있습니다.
저널링을 사용할 경우 일관성 검사 대신 저널 정보로 대신하게 됩니다.
저널은 부트섹터 다음으로 이어지며 inode 테이블 번호가 저장된 파일로 구성되어 있습니다. 한 저널 파일당 트랜잭션 시작과 트랜잭션의 끝을 알리는 코드 단위로 커밋됩니다. 커밋이 완료되고 파일 시스템에 적용이 되었는지 여부를 체크포인트를 사용하고 검사가 완료된 저널 데이터는 이후 지워집니다.
저널링 모드
1. Write back
메타데이터만 저널링 됩니다. 파일 내용은 해당되지 않습니다.
충돌 직전 수정된 파일이 손상될 수 있습니다.
2. Order
메타데이터만 저장되며 이 메타데이터는 파일 내용이 디스크에 쓰이면 저널링 됩니다. 일반적으로 이 모드를 가장 많이 씁니다.
3. Journal
메타데이터뿐만 아니라 파일 내용도 저널링 됩니다. 디스크에 쓰기 전에 저널링 됩니다. 다만 성능과 저널 공간이 넉넉해야 유용할 수 있습니다.
EXT4
EXT4는 EXT3 외에 다른 소스로 분리되었고 EXT3와 유사합니다. EXT3와 EXT2에서 EXT4를 마운트 할 수 있는 게 특징입니다.
EXT4에서는 디스크에서 가장 연속적으로 블록에 데이터를 매핑하려고 합니다. 이 매핑을 가져오려면 초기 매핑 블록, 매핑 영역 크기, 데이터 블록이 필요합니다.
이외 전반적인 성능이 향상된 것이 특징입니다.
'ComputerScience > OS' 카테고리의 다른 글
운영체제 인터럽트 처리 (0) | 2022.04.25 |
---|---|
LINUX, UNIX - ELF 파일 구조 (0) | 2022.03.30 |
운영체제 교착상태 (0) | 2022.01.17 |
파일시스템의 할당 이론 (0) | 2022.01.06 |
파일 시스템의 기본 개념 (0) | 2021.12.21 |
댓글