June 05, 2022
메모리 관리의 fetch, placement, replacement 중 fetch에 해당
프로세스가 요청시 메모리로 가져오는 것
Cf. 미리 가져오기: 앞으로 필요할 것으로 예상되는 페이지 가져오기(예: 캐시)
프로세스의 일부만 가져와서 실행(lazy swapper) → 메모리 효율적 관리, 응답속도 향상
(페이지번호 +) 플래그비트 + 프레임 번호(=물리 메모리 주소 필드)
플래그 비트(유효 비트)의 구성
비어 있는 프레임이 없다면 페이지 교체 알고리즘으로 대상 페이지 victim page(어떤 프레임에 저장된 페이지를 내보낼지) 결정
지역성: 기억장치에 접근하는 패턴에 메모리 전체에 골고루가 아닌 특정 영역에 집중
다양한 알고리즘 있다.
LFU: Least Frequently Used 현재로부터 가장 덜 사용된 페이지 내보냄
NUR: Not Used page Recently 참조 비트와 변경비트만 추가해서 선정 → 추가 용량 적다
FIFO 변형
전역 교체 global replacement
지역 교체 local replacement
⇒ 전체 시스템의 입장에서는 전역 교체 방식이 효율적
하드 디스크 입출력 너무 많아짐 → 페이지 부재로 인해 작업이 멈춘 것 같은 상태
멀티프로그래밍 정도 degree of multiprogramming(동시에 실행하는 프로그램의 수)가 너무 높으면 스레싱 발생하고, 그 지점을 threshing point라고 함
정적 할당 static allocation: 프로세싱 실행 초기에 프레임 나누어 주고, 크기 고정
비례 할당 proportional allocation: 프로세스 크기 비례해서 프레임 할당
동적 할당 dynaminc alloction: 실행 중의 변화 수용
작업 집합 모델 working set model: 가장 최근에 접근한 프레임이 이후에도 참조될 가능성이 높다 → 그 페이지들의 집합을 만들어서 물리 메모리에 유지
쓰기 시점 복사 copy on write