[컴퓨터공학]/[운영체제]

[운영체제]Min Algorithm, FIFO Algorithm - 가상 메모리 관리2

딥러닝 도전기 2021. 6. 3. 23:25

운영체제 - 한빛아카데미

운영체제에 대해 공부한 내용에 대해 정리해보았습니다.

KOREATECH 김덕수 교수님의 자료와 한밭대학교 임경태 교수님의 강의를 참고하였습니다.


이번 포스팅에서는 가상 메모리 성능 향상을 위한 관리 기법 중 교체기법(Replacement strategies)을 살펴보겠습니다.

 

교체기법을 말씀드리기 전에 지역성(Locality)을 다루어보겠습니다.

지역성에는 공간적 지역성과 시간적 지역성이 있습니다.

 

공간적 지역성 

  • 참조한 영역과 인접한 영역을 다시 참조하려는 특성

시간적 지역성

  • 한 번 참조한 영역을 곧 다시 참조하는 특성

교체기법은 크게 Fixed allocation과 Variable allocation 의 두 개의 분류로 나뉩니다.

 

고정된 수의 page frame를 할당하는 Fixed allocation을 먼저 살펴보겠습니다.

 

Min Algorithm(OPT algorithm) - Fixed allocation

기법 : 앞으로 가장 오랫동안 참조되지 않을 Page 교체

→ 미래를 예측할 수 없기 때문에 실현 불가능한 기법 

실현이 불가능한데 왜 배우나? 왜why → Optimal solution이기 때문에 교체 기법의 성능 평가 도구로 사용됨

위와 같은 상황이라면 현재 pageframe이 가득 차있기 때문에 w를 넣기 위해서는 교체가 필요합니다.

이 상황에서 Min algorithm은  y가 가장 마지막에 참조될 예정이니 page y를 교체합니다.

 

FIFO Algorithm - Fixed allocation

FIFO : First In First Out - 가장 오래된 Page를 교체

 

단점

  • 가장 오래된 Page가 뭔지 알려면 Page가 적재된 시간을 기억해야 함 - overhead
  • Locality에 대한 고려가 없어서 자주 사용되는 page가 교체 될 가능성이 높음
  • 더 많은 Page frame을 할당 받음에도 불구하고 Page fault가 증가하는 경우가 있음

위와 같은 상황에서 FIFO알고리즘은 가장 먼저 들어온 z를 내보냅니다.

 

FIFO anomaly : locality를 고려하지 않기 때문에 더 많은 page frame을 할당 받음에도 불구하고 page fault가 증가.

 

위의 table을 보면 FIFO anomaly를 확인할 수 있다.

반응형