CS/OS

[OS] Virtual Memory #1

Henu 2021. 7. 21. 14:40
Virtual Memory

 

 

 

각각 가상화된 OS들이 자신만의 물리 메모리가 있다고 믿게 해주기 위해 메모리 가상화를 사용한다.

 

 

메모리 가상화의 목표

  • 투명성
    • 프로세스는 메모리가 가상화 된 사실을 몰라야 한다.
  • 효율성
    • 메모리 공간의 파편화를 최소화 한다. (공간 효율)
    • 하드웨어의 도움을 받아 오버헤드를 줄인다. (시간 효율)
  • 보안
    • OS와 프로세스를 다른 프로세스로부터 보호해야 한다.
    • 프로세스 각각은 독립적이어야 한다.

 

 

오른쪽이 실제 물리 메모리 공간이고 왼쪽이 가상 메모리 공간이다.

 

하드웨어의 도움을 받아 가상메모리 주소를 실제 물리 메모리 주소로 변환해 사용할 수 있다.

 

 

주소 변환

  • OS는 물리 메모리 공간의 어디가 비어있는지, 어디가 사용중인지를 추적할 수 있어야 한다.
  • 메모리 공간의 주소는 물리 메모리에 연속적으로 배치되어야 한다.
  • 각각의 주소 공간의 모두 같다.