바보같은 질문이었던것 같습니다(_ _) 수정하여 다시 질문 드려요 (_ _)
안녕하세요 hdd의 구조를 좀 파악하고 싶은 학생입니다.
제가 궁금한 내용은 리눅스의 파일 시스템 구조는
|부트블록|슈퍼블록|inode블록|실제 데이터~~~|
이렇게 구성이 되어있다고 알고 있습니다.
예를들어 제가 512Byt Sector 1000개를 가지고 있는 디스크를 가지고 있다면
0번 블록은 부트 블록
1번 블록은 슈퍼 블록
2~50번 블록은 inode들
51~1000번 블록은 데이터를 가지는 구조가 아닌가요??
근데 제가 실제로 디스크를 동작시켜보니
fdisk->mke2fs->mount 동작까지 해보니 디스크가 실제로 339G중에 67MB의 공간을 소모하였습니다.
이것이 제 생각에는 슈퍼블록과 inode 부트블록의 크기라고 생각을 하였습니다.
근데 여기서 의문은 일단 inode의 개수가 최대 22511616개인데... inode 한개당 64Byte라고 하니...
약 1.4GByte를 inode로 사용하는 것인데요... 물론 이부분은 inode를 미리 할당을 안해놔서 그럴수도 있다고
생각하는데... 그럼 디스크의 시작부터 1.4GByte 공간의 위치는 inode의 공간으로 비워 두어야 하는것이
아닌가요?? 즉 0x2A F000 번지까지는 inode의 공간이 된다고 생각을 하였는데...
실제 데이터를 기록해보니 0x1C004 주소값에 기록을 하더라구요...
이것이 위의
|부트블록|슈퍼블록|inode블록|실제 데이터~~~|
디스크 구조는 그냥 논리적인 설명이고 실제로는 데이터블럭과 inode 블럭이 혼합되어 있는것이 아닌지 궁금합니다....
fat와 같이 간단한 것이라면.
fat와 같이 간단한 파일시스템은 설명하신 것과 같이 간단한 구조를 가졌었습니다.
fat시절에는 유틸리티로 디스크 에디터를 띄워보기도 했었는데...
그럼 ext2 정도는 아마 복잡한 구조를 가졌을까요??
그럼 ext2 정도는 아마 복잡한 구조를 가졌을까요??
음... ext2를 공부하기에 좋은 서적이있을까요?
왜이리 리눅스 파일시스템 관련 책은 ㅠㅠ 없는것인지....
이런 내용은..
책을 찾는것보다 인터넷을 보는게 편하고 빠르고 돈도 안든답니다.
특히 이런내용은 보통 documentation이 되어있기 때문에 어떤 책보다도 이런 문서를 꼼꼼히 읽어보는게 낫지요.
http://ko.wikipedia.org/wiki/Ext2
http://www.nongnu.org/ext2-doc/
----------------
Ubuntu 10.10, Solaris 11 / 잘 부탁드립니다 ;)
댓글 달기