본문 바로가기

CS/운영체제

운영체제(18) -디스크 자유 공간 관리 (Free - space Management)

반응형

디스크의 공간은 제한되어 있다. 삭제된 파일들이 차지하던 공간은 새로운 파일들을 위해 재사용되어야 한다. 이러한 자유공간을 관리하는 다양한 방법들이 있다.

Bit map or bit vector 

  • 자유 공간 리스트는 흔히 비트 맵(bit map) 또는 비트 벡터(bit vector)로 구현 된다. 여기서 각 블록은 1비트로 표현된다. 블록이 자유로우면 그 비트는 1이 되고 만약 블록이 할당되어 있다면 그 비트는 0이 된다.
  • 부가적인 공간을 필요로 함
  • 연속적인 n개의 free block을 찾는데 효과적

Linked List

  • 모든 free block들을 링크로 연결 (free list)
  • 연속적인 가용공간을 찾는 것은 쉽지 않다
  • 공간의 낭비가 없다

Grouping

  • linked list 방법의 변형
  • n개의 free - block을 하나의 그룹으로 묶고, 이 그룹을 Linked-List로 연결 시키는 구조
  • 연속된 free-space를 쉽게 찾을 수 있는 장점 가
  • 첫번째 free block이 n개의 pointer를 가짐
  • n-1 pointer는 free data block을 가리킴
  • 마지막 pointer가 가리키는 block은 또 다시 n pointer를 가짐

Counting

  • 프로그램들이 종종 여러 개의 연속적인 block을 할당하고 반납한다는 성질에 착안
  • 연속된 free - block들 중에서 첫번째 free-block의 주소와 해당 block 이후로의 free-block의 갯수를 count라는 변수에 저장하여 관리하는 방식이다. 

이 포스팅은 이화여대에서 무료로제공하는 반효경님의 운영체제강의를 수강하며 정리한 내용입니다.

필자가 잘 이해하지 못해서 잘못된 내용이 있을 수 있으므로 주의바라며, 발견되면 알려주시면 감사하겠습니다.

http://www.kocw.net/home/search/kemView.do?kemId=1046323 

 

운영체제

운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 모든 컴퓨터 시스템의 필수적인 부분이다. 본 강좌에서는 이와 같은 운영체제의 개념과 역할, 운영체제를 구성하는 각

www.kocw.net

 

반응형