
1. 페이징 (Paging)
2. 세그멘테이션 (Segmentation)
3. 페이지 교체 알고리즘 (Page Replacement Algorithm)
메모리(프레임)가 가득 찼을 때, 새로운 페이지를 가져오기 위해 어떤 페이지를 내쫓을지 결정하는 방법입니다.
-
FIFO (First-In First-Out)
- 가장 먼저 들어온 페이지를 교체.
- 단순하지만 성능이 떨어질 수 있음 (Belady’s Anomaly 발생 가능).
-
OPT (Optimal Page Replacement)
- 앞으로 가장 오랫동안 사용되지 않을 페이지를 교체.
- 이론적으로 가장 좋은 성능.
- 실제 구현은 불가능(미래 참조를 알 수 없음) → 성능 비교 기준으로만 사용.
-
LRU (Least Recently Used)
- 가장 오래 전에 사용된 페이지를 교체.
- 실제 시스템에서 많이 사용.
- 구현 시 스택이나 참조 시간 기록 필요 → 오버헤드 존재.
-
LFU (Least Frequently Used)
- 참조 횟수가 가장 적은 페이지를 교체.
- 단, 오래 전에 많이 쓰였던 페이지가 그대로 남는 문제 존재.
-
Clock 알고리즘 (Second Chance)
- FIFO 개선 버전.
- 참조 비트를 두어, 0이면 교체 / 1이면 한 번 더 기회 부여.
- 하드웨어에서 구현 용이, 실제 OS에서 자주 사용.