Operating System Ch20: Fast File System

Layfort·2024년 1월 4일
0

Operating System

목록 보기
7/7

Fast File System

업로드중..

  • Unix의 기본 파일 시스템은 사실 굉장히 느리다.(어찌보면 당연한거긴 한데)
  • 그래서 이를 개선하기 위해서 나온 파일시스템이 FFS

1. Concept of Fast File System

  • 가장 중요한 것은 Unix FS가 디스크를 그냥 Sequece of Bytes로만 봤다면, FFS는 디스크 자체의 특징이나 성질을 고려하여 overhead(seek time)을 최소화 하는 방식으로 디자인 되었다는 것

1-1. Unix FS: Problems

  • 기존의 구조에서 read를 한다고 가정하자.(inode는 찾았다고 가정하자)
    • 일단 inode를 읽어서 block의 위치를 확인한다.(이때 inode는 cache 된다.)
    • block을 찾아서 읽는다.
    • 다음 block을 또 cache에서 찾아서 읽는다.
  • 보면 알겠지만, seek time이 disk상에서 inode-block/block-block distance에 큰 영향을 받을 수 밖에 없다.
    • 따라서 이 distance를 최소화 하는 것이 목적

1-2. Bitmaps

  • 위의 Unix FS block structure를 잘 보면, bitmap이 빠져있다는 것을 알 수 있다.
    • 다시 생각해보자. 우리는 Bitmap을 왜 썼는가?: 비어있는 data/inode block을 효율적으로 찾기 위해서(기존의 linked list로는 이런 작업이 오래 걸린다.)
    • 이런 bitmap을 이용하여 가능한 연속적으로 파일을 저장해야한다.

1-3. Cylinder Groups

  • 그래서 어떻게 최소화 할것인가? → 디스크 상에서의 거리를 줄인다!
  • 디스크 상 거리 순서: 같은 sector -> 같은 cylinder -> 인접한 cylinder
    • 따라서 우리는 인접한 cylinder 몇개를 묶어서 cylinder group이라는 명칭으로 부른다.

1-4. On-Disk Layout

1-5. Allocation Policies

1-6. Other Features

profile
물리와 컴퓨터

0개의 댓글