File System

김유진·2023년 5월 15일
0

CS지식 정리

목록 보기
7/7

INODE 파일 시스템

리눅스의 indoe 파일 시스템은 다음과 같은 구조를 가진다.

  • 수퍼 블록: 파일 시스템의 정보와 파티션의 정보를 가지고 있다.
  • INODE 블록: 파일의 상세 정보
  • 데이터 블록: 실제 데이터가 저장된 블록

파일은 indoe 고유값과 자료구조에 의해 주요한 정보가 관리된다. 각 파일은 파일명:inode 형태로 inode 번호와 매칭된다. 파일시스템에서는 이 indoe를 기반으로 파일에 액세스하고, inode를 기반으로 메타 데이터를 저장한다.

inode 기반 메타데이터는 위 그림과 같이 권한,소유자,크기,생성 시간 등을 가지고 있따.

운영체제에서 사용하는 파일 시스템 중 하나에요. Inode의 기본 구조는 파일 시스템을 대표하는 수퍼 블록, 그 파일의 상세 정보, 일종의 PCB인 아이노드 블록 그리고 실제 데이터를 담은 데이터 블록이 있어요(파일 시스템에서의 블록은 하나의 단위에요. 이 블록의 크기는 1~4KB정도에요. 따라서 하나의 파일엔 다수의 데이터 블록이 있어요).

여기서 Direct Block는 각각의 4kb 데이터 블록을 가리키고, single
/ double / triple indirect는 각각 4kb의 특정 블록을 가리키는데, 데이터 블록의 각각의 주소가 표현된 정보를 가지고 있다. single은 한번을, double은 2번을 , triple은 3번을 거쳐서 실제 데이터에 도달하도록 되어있따.

  1. inode 블록에 접근해서 파일의 정보를 읽어요.
  2. 이후 Direct Block에 접근해서 내부 데이터를 읽어와요.

파일의 용량이 클수록 데이터 정보를 담는 Direct Block의 크기를 늘리면 비효율적이에요. 그래서 이를 Single Indirect, Double Indirect, Triple Indirect로 처리해요.

각 Indirect는 4KB의 블록인데, 여기 안에 데이터를 직접 처리하는게 아니라 특정 블록을 접근할 수 있게 주소를 담고 있어요.

profile
끊임없이 발전하는 개발자

0개의 댓글