File-System Structure

  • logical file system : meta data(내용을 제외한 모든 파일 시스템 구조) 관리, Directory 구조를 관리, FCB
  • file-organiztion module : 물리 블럭과 논리 블럭을 알고 있어서 논리 주소를 물리주소로 변경
  • basic file system : 적절한 장치드라이버에게 물리블록을 읽고 쓰도록 명령 내림
  • I/O control : Device driver와 interrupt handler로 이루어져 있으며 고수준 언어의 명령을 디바이스에 맞는 저수준 언어로 변경

 

Virtual File System

  • os는 동시에 여러 타입의 파일 시스템을 지원해야함.
  • 기존 파일 시스템 밑에 가상파일 시스템을 두어 다양한 파일 시스템을 다룸
  • 네트워크로 연결된 파일 시스템도 하나의 파일 시스템으로 볼 수 있도록 도와줌

 

Directory Implementation

  • 하드에서는 파일과 디렉터리를 대부분 선형 구조로 관리
  • Linked List를 이용(Hash Table, B+트리)

 

Allocation Methods

  • Contiguous Allocation : 외부 단편화가 일어날 수 있으며 압축에 많은 비용
  • Linked Allocation : 디스크를 구성하는 블락 단위로 연결리스트 구조로 연결, 중간에 접근하기 위해선 순차 탐색, 에러 블락있으면 끊긴다.
  • Indexed Allocation : index block을 두어 해당 블락안에 파일을 구성하는 블락들의 포인터를 담는다. 디렉토리는 파일 이름과 index block의 주소를 가진다. index block이 사라지면 파일을 모두 잃어 버린다..

 

Free-Space Management

  • Bit map : n개의 블락이 있으면 n개의 배열을 만들어 0과 1 저장
  • Linked List : 비어있는 블락끼리 연결
  • Grouping : 하나의 블락이 루트 블락이 되어 다른 빈 블락을 가리킴
  • Counting : 첫번째 빈 블락에 연속된 빈 블락의 개수 저장

 

(추가)

B-Tree

  • 이진 트리를 확장해 하나의 노드가 가질 수 있는 자식 노드의 최대 숫자가 2보다 큰 트리 구조
  • 자료를 정렬된 상태로 보관하고, 삽입 및 삭제를 대수 시간으로 가능
  • 상향식 구성

https://hyungjoon6876.github.io/jlog/2018/07/20/btree.html

'Computer Science > Operating System' 카테고리의 다른 글

[Linux] CentOS 교육 -2  (0) 2022.10.26
[Linux] CentOS 교육 -1  (0) 2022.10.24
[개념] File System 1  (0) 2021.08.12
[개념] Storage Management  (0) 2021.08.12
[개념] Memory Management 5(Virtual Memory)  (0) 2021.08.12

+ Recent posts