글
(1) ext2 파일시스템
○ 리눅스 전용 파일시스템 : EXT === (크게개선) ===>EXT2 ===(커널링추가)===> EXT3
- EXT : EXTended file system
- 커널링추가로 인해 데이터 신뢰성/속도 상승
- EXT3의 경우 예외적인 상황(갑작스런 정전, 시스템 고장 등) 에서의 복원이 가능
○ 파일시스템을 만드는 명령 : mke2fs
○ 블록의 크기를 지정하는 옵션 : -b (1024, 2048, 4096 中 택1) - default 4096
○ 파일시스템의 대부분의 블록들은 파일저장에 사용하거나 일부 블록은 파일시스템 자체의 구조를 표현하는 정보를 담는데 사.
(2) ext2 파일시스템의 블록 구성
○- 파일시스템 전체는 여러개의 Block Group으로 구성
○ Block Group은 Super Block || Group Descriptors || Block Bitmap || Inode Bitmap || Inode Table || Data Blocks 로 구성
○ Data Blocks 사이에는 Directory Block 도 함께 위치한다.
○ Block Bitmap은 1개의 블록을 차지하고, 각 비트가 한 블록의 사용상태(yes/no)를 나타낸다.
- Super Block : 파일시스템 전체에 관한 내용이 들어있다. (블록크기, 사용하지 않는 블록의 개수 등..)
각 그룹마다 Super Block의 내용은 동일하고, 만약 다르다면 파일시스템이 손상된 것이다.
파일시스템이 마운트 될 때, 커널은 그룹0 에 들어있는 Super Block을 읽어들인다.
#dumpe2fs /dev/hda2 | more 명령으로 이 장치의 전체 그룹에 대한 정보를 알 수 있다.
- Group Descriptor : 각 블록그룹을 관리하는 정보를 담고있다.
서로 연결되어 있어서 전체적으로는 하나의 그룹 디스크립터 테이블을 형성한다.
실제로 사용되는 것은 블록그룹0 에 있는 첫번째 복사본 뿐이고, 나머지는 손상될 경우를 대비한다.
- Block Bitmap : 이 블록에 속한 각 비트들은 그룹 내에 있는 각 블록의 사용상태를 나타낸다.
파일 시스템의 정보를 담고있는 블록은 모두 처음부터 set으로 표시된다.
- Inode Bitmap : 이 블록에 속한 각 비트는 그룹내에 있는 각 inode의 사용상태(yes/no)를 나타낸다.
- Inode Table : 하나의 파일은 한개의 inode를 갖는다.
디렉토리, 심볼릭 링크, 블록장치, 문자장치, FIFO 등 도 inode를 가진다.
- Data Block : 파일의 실제 데이터가 들어가는 부분으로 파일시스템의 대부분을 차지한다.
- Directory Block : 해당 디렉토리의 엔트리(파일, 디렉토리)에 대한 정보가 들어간다.
필요에 따라 데이터 블록 사이사이에 위치한다.
※ 출처 : http://idkkangjs.blog.me/30091117058
'L inux > Kernel' 카테고리의 다른 글
파일시스템 - NFS 파일시스템 (0) | 2011.09.28 |
---|---|
파일시스템 - 자료구조 (0) | 2011.09.28 |
파일시스템 - 개요 (0) | 2011.09.27 |
메모리 관리 - 페이지 할당 / 교체 (0) | 2011.09.27 |
메모리 관리 - 리눅스 페이징 기법 (0) | 2011.09.27 |
RECENT COMMENT