운영체제_파일관리_보조 저장공간 관리

미뇽·2024년 6월 8일
0

운영체제(강의)

목록 보기
40/43
post-thumbnail

보조 저장공간 관리

파일에 블록 할당 책임 -> 운영체제 / 파일관리 시스템
두 가지 관리 이슈

  • 보조 저장공간을 파일에 할당
  • 가용공간을 지속적으로 인지하고 있어야 함

파일 할당

파일 할당에서 고려해야 할 사항

사전 할당 vs. 동적 할당

사전 할당의 경우 -> 공간 부족할까봐 크게 설정하면 공간 낭비가 초래됨
동적 할당의 경우 -> 연속영역들을 파일 저장에 필요한 만큼만 할당하게 되어 이점이지만 어려움

연속 영역의 크기

연속영역의 크기를 정할 때 단일 파일 관점의 효율성과 전체 시스템의 효율성을 절충할 필요
-> 절충하기 위한 대안들

가변의 큰 연속영역들

  • 가변 크기는 낭비를 없애고 파일할당 테이블은 작음
  • 가변크기 연속영역들을 사용할 경우 가용공간의 단편화 고려한 전략 필요
    - 최초적합(First fit)
    - 가용블록 리스트에서 최초로 발견되는 충분한 크기의 연속된 블록 집단을 선택
    - 최적적합(Best fit)
    - 충분한 크기의 가장 작은 연속된 블록 집단 선택
    - 근접적합(Nearest fit)
    - 파일의 지역성을 증가시키기 위해 그 이전 할당에 가장 가까운 충분한 크기의 연속된 블록 집단 선택
  • 블록들
    - 고정크기의 작은 연속영역들은 보다 큰 유연성 제공
    -

파일할당 방법

연속할당(contiguous allocation)

  • 파일 생성 시 단일의 연속된 블록 집단 할당
  • 개별 순차파일 입장에서 가장 좋은 방법
  • 충분한 길이의 연속된 블록 집단을 찾기 어려운 외부단편화 문제
  • compaction 필요

연결 할당(chained allocation)

  • 각 블록은 체인 상에서 그 다음 블록을 나타내는 포인터를 가짐
  • 파일할당 테이블에는 각 파일에 하나의 항목(시작 블록+파일의 길이)를 가짐
  • 외부단편화 문제 X
  • 순차처리되는 순차파일에 가장 적합(체인 따라 추적)
  • 지역성의 원리 수용 X
    => 통합정리(consolidation)로 문제 해결

인덱스 할당(indexed allocation)

  • 각 파일에 대한 별개의 한 단계 인덱스가 있고 이 인덱스는 파일에 할당된 연속영역 각각에 대한 항목을 가짐
  • 파일 인덱스는 별개의 블록에 저장되고 해당 파일에 대한 파일할당 테이블 항목이 인덱스가 저장된 블록을 가리키게 됨
  • 블록 단위 할당 -> 외부단편화 제거
  • 가변크기 연속영역 단위 할당 -> 지역성 증가
  • 파일 통합정리 작업의 경우
    - 블록 -> 인덱스 크기 변함 없음
    - 가변길이 -> 인덱스 크기가 줄어듦

가용공간 관리

어떤 파일에도 할당되지 않은 공간도 관리가 필요함
=> 가용상태를 알기 위한 디스크할당 테이블의 필요성

비트테이블(Bit tables)

디스크 블록 하나당 한 비트가 대응된 벡터 이용

  • 0 -> 가용 블록
  • 1 -> 사용중인 블록
    $\frac {바이트 단위 디스크 크기} {8 *파일 시스템 블록 크기} $
    16GB 용량 기준 약 4MB 정도의 비트테이블 필요
    메모리에 위치시키는 것이 가장 나음

연결된 가용 연속영역(Chained free portions)

가용 연속영역들은 자기 영역 내의 포인터와 길이 값을 사용하여 서로 연결
체인 시작부에 대한 포인터와 첫 연속 영역의 길이만 필요 -> 공간적 부담이 적음
하지만 어느정도 지나면 상당 부분이 단편화되어 많은 연속영역들이 단일 블록 길이가 될 수 있음
+블록할당마다 블록을 읽어 체인연결 조정하는 과정에서 오버헤드

인덱싱

가용 공간을 하나의 파일로 간주하며 파일 할당에서 설명한 인덱스 테이블 사용
인덱스는 블록보다는 가변크기 연속영역을 기초로

가용블록 리스트

각 블록에 순차적으로 번호를 부여하고 가용블록의 번호 유지
하나의 블록번호는 24비트 / 32비트
-> 가용블록 리스트의 크기는 그에 해당하는 비트테이블 크기의 24/32배가 되므로 디스크에 저장

profile
문이과 통합형 인재(人災)

0개의 댓글