Hyunebee

가상 메모리 - 요구 페이징, 페이지 교체알고리즘 본문

운영체제

가상 메모리 - 요구 페이징, 페이지 교체알고리즘

Hyunebee 2022. 4. 17. 20:52

가상 메모리

 OS의 메모리 관리 기술로 제공되는 실제보다 큰 가상의 메모리 

 물리적 주소가 아닌 논리적 주소를 가지는 메모리

 메인 메모리의 제한된 용랑과 중첩 사용 문제 해결

 

 가상 메모리가 가능한 이유 -> 프로세스의 일부만 물리적 메모리에 적재해도 실행 가능하다.

 필요시 디스크(보조 저장 장치)에서 스왑인 아웃을 통해 교환

 

 장점

 -다중 프로그래밍으로 프로세서 사용률과 처리율 향상 -> 응답시간과 반환시간이 향상되는건 아님

 -물리적 메모리 크기 제한 없이 큰 프로그램 실행 가능

 

 단점

 -시스템 속도 저하

 -요구된 페이지가 없을 때 처리방법이 필요하다. 

 

 가상 메모리 또한 물리적 주소와의 매핑이 필요하다 

 1. 요구 페이징

 2. 요구 세그먼테이션

 

 

요구페이징 

 실행 중인 프로세스가 요구하는 페이지만 메인 메모리에 적재 

 오른쪽 저장 장치에는 A~F까지의 논리적 주소가 있다. 물리 메모리를 보면 모두 적재되어 있지않다.

 여기서 주로 사용되는 A C F만 물리 메모리에 올라가 있어도 지역성을 가지고 자주 접근해 사용하기 때문에 

 프로그램이 실행가능하다.

 

 요구 페이징 또한 공유 페이지를 가지고 있다. 이때 참조하는 두프로세스에서 쓰기를 할때는 해당 페이지를 복사한 후

 복사본에 쓰기를 진행한다.

 

https://m.blog.naver.com/jevida/140191934297

 장점

 -메모리 절약

 -다중 프로그래밍 정도 증가

 -프로그램 시작시 적재 지연시간 감소 -> 응답 성능 향상

 

 단점

 -프로세스 실행 중에 페이지 부재로 지연 가능 -> 보조 저장 장치에서 가져와야하기 때문에

 -메모리 관리 복잡

 -메모리 액세스 시간 예측이 어려움

 

 

 교체 알고리즘 -> 궁극적 목표는 페이지 부재확률을 줄인다.

 1.FIFO

  가장 오래된 페이지부터 교체를 수행

  그림을 보면 가장 오래된 1이 5로 교체 그 후 오래된 2가 1과 교체 

  문제점 -> 프레임 수를 늘려도 페이지 부재 수가 증가하는 현상이 있을 수 있음

   2.OPT(최적 페이지 교체 알고리즘)

   페이지 부재 비율이 가낭 낮지만 앞으로 가장 오랫동안 사용하지 않을 페이지를 교체 -> 실현 가능성이 없다

 

   3.LRU(최근 최소 사용)

    가장 오랫 동안 사용하지 않은 페이지를 교체  -> 지역성을 근거로 조사함 최근 참조된 것은 다시 참조될 가능성이        크다.

 

    참조 순서를 기억할 cnt or stack이 필요하다. 

 

    Counter 사용 -> O(N)

    마지막을 보면 3과 1이 교체가 되었다. 그 이규는 이전 항목의 5,2,3중 3이 3번째 카운터에서 불렸기 때문에 가장

    가장 오래전에 사용되었다. 

 4.LRU를 개선한 LRU 근사 알고리즘

  4.1 Aging

  4.2 clock

  4.3 NRU (최근에 사용하지 않거나 수정하지 않은) -> 참조비트 수정비트 2개사용

  4.4 LFU (최소 사용 빈도수)

  4.5 MFU (최대 사용 빈도수)

'운영체제' 카테고리의 다른 글

메모리 관리 - 페이징, 세그먼테이션  (0) 2022.04.17
교착상태  (0) 2022.04.17
동시성과 상호배제  (0) 2022.04.17
프로세스의 스레드  (0) 2022.04.16
프로세스의 구성  (0) 2022.04.15