CS/OS
[OS] Virtual Memory #1
Henu
2021. 7. 21. 14:40
Virtual Memory
각각 가상화된 OS들이 자신만의 물리 메모리가 있다고 믿게 해주기 위해 메모리 가상화를 사용한다.
메모리 가상화의 목표
- 투명성
- 프로세스는 메모리가 가상화 된 사실을 몰라야 한다.
- 효율성
- 메모리 공간의 파편화를 최소화 한다. (공간 효율)
- 하드웨어의 도움을 받아 오버헤드를 줄인다. (시간 효율)
- 보안
- OS와 프로세스를 다른 프로세스로부터 보호해야 한다.
- 프로세스 각각은 독립적이어야 한다.
오른쪽이 실제 물리 메모리 공간이고 왼쪽이 가상 메모리 공간이다.
하드웨어의 도움을 받아 가상메모리 주소를 실제 물리 메모리 주소로 변환해 사용할 수 있다.
주소 변환
- OS는 물리 메모리 공간의 어디가 비어있는지, 어디가 사용중인지를 추적할 수 있어야 한다.
- 메모리 공간의 주소는 물리 메모리에 연속적으로 배치되어야 한다.
- 각각의 주소 공간의 모두 같다.