2012-11-26 3 views

답변

2

32 비트 CPU에서 가상 주소 포인터는 32 비트입니다. 따라서 각 가상 주소 공간 (일반적으로 최신 OS의 프로세스 당 하나)에는 4GB의 범위가 있습니다. PAE는 물리적 메모리가 처리되는 방식에만 영향을 미치며 가상 주소에는 영향을 미치지 않습니다.

단일 프로세스는 항상 최대 4GB의 가상 메모리에 매핑 될 수 있습니다. 일반적으로 32 비트 OS는 커널 매핑을 위해 일부 주소 공간을 사용하기 때문에이를 3GB 또는 2GB로 제한합니다.

+0

답변을 주신 David 께 감사드립니다. 아래 링크는 응용 프로그램이 응용 프로그램 창을 통해 4GB 이상의 데이터에 액세스 할 수 있음을 나타냅니다. 그것이 어떻게 이루어 졌는지에 대한 단서를 제게 줄 수 있습니까? http://msdn.microsoft.com/en-us/library/windows/hardware/gg487512.aspx 3. 응용 프로그램 창 작업 PAE 지원 운영 체제는 올바르게 코딩 된 응용 프로그램이 물리적 메모리에 아무 곳이나 액세스 할 수 있도록 API를 도입 할 수 있습니다 시스템에서 4GB가 넘을 수도 있습니다. 이상적으로 API는 "높은"실제 메모리를 할당합니다. 이는 메모리에 대량의 데이터에 대한 빠른 액세스가 필요한 응용 프로그램에 매우 유용합니다. – Prabagaran

+0

기본적으로 4GB의 어딘가에 하나 이상의 가상 주소 공간 청크를 예약합니다. 그런 다음 총 4GB가 넘을 수있는 운영 체제의 메모리 블록을 할당합니다. 그런 다음 특정 블록을 가상 주소 공간의 특정 창에 매핑하도록 OS에 지시합니다. 소프트웨어에서는 다양한 메모리 덩어리를 필요에 따라 주소 공간에 매핑합니다. Windows에서는 [AWE] (http://msdn.microsoft.com/en-us/library/windows/desktop/aa366527%28v=vs.85%29.aspx)라고합니다. –