가상 메모리 예제

0 0

매우 빠르거나 일관된 응답 시간이 필요한 임베디드 시스템 및 기타 특수 목적 컴퓨터 시스템은 결정성 감소로 인해 가상 메모리를 사용하지 않도록 선택할 수 있습니다. 가상 메모리 시스템은 입력에 대한 응답으로 원치 않는 예측할 수 없는 지연을 일으킬 수 있는 예측할 수 없는 트랩을 트리거합니다. 가상 주소를 실제 주소로 변환하는 하드웨어에는 일반적으로 구현해야 하는 상당한 칩 영역이 필요하며 임베디드 시스템에 사용되는 모든 칩에 해당 하드웨어가 포함되지 는 않습니다. OS/VS1 및 유사한 OS에서 시스템 메모리의 일부 부분은 „V=R“이라고 하는 „가상 현실“ 모드에서 관리됩니다. 이 모드에서는 모든 가상 주소가 동일한 실제 주소에 해당합니다. 이 모드는 인터럽트 메커니즘, 이전 시스템의 페이징 감독자 및 페이지 테이블 및 비표준 I/O 관리를 사용하는 응용 프로그램에 사용됩니다. 예를 들어 IBM의 z/OS에는 3가지 모드(가상 가상, 가상 현실 및 가상 고정)가 있습니다. [16] [페이지 필요] 가상 메모리는 현대 컴퓨터 아키텍처의 필수적인 부분입니다. 구현은 일반적으로 CPU에 내장된 메모리 관리 장치의 형태로 하드웨어 지원이 필요합니다. 필수는 아니지만 에뮬레이터와 가상 머신은 하드웨어 지원을 사용하여 가상 메모리 구현의 성능을 높일 수 있습니다.

[3] 따라서, 1960 년대의 메인 프레임에 대 한 것과 같은 이전 운영 체제, 그리고 1980 년대 초반에서 중반의 개인용 컴퓨터에 대 한 그 (예를 들어, DOS),[4] 일반적으로 가상 메모리 기능이 없습니다.[모호한 – 토론] 하지만 주목할 만한 예외에 대 한 1960년대의 메인프레임에는 수요 페이징: 요청 시 메모리에 페이지를 로드하는 프로세스(페이지 오류가 발생할 때마다)를 수요 페이징이라고 합니다. 이 프로세스에는 다음 단계가 포함됩니다: 인텔 80386 및 이후 IA-32 프로세서에서 세그먼트는 32비트 선형페이드 주소 공간에 있습니다. 세그먼트는 해당 공간 안팎으로 이동할 수 있습니다. 페이지가 주 메모리안팎으로 „페이지“를 만들 수 있어 두 가지 수준의 가상 메모리를 제공할 수 있습니다. 운영 체제가 그렇게하는 경우 몇 가지, 대신 페이징을 사용하여. x86 페이징은 두 개의 보호 도메인만 제공하는 반면 VMM/게스트 OS/게스트 애플리케이션 스택에는 3개가 필요하기 때문에 초기 비하드웨어 지원 x86 가상화 솔루션은 페이징 및 세분화를 결합했습니다. [21]:22 페이징 과 세분화 시스템의 차이는 메모리 분할에 관한 것만이 아닙니다. 세분화는 메모리 모델 의미 체계의 일부로 사용자 프로세스에 표시됩니다. 따라서 하나의 큰 공간처럼 보이는 메모리 대신 여러 공간으로 구성됩니다. 가상 메모리의 주요 이점은 응용 프로그램이 공유 메모리 공간을 관리할 필요에서 벗어나고, 메모리 격리로 인한 보안 을 강화하고, 물리적으로 사용할 수 있는 것보다 더 많은 메모리를 개념적으로 사용할 수 있도록 하는 것입니다.

페이징. Apple Lisa의 운영 체제는 가상 메모리를 특징으로 하는 1980년대의 개인용 컴퓨터 운영 체제의 예입니다. 페이지 테이블은 응용 프로그램에서 볼 수 있는 가상 주소를 하드웨어에서 지침을 처리하는 데 사용하는 실제 주소로 변환하는 데 사용됩니다. [15] 이 특정 번역을 처리하는 이러한 하드웨어는 종종 메모리 관리 장치라고 합니다.