포도가게의 개발일지
가상메모리 관리 참조 : 컴퓨터 시스템 && [OS] Lec 10. Virtual Memory Management (2/6) - SW components 본문
CS
가상메모리 관리 참조 : 컴퓨터 시스템 && [OS] Lec 10. Virtual Memory Management (2/6) - SW components
grape.store 2021. 9. 10. 15:57반응형
https://www.youtube.com/watch?v=1gHHBa8UTjM
한국기술대학교 김덕수 교수님의 강의를 참조하였습니다.
개요
Allocation Strategies
각 프로세스에게 메모리를 얼마 만큼 줄것인가?에 대한 전략
- Fixec allocation(고정 할당)
- 프로세스의 실행 동안 고정된 크기의 메모리 할당 - Variable allocation (가변 할당)
- 프로세스의 실행 동안 할당하는 메모리의 크기가 유동적
고려사항
- 프로세스 실행에 필요한 메모리 양을 예측해야함
- 너무 큰 메모리 할당(too much allocation)
- 너무 적은 메모리 할당(too small allocation)
Fetch Strategies
특정 page를 메모리에 언제 적재할 것인가?
- Demand Fetch : 필요할 때 가져온다
- 프로세스가 참조하는 페이지들만 적재 - Anticipatory fetch(pre-paging)
- 참조될 가능이 높은 page 예측
- 가까운 미래에 참조될 가능성이 높은 page를 미리 적재
- 예측 성공시 page fault overhead가 없음
- 예측 실패시, 더 큰 overhead가 발생
Placement Strategies
- Page/segment를 어디에 적재할 것인가?
- Paging system
- Segmentation system에서의 배치기법
Replacement Strategies
- 새로운 page를 어떤 page와 교체 할 것인가?
Cleaning Strategies
- 변경 된 page를 언제 write-back 할 것인가?(swap device에 반영)
- update bit == (duty bit)
- Demand cleaning
- 해당 페이지에 메모리에서 내려올 때 - Anticipatory cleaning(pre-cleaning)
- 더 이상 변경될 가능성이 없다고 판달 할때, 미리 write-back
- 실제 os는 대부분 Demand cleaning기법 사용 (예측실패 리스크가 너무 큼)
Load(부하, 떠맡은 일) Control Strategies
- 시스템의 multi-programming degree(시스템에 들어온 프로세스의 수 많이들어오면 로드가 큼) 조절
- Allocation strategies와 연계 됨 - 적정 수준의 multi-programming degree를 유지해야함
- 저부하 상태 100개할수있는데 10개 일 줄때
- 고부하 상태 100개 할 수 있는데 1000개 일 줄때
= 스레싱 현상발생 : 과도한 over fault발생
'CS' 카테고리의 다른 글
Comments