유닉스 파일 시스템
유닉스 및 유닉스 계열 운영 체제에 쓰이는 파일 시스템 또는 그 개념
(Unix File System에서 넘어옴)
일반적인 유닉스 파일의 원리에 대해서는 유닉스 파일시스템 문서를 참고하십시오.
유닉스 파일 시스템(UNIX File System, UFS)는 유닉스 및 유닉스 계열 운영 체제에 쓰이는 파일 시스템 또는 그 개념을 말한다. 유닉스 커널은 모든 파일들을 바이트 단위의 스트림으로 간주한다.
개발사 | CSRG |
---|---|
정식 명칭 | 유닉스 파일 시스템 |
도입 | - 4.2BSD |
구조 | |
디렉터리 내용 | 테이블 |
제약사항 | |
최대 볼륨 크기 | 273 바이트 (8 ZB) |
최대 파일 크기 | 273 바이트 (8 ZB) |
최대 파일 이름 길이 | 255 바이트 |
기타 | |
지원 운영 체제 | A/UX, 드래곤플라이BSD, FreeBSD, FreeNAS, HP-UX, NetBSD, 리눅스, OpenBSD, 솔라리스, SunOS, Tru64 UNIX, 유닉스 시스템 V 등 |
파일 유형
편집UFS에는 다음과 같이 4가지 파일 유형이 있다.
구성 요소
편집UFS는 다음과 같은 구성요소를 가진다.
- 부트 블록(boot block)
- 파일 시스템으로부터 UNIX 커널을 적재시키기 위한 프로그램이 저장되어 있다.
- 슈퍼 블록(super block)
- 파일 시스템을 기술하는 정보를 저장한다.파일 시스템마다 하나씩 존재한다. 슈퍼 블록의 자료 구조, 파일 시스템의 크기, 블록의 수, 이용가능한 빈 블록 목록, 빈 블록 목록에서 그 다음의 빈 블록을 가리키는 인덱스, 아이노드 목록의 크기, 빈 아이노드의 수, 빈 아이노드 목록, 빈 아이노드 목록에서 그 다음의 빈 아이노드를 가리키는 인덱스, 빈 블록과 빈 아이노드 목록들에 대한 록 필드들, 슈퍼 블록들 수정되었는지 나타내는 플래그, 파일 시스템의 이름, 디스크 이름 정보들이 저장된다.
- 아이노드(inode)
- 파일이나 디렉터리에 대한 모든 정보를 가지고 있는 구조체이다.
- 데이터 블록
- 실제 데이터가 파일의 형태로 저장되는 공간이다.
파일 할당
편집UFS에서 파일 할당은 블록을 기본 단위로 하여 필요할 때 동적으로 할당된다. 그러므로 파일 블록들이 하드 디스크 상에 연속적으로 있을 필요가 없다. 색인 기법을 통해 파일의 아이노드에 저장된 색인을 유지한다. 아이노드는 3바이트 짜리 주소 13개, 또는 포인터로 구성된 39바이트 주소 정보 1개를 가진다. 처음 10개의 주소는 파일에서 맨처음 10개의 데이터 블록을 가리킨다. 만약 파일이 블록 10개보다 크면 하나 이상의 간접 수준이 사용된다.