파일
파일: 관련된 정보를 담고 있는 연속적인(Contiguous) 논리적 주소 공간
- 종류:
- 데이터
- 특성:
- 이름
- 타입
- 위치
- 크기
- 보안
- 시간, 날짜, 유저 정보
- 파일에 대한 정보는 디렉토리 구조로 디스크에 저장
- 작업:
- create
- write
- read
- truncate
- delete
- open
- close
- 파일 권한

- 권한: RWX(비트 3개로 표현, R,W,X 순) 대한 권한 표시
- 접근 방법: 순차 접근(Sequential Access)와 직접 접근(Direct Access)
파일 시스템 구조
-
디렉토리 구조

-
Single level

- 모든 유저가 하나의 디렉토리 사용
- Naming P, Grouping P 발생
-
Two level

- 각 유저마다 디렉토리 구분
- Grouping P 발생
-
트리 구조

저장공간을 어떻게 할당?
-
연속적으로 할당

- 빈 공간(fragmentation) 관리 필요
- 공간 확장 어려움

- 주로 first-fit 또는 best-fit 사용
- 주기적으로 compaction 필요
-
링크로 할당

- 파일을 연속적으로 저장하지 않아도 됨
- compaction 필요 X
- P: 링크가 끊어지면? 에러 발생
-
FAT(File Allocation Table) 이용
- 디스크를 파티션으로 나눔, 각 파티션마다 FAT 존재
- depth 적을 때는 빠름
- 파일 많을 때는 조금 느림, FAT 커짐
- 모든 파일을 디렉토리 아래 트리 구조로 구현
-
인덱스로 할당
- FAT를 파일 수준까지 나눔
- inode 이용

- Multi-level 인덱스 이용

-
하이브리드 인덱스 이용(UNIX)

- 작은 파일은 직접 포인터, 큰 파일은 간접 포인터 이용
UNIX 파일 시스템
Reference
- 강순주 교수님 PPT 12