[OS] Lecture 10. Virtual Memory Management (1_6) - kibitzing/EnGrow GitHub Wiki
진구
- 새로운 레슨 시작
- 메모리 관리: 어떻게 효율적으로 쓸 것인가?
- 효율적인 게 뭐지? 페이지폴트 덜 나서 컴퓨팅 성능이 올라가는 것
- 하드웨어 & 소프트웨어 어프로치 있음
- 테이블 매핑 효율화해주는 하드웨어
- 최근 조회 및 업뎃된 부분 기억해주는 하드웨어
세영
Virtual memory management:
- 가상 메모리 시스템 성능 (Cost model) 최적화
Cost model:
- Page fault frequency, rate
- Page fault rate를 최소화하는 전략들을 설계해야 함 → Context switch & Kernel 개입 최소화
용어들:
- Page reference string Ω = r1 r2 … rk … rT
- Page fault rate F(Ω) =
number of page faults during Ω/|Ω|
Hardware components:
- Address translation device (TLB, Cache memory, …)
- Bit vectors: 페이지 사용 상황에 대한 정보를 PMT에 기록 (reference bits, dirty bits, …)
- Reference bit vector: page가 최근에 참조되었는지 표시 (접근 시 1로 설정, 주기적으로 0으로 초기화)
- Dirty bit vector: page가 메모리에 적재된 후 수정되었는지 표시 (주기적 초기화 없음, 메모리에서 해제될 때 swap device에 write-back 필요)