overview
Logical directory structure
- Flat(single-level) directory structure
- 2-level directory structure
- Hierarchical (tree-structure) directory structure
- Acyclic graph directory structure
- General graph directory structure
Flat Directory Strucutre
- FS내에 하나의 Directory만 존재함: Single-level directory structure
큰 directory 하나에 모든 파일이 그 안에 들어가 있고 문제점이 발생함
문제점
- File naming
- File protection
- File management
- 다중 사용자 환경에서 이러한 문제가 더 커짐 => 이를 개선하여 여러 directory 구조들이 나옴
2-Level Directory Structure
- 사용자 마다 하나의 Directory 배정
- 구조: MFD (Master File Directory), UFD (User File Directory)
- 문제점들
- Sub-directory 생성 불가능: File naming issue
- 사용자간 파일 공유 불가
다른 유저에게 파일을 공유하려면 나의 폴더 전체를 공개해야 한다. => 보안의 문제가 발생
Hierarchical(계층적) Directory Structure
- Tree 형태의 계층적 directory 사용 가능
- 사용자가 하부 directory 생성/관리 가능
- System call이 제공되어야 함
- 관련 용어들..
- Home directory, Current directory
- Absolute pathname(절대 경로(Home부터 목적지)), Relative pathname(상대 경로(현재경로부터 목적지))
- 대부분의 OS가 사용
Acyclic Graph Directory Structure
= 루프가 만들어 질 수 없는 graph directory structure
- Hierarchical directory structure 확장
- Directory안에 shared directory, shared file를 담을 수 있음
- Link의 개념 사용(바탕화면 바로가기): E.g., Unix system의 symbolic link
다음과 같이 사이클이 생기지 않는 directory를 acyclic graph directory라고 한다.
General Graph Directory Structure
- Acyclic Graph Directory Structure의 일반화 => Cycle을 허용함
- Problems => File탐색시, Infinite loop를 고려해야 한다.
'CS > OS' 카테고리의 다른 글
[OS] 11-5. File System Implementation (0) | 2022.05.17 |
---|---|
[OS] 11-4. File Protection (0) | 2022.05.11 |
[OS] 11-1. Disk System, File System (0) | 2022.05.07 |
[OS] 10. 가상메모리 관리 - Other considerations (0) | 2022.05.04 |
[OS] 10. 가상 메모리 관리 - Replacement Strategies for Variable Allocation (0) | 2022.04.30 |