728x90
1. 파일 & 파일 시스템
- 파일
- 논리적인 저장 단위
- 켬퓨터 시스템의 편리한 사용을 위해 정보 저장의 일관된 논리적 관점 제공
- 레코드 혹은 블록 단위로 비휘발성 보조기억장치에 저장
- 파일 시스템
- 구조
- 메타 영역 : 데이터 영역에 기록된 파일의 이름, 위치, 크기, 시간 정보, 삭제 유무 등 파일의 정보
- 데이터 영역 : 파일 데이터
- 운영체제와 모든 데이터, 프로그램의 저장과 접근을 위한 기법 제공
- 시스템 내의 모든 파일에 관한 정보를 제공하는 계층적 디렉터리 구조
- 파일 및 파일의 메타데이터, 디렉터리 정보 등 관리
- 구조
2. Access Methods
- 순차 접근(Sequential Access)
- 가장 단순한 방법으로 파일의 정보가 레코드 순서대로 처리
- 직접 접근(Random Access)
- 파일의 레코드를 임의의 순서로 접근 가능
- 색인 접근(Index Access)
- 파일에서 레코드를 찾기 위해 먼저 index를 찾고 대응되는 포인터를 찾아 파일에 직접 접근 가능
- 크기가 큰 파일에서 유용
3. 디렉터리
파일의 메타데이터 중 일부를 보관하고 있는 일종의 특별한 파일
해당 디렉터리에 속한 파일 이름과 속성들을 포함함
- 디렉터리 기능
- 파일 찾기
- 파일 생성
- 파일 삭제
- 디렉터리 나열
- 파일 재명명
- 파일 시스템 순회
1. 1단계 디렉터리
- 모든 파일들이 디렉터리 밑에 존재하는 형태
- 파일들은 서로 유일한 이름을 가짐
- 파일이 많아지거나 다수의 사용자가 사용하는 시스템에서는 심각한 제약을 가짐
2. 2단계 디렉터리
중앙에 MFD(Master File Directory)가 존재하고, 그 아래에 각 사용자 별로 서로 다른 UFD(User File Directory)가 존재
각 유저가 서로 다른 UFD를 검색할 수 없어 업무 협력 또는 파일 공유가 어려움
특정 파일을 저장할 때 User Name + File Name 형식이여서 파일 이름이 길어짐
3. 트리 구조 디렉터리
- 하나의 Root 아래로 여러개의 Sub Directory가 구성됨
- 모든 파일은 고유한 경로를 가져 효율적인 탐색이 가능하고 그룹화가 가능함
- bit 가 0이면 일반 파일, 1이면 디렉터리로 구분함
4. 비순환 그래프 디렉터리
- 디렉터리들이 서브 디렉터리들과 파일을 공유 할 수 있음
- cycle이 허용되지 않음
- 파일을 무작정 삭제하면 Dangling Pointer 문제가 발생할 수 있으므로 참조 계수를 사용해 관리함
5. 일반 그래프 디렉터리
- 트리 구조에 Link를 추가하여 cycle을 허용하는 그래프 구조
- 단, cycle이 허용되면 무한 루프에 빠질 수 있으므로 주의해야 함
728x90
'CS' 카테고리의 다른 글
[CS / SW] TDD (Test Driven Development) (0) | 2023.10.19 |
---|---|
[CS / SW] 클린코딩 & 리팩토링 & 시큐어코딩 (0) | 2023.10.19 |
[CS / OS] 메모리 (0) | 2023.10.10 |
[CS / OS] 페이지 교체 알고리즘 (0) | 2023.10.10 |
[CS / OS] Paging & Segmentation (1) | 2023.10.10 |