페이지 교체 알고리즘 ⭐️⭐️
그런데 요구 페이징 하다가 메모리가 가득 차게 되면 누구를 보조기억장치로 내쫓지?
- 좋은 페이지 교체 알고리즘이란?
- 페이지 폴트가 적은 알고리즘 → 보조기억장치 접근을 줄여줌
- 페이지 폴트 횟수를 알 수 있는 방법?
- 페이지 참조열 (page reference string) → CPU가 참조하는 페이지들 중 연속된 페이지를 생략
FIFO 페이지 교체 알고리즘
- victim page: 메모리에 먼저 올라온 페이지
- 사용예) 초기화 코드
OPT 페이지 교체 알고리즘
- victim page: 앞으로 가장 사용하지 않을 페이지
- 페이지 폴트를 줄일 수 있지만 앞으로 잘 사용 안될걸 어케 알아…
LRU 페이지 교체 알고리즘
- victim page: 최근에 사용하지 않은 페이지
- OPT와 달리 과거를 보고 판단 가능
메모리 할당
- 프로세스는 메모리의 빈 공간에 할당되어야 한다.. 빈 공간이 여러 개 있다면?
- first-fit
- 운영체제가 빈 공간을 순서대로 검색
- 적재할 수 있는 공간을 발견하면 바로 할당
- 검색 최소화, 빠른 할당
- best-fit
- 운영체제가 빈 공간을 모두 검색
- 적재 가능한 가장 작은 공간에 할당
- worst-fit
- 운영체제가 빈 공간을 모두 검색
- 적재 가능한 가장 큰 공간에 할당