차례:
정의-가상 메모리 (VM) 란 무엇입니까?
가상 메모리 (VM)는 RAM (random access memory) 또는 디스크 스토리지와 같은 추가 주 메모리를 시뮬레이트하는 운영 체제 (OS)의 커널을 위해 개발 된 기능입니다. 이 기술에는 더 큰 프로그램이나 여러 프로그램을 동시에로드하고 실행할 수 있도록하여 메모리 조작 및 관리가 포함됩니다. 또한 각 프로그램이 무한 메모리를 가진 것처럼 작동 할 수 있으며 추가 RAM을 구입하는 것보다 비용면에서 더 효과적인 것으로 간주됩니다.
가상 메모리를 사용하면 소프트웨어가 하드 디스크 드라이브 (HDD)를 임시 저장소로 사용하여 추가 메모리를 사용할 수 있습니다. 대부분의 중앙 처리 장치 (CPU)는 가상 메모리를 지원하는 MMU (메모리 관리 장치)를 제공합니다. MMU는 메모리와 HDD에있는 "실제"주소와 "가상"주소를 변환하는 데 사용되는 "페이지 테이블"을 지원합니다.
가상 메모리를 사용하는 OS는 즉시 필요하지 않은 HDD에서 데이터를 전송하여 공간을 확보합니다. 데이터가 필요할 때 다시 HDD로 복사됩니다. 모든 RAM을 사용하는 경우 VM은 데이터를 HDD로 스왑 한 다음 다시 되돌립니다. 따라서 VM은 더 큰 총 시스템 메모리를 허용합니다. 그러나 복잡한 코드 작성이 필요합니다.
Techopedia는 가상 메모리 (VM)를 설명합니다
1940 년대와 1950 년대에 VM 이전에 대규모 프로그램은 1 차 및 2 차 스토리지를 관리하는 로직을 구현했습니다. 이 과정을 오버레이라고했습니다. 프로그램이 메모리 스토리지보다 큰 경우, 프로시 저는 지속적으로 사용되지 않은 프로그램의 일부를 오버레이로 취급 할 수 있도록합니다. 각 개별 오버레이는 메모리의 현재 오버레이를 덮어 씁니다. 오버레이 프로그래밍은 광범위했습니다. VM을 생성하는 주요 이유 중 하나는 추가 기본 메모리가 아니라 프로그래밍이 쉽기 때문입니다. 1969 년까지 가상 메모리의 효과가 실현되었습니다. 그리고 그것은 널리 구현되었습니다.
VM은 문자 그대로 실제 존재하는 것보다 더 많은 RAM 또는 디스크 스토리지 메모리를 사용하려고 시도합니다. 이 프로세스를 통해 CPU는 더 큰 프로그램과 여러 프로그램을 동시에 처리 할 수 있습니다. VM은 메모리를 일시적으로 저장하고 제어하여 HDD를 사용하는 일반적인 운영 체제 (OS) 및 하드웨어 프로그램입니다. 메모리 조작 및 관리 프로세스를 통해 각 응용 프로그램은 거의 무한한 메모리를 가진 것처럼 작동 할 수 있습니다. 임시 메모리 저장 장치는 "PMMU (paged memory management unit)"라고도하는 MMU (memory management unit)에 의해 관리됩니다.
"실제"메모리는 "페이지"라는 작은 섹션으로 나뉩니다. 페이지의 크기는 일반적으로 4 킬로바이트입니다. 모든 RAM 또는 디스크 메모리가 사용되면 사용되지 않은 모든 페이지가 스왑 파일이라는 가상 메모리에 기록됩니다. 스왑 파일이 필요하면 페이지 스와핑이라는 프로세스 인 "실제"메모리로 다시 변환됩니다.
VM을 사용할 때의 몇 가지 단점 중 하나는 페이지 스왑이 과도 할 수 있다는 것입니다. 특히 사용자에게 열려있는 응용 프로그램이 많을 경우 더욱 그렇습니다. CPU가 HDD에 쓰는 데 많은 시간을 소비하기 때문에 프로그램 속도가 크게 느려질 수 있습니다. 성능의 현저한 감소를 스 래싱이라고합니다.
