본문 바로가기

CS지식/운영체제

운영체제 : File-System

File : 연속적이고 논리적인 주소 공간

 

파일 형식을 알려주는 명령어 : file

리눅스의 파일 형식 : elf

 

File attributes


ls -l 로 볼 수 있는 정보

  • 파일 이름
  • 접근 권한
  • 파일 위치
  • 파일 사이즈
  • 파일 생성일
  • 파일 형식
  • 파일 식별자

Inode (File control Block - FCB)


sblock 하나의 크기는 4KB

파일을 open 해서 현재 디렉토리에 있다면 아이노드를 가져온다.

Mount : 유저에게 파일 시스템이 보이도록 만드는 것


운영체제가 들어있는 파티션 = default partition

다른 파티션을 만들려면 마운트 해야한다.

루트를 통해 다른 파티션으로 접근 가능!

No Cycle


  • Garbage Collection : 더 이상 사용하지 않는 객체를 청소해 메모리 공간 확보

 

File-system Operation


Boot control block은 루트 파티션에 있다.

 

Allocation Method- 파일 할당 방식


1. Contiguous allocation

  • 연속된 블록에 내용을 배치시키겠다.
  • 장점: 빠르다
  • 단점 : 외부 단편화

2. Linked allocation

  • 첫번째 블록이 다음 블록을 가리키도록 함. 사용되지 않는 공간 사용할 때 많이 쓴다.
  • 장점 : 외부 단편화가 사라짐. 중간에 새로운 블럭을 끼워넣기 쉽다(크기 확장)
  • 단점 : 순차적 접근을 하므로 랜덤 access 가늠이 어렵다. 포인트가 끊어지면 뒤의 블록 접근 불가

3. File allocation Table Allocation

  • 한 블록에 FAT가 저장되어 있고, 테이블의 인덱스는 전체 디스크의 블록 번호이다.
  • 각 인덱스마다 다음 블록 번호를 저장하고 있다.
  • 기존의 연결할당의 문제점 대부분을 해결

장점 : FAT를 한번만 읽으면 직접 접근이 가능하고, 중간 블록에 문제가 생겨도 그 다음 블록은 여전히 읽을 수 있다.

단점 : 블록이 흩어져 있으므로 데이터를 찾는 데에 시간이 오래 걸린다.

4. Indexed allocation

  • 한 블럭을 index block으로 사용하여 다른 블록들을 가리키도록 한다(위에 있는 block pointer 그림)

Free-Space Mamagement


  • Bit vector or bit map (전체 디스크의 블록 개수 만큼)
  • n번째 bit 가 1이면 n번째 블록이 free
  • n번째 bit 가 0이면 n번째 블록 점유중

'CS지식 > 운영체제' 카테고리의 다른 글

운영체제 : I/O System  (0) 2023.09.23
운영체제 : Mass-Storage Interface  (0) 2023.09.23
운영체제 : 가상 메모리 (Virtual Memory)  (0) 2023.09.23
운영체제 : Main Memory  (0) 2023.09.23
운영체제 : Deadlocks  (1) 2023.09.23