토픽 57 / 85·파일 시스템, I/O, 시스템 구조
i-node (Index Node)
i-node (Index Node)
Unix/Linux 파일 시스템에서 파일의 메타데이터를 저장하는 자료구조로, 파일 크기·권한·타임스탬프·블록 포인터 등을 포함하며 파일 이름은 제외
목적: 파일 메타데이터 관리, 블록 포인터, 빠른 접근, 하드 링크 지원
특징: 파일당 1개, 고정 크기, 파일 내용 제외, 블록 포인터 계층
구성요소
- •파일 타입(일반/디렉토리/심볼릭 링크/장치)
- •권한(rwxrwxrwx, 소유자/그룹/기타)
- •소유자(UID/GID)
- •파일 크기(바이트)
- •타임스탬프(atime/mtime/ctime)
- •링크 수(하드 링크)
- •블록 포인터(직접, 간접, 이중 간접, 삼중 간접)
블록 포인터 구조
- •직접 포인터(12개): 직접 데이터 블록, 48KB(4KB×12)
- •간접 포인터(1개): 블록 포인터 목록, +4MB
- •이중 간접(1개): 간접 블록의 간접, +4GB
- •삼중 간접(1개): 대용량 파일, +4TB
i-node 번호: 파일 시스템 내 고유 식별자, ls -i로 확인
하드 링크: 같은 i-node를 가리키는 여러 파일 이름, 링크 수 카운트
장점: 빠른 메타데이터 접근, 대용량 파일 지원, 하드 링크, 효율적
단점: 고정 개수(파일 수 제한), 간접 포인터 오버헤드, 복잡성
적용사례: ext2/ext3/ext4, Unix 파일 시스템, Linux
비교: i-node(Unix/메타데이터분리) vs MFT(NTFS/통합) vs FAT(테이블)
연관: 파일 시스템, ext4, 하드 링크, 디렉토리, 블록 포인터