운영체제 [가상메모리 관리 - 가변 메모리 할당 시 교체기법]
Variable allocation
Working Set (WS) algorithm
Working set
- process가 특정 시점에 자주 참조하는 page들의 집합
- 최근 일정시간 동안(delta) 참조된 page들의 집합
- 시간에 따라 변함
- W(t,delta) --> [t-delta,t] 동안 참조된 page들의 집합
특징
- locality에 기반을 둠
- working set을 메모리에 항상 유지 --> page fault 감소
- window size는 고정
- 적재 되는 page가 없더라도, 메모리를 반납하는 page가 있을 수 있음
- 새로 적재되는 page가 있더라도, 교체되는 page가 없을 수 있음
성능평가
- page fault 수 외 다른 지표도 함께 봐야 함 ex) page frame 유지 cost, page fault 등
단점
- overhead 발생
- Residence set을 page fault가 없더라도 지속적으로 관리해야 함
Page Fault Frquency (PFF) Algorithm
Residence set size를 page fault rate에 따라 결정
- Low page fault rate --> 할당된 page frame 수를 감소
- High page fault rate --> 할당된 page frame 수를 증가
- page fault 기준을 설정하고, 실제 fault (IFT, inter fault time)과 비교
Residence set 갱신 및 메모리 할당
- page fault가 발생시에만 수행
- low overhead
성능평가
- page fault 수 외 다른 지표도 함께 봐야 함
특징
- 메모리 상태 변화가 page fault 시 에만 변함 --> low overhead
Variable MIN algorithm
- varialbe allocation 기반 교체 기법중 optimal algorithm
- 실현 불가능한 기법
- window size 후의 time의 page queue를 고려하여 page 교체
성능평가
- page fault 수 외 다른 지표도 함께 봐야 함
- window size(delta) = R/U (R = page fault 발생 시 처리 비용, U = 한번의 참조 시간 동안 page를 메모리에 유지하는 비용)