I have a VMWare virtual machine on my computer (Host: Win7 x64, VM: Win7 x86). The host has 8GB, of which I've allocated 4GB to the VM, as you can see in the below screen shot:
But when I go to the VM itself, the computer seems to think it only has 3 GB - see screenshot from Task Manager:
Note the total physical memory of 3071 GB. I have tried powering down the VM and restarting, but it still doesn't use the extra memory.
See also my screen shot of the system:
Is this a limitation of VMWare? Or is there some secret switch I need to flip?
Answer
Generally a 32 bit operating system can only see 4 GB of memory, including devices (graphics card etc.). This results in the OS seeing 3 GB of physical memory, even if more than 3 GB is installed. This is true for physical machines and VMs.
32 bit Windows XP, like Windows 2003 Server and later, supported PAE (Physical Address Extensions) which allowed it to use more than 4 GB of physical memory. Windows Vista and Windows 7 do not support PAE any more because of driver incompatibilities that were already present in Windows XP.
Thus generally only 64 bit Windows supports more than 3 GB of physical memory plus 32 bit versions of Windows supporting PAE (Windows 2000, Windows XP, Windows Server 2003, Windows Server 2008); while 32 bit versions of Windows that do not support PAE (Windows Vista, Windows 7) cannot usually see more than 3 GB of physical memory.
Again note that memory assigned to a VM counts as "physical memory" for the OS running in the VM.
No comments:
Post a Comment