반응형

기억장치 관리 전략

  • 반입(Fetch) 전략 : 보조기억장치의 데이터를 언제 주기억장치로 적재할 지 결정
   
요구 반입  실행 중 프로그램이 특정 프로그램, 데이터 등의 참조를 요구할 때 적재
예상 반입  실행 중 프로그램에 의해 참조될 프로그램, 데이터 등을 예상하여 적재
  • 배치(Placement) 전략 : 새로 반입될 프로그램이나 데이터를 주기억장치의 어디에 위치시킬 지 결정
   
최초 적합
(First Fit)
 프로그램 및 데이터 크기의 빈 영역 중 첫 번째 분할 영역에 배치
최적 적합
(Best Fit)
 프로그램 및 데이터 크기의 빈 영역 중 단편화를 가장 작게 남기는 분할 영역에 배치
최악 적합
(Worst Fit)
 프로그램 및 데이터 크기의 빈 영역 중 단편화를 가장 크게 남기는 분할 영역에 배치
  • 교체(Replacement) 전략 : 가상기억장치의 필요 페이지를 주기억장치에 배치 시, 사용되는 영역 중 교체할 영역을 결정하는 전략. FIFO, OPT, LRU, LFU, NUR, SCR 등이 있음.

주기억장치 할당 기법

단일 분할 할당 기법

오버레이(Overlay) 기법

  • 주기억장치보다 큰 사용자 프로그램 실행을 위한 기법
  • 보조기억장치의 저장된 프로그램을 여러 조각으로 분할 후 필요한 조각을 차례대로 주기억장치에 적재하여 실행
  • 주기억장치의 공간 부족 시 주기억장치에 적재된 프로그램 조각 중 필요한 조각의 장소에 새 프로그램 조각을 중첩(Overlay)하여 적재
  • 프로그램 분할 작업은 프로그래머가 수행

스와핑(Swapping) 기법

  • 한 프로그램 전체를 주기억장치에 할당하여 사용하다 필요에 따라 다른 프로그램고 교체하는 기법
  • 주기억장치에서 보조기억장치로 프로그램이 이동되면 Swap Out, 보조기억장치에서 주기억장치로 이동되면 Swap In이라 함
  • 한 프로그램 완료까지 교체 과정을 여러 번 수행 가능
  • 가상기억장치의 페이징 기법으로 발전

다중 분할 할당 기법

고정 분할 할당(Multiple contiguous Fixed parTition allocation, MFT) 기법
 = 정적 할당(Static Allocation) 기법

  • 프로그램 할당 전, 운영체제가 주기억장치의 사용자 영역을 여러 고정크기로 분할 후 준비상태 큐의 프로그램을 각 영역에 할당하여 수행
  • 실행을 위해 프로그램 전체가 주기억장치에 위치
  • 프로그램이 분할된 영역보다 커 영역안에 들어가 수 없는 경우 발생
  • 내부 단편화 및 외부 단편화가 발생하여 주기억장치 낭비가 많음
  • 실행 프로그램의 크기를 알아야 함
  • 다중 프로그래밍을 위해 사용 되었으나 현재는 사용되지 않음

가변 분할 할당(Multiple contiguous Variable parTition allocation, MVT) 기법
= 동적 할당(Dynamic Allocation) 기법

  • 고정 분할 할당의 단편화을 줄임. 주기억장치를 미리 분할하지 않고, 프로그램을 주기억장치에 적재하며 필요한 만큼의 크기로 영역 분할
  • 주기억장치의 효율적 사용, 다중 프로그래밍 정도 향상
  • 고정 분할 할당 기법에 비해 프로세스 크기에 대한 제약 적음
  • 단편화 상당 해결, 영역과 영역 사이에는 발생가능

주기억장치 관리 기법의 문제점과 해결 방법

단편화 / 단편화 해결 방법

단편화

  • 분할된 주기억장치에 프로그램을 할당 및 반납하는 과정에서 사용되지 않고 남은 빈 공간 조각
  • 내부(Internal) 단편화 : 분할된 영역이 할당될 프로그램 크기보다 커서 프로그램 할당 후 사용되지 않고 남는 공간
  • 외부(External) 단편화 : 분할된 영역이 할당될 프로그램 크기보다 작아 프로그램이 할당되지 못하여 남는 분할 영역

단편화 해결 방법

  • 통합(Coalescing) 기법 : 주기억장치 내 인접한 단편화 공간을 하나의 공간으로 통합
  • 압축(Compaction) 기법, 집약 : 주기억장치 내 분산도니 단편화 공간을 한쪽 끝으로 옮겨 큰 가용 공간을 만드는 작업
반응형

+ Recent posts