리눅스의 indoe 파일 시스템은 다음과 같은 구조를 가진다.
파일은 indoe 고유값과 자료구조에 의해 주요한 정보가 관리된다. 각 파일은 파일명:inode 형태로 inode 번호와 매칭된다. 파일시스템에서는 이 indoe를 기반으로 파일에 액세스하고, inode를 기반으로 메타 데이터를 저장한다.
inode 기반 메타데이터는 위 그림과 같이 권한,소유자,크기,생성 시간 등을 가지고 있따.
운영체제에서 사용하는 파일 시스템 중 하나에요. Inode의 기본 구조는 파일 시스템을 대표하는 수퍼 블록, 그 파일의 상세 정보, 일종의 PCB인 아이노드 블록 그리고 실제 데이터를 담은 데이터 블록이 있어요(파일 시스템에서의 블록은 하나의 단위에요. 이 블록의 크기는 1~4KB정도에요. 따라서 하나의 파일엔 다수의 데이터 블록이 있어요).
여기서 Direct Block는 각각의 4kb 데이터 블록을 가리키고, single
/ double / triple indirect는 각각 4kb의 특정 블록을 가리키는데, 데이터 블록의 각각의 주소가 표현된 정보를 가지고 있다. single은 한번을, double은 2번을 , triple은 3번을 거쳐서 실제 데이터에 도달하도록 되어있따.
- inode 블록에 접근해서 파일의 정보를 읽어요.
- 이후 Direct Block에 접근해서 내부 데이터를 읽어와요.
파일의 용량이 클수록 데이터 정보를 담는 Direct Block의 크기를 늘리면 비효율적이에요. 그래서 이를 Single Indirect, Double Indirect, Triple Indirect로 처리해요.
각 Indirect는 4KB의 블록인데, 여기 안에 데이터를 직접 처리하는게 아니라 특정 블록을 접근할 수 있게 주소를 담고 있어요.