2021-11-14 운영체제 (10주차)

가상 메모리

Demand Paging

  • 요청이 있으면 페이지를 메모리에 올린다.
    • I/O 양의 감소
    • 메모리 사용량 감소
    • 빠른 응답 시간
    • 더 많은 사용자 수용
  • Valid / Invalid bit의 사용
  • Invalid의 의미
    • 사용되지 않는 주소 영역인 경우
    • 페이지가 물리적 메모리에 없는 경우
  • 처음에는 모든 page entry가 invalid로 초기화

Page Fault

  • invalid page를 접근하면 MMU가 trap을 발생시킴
  • Kernel mode로 들어가서 page fault handler가 invoke됨

Optimal Algorithm

  • MIN(OPT) - 가장 먼 미래에 참조되는 page 를 replace

미래를 모를때

  • FIFO(First In First Out)
  • LRU (Least Recently Used) - 가장 오래전에 참조된 것을 지움
  • LFU(Least Frequently Used) - 참조횟수가 가장 적은 페이지를 지움

캐싱 기법

  • 한정된 빠른 공간에 요청된 데이터를 저장해 두었다가 후속 요청시 캐시로부터 직접 서비스하는 방식

Page Frame Allocation

  • 각 프로세스에 얼마만큼의 page frame을 할당할 것인가?
  • Allocation의 필요성
    • 메모리 참조 명령어 수행시 명령어, 데이터 등 여러 페이지 동시 참조
    • Loop을 구성하는 page들은 한꺼번에 allocate 되는 것이 유리함

Global replacement

  • Replace 시 다른 process에 할당된 frame을 빼앗아 올 수 있다.
  • Process별 할당량을 조절하는 또 다른 방법임

###

Written on November 14, 2021