가상 메모리란?
- 메모리가 실제 메모리보다 많아 보이게 하는 기술입니다.
- 프로세스가 실제로 사용하는 메모리는 작다는 점에 착안해서 고안된 기술입니다.
- 실제 프로세스에서 사용하는 메모리만 제공하고, 나머지 공간은 가상 주소만 제공합니다.
- 이때, 프로세스간 공간 분리로, 프로세스 이슈가 전체 시스템에 영향을 주지 않습니다.
- 배치 처리 시스템에서는 가상메모리가 필요하지 않습니다.
: 프로세스 로드 - 실행 - 종료 의 과정을 통해 메모리를 다시 반환받고, 반환받은 뒤 로드하기 때문입니다.
- 여러 프로세스를 동시 실행하는 시스템에서 사용하게 됩니다.
: 컴퓨터의 메모리에는 한계가 존재합니다. : 통상 RAM용량은 8GB에서 16GM
: 수십개의 프로세스를 할당하기에는 메모리 한계가 존재합니다.
가상 메모리 구성
- 프로세스에는 가상 주소를 주고, 실제 데이터를 읽고 쓸때만 물리주소로 매핑하여 바꿔줍니다.
- 가상 주소 : 프로세스가 참조하는 주소
- 물리 주소 : 실제 메모리 주소
- MMU (Memory Management Unit)
: 가상주소를 물리주소로 변환해주는 하드웨어 장치입니다.
: CPU에 코드 실행 시, 가상메모리 접근이 필요할 때, 해당 주소를 물리 주소값으로 변환해줍니다.
: 물리적인 하드웨어 장치를 이용해야 빠르기 때문에 별도 장치를 둡니다.
'Computer Science' 카테고리의 다른 글
운영체제 - 페이지 교체 알고리즘 (0) | 2024.05.28 |
---|---|
운영체제 - 페이징 시스템 (0) | 2024.05.27 |
운영체제 - 동기화 이슈 (0) | 2024.05.03 |
운영체제 - 스레드 (0) | 2024.05.02 |
운영체제 - 프로세스와 스케줄링 (0) | 2024.05.02 |