I lately got my hands on 4GB of RAM which I tried to put to use in my Laptop. My Fujitsu Siemens Celsius H240 is a Intel CoreDuo based Platform and I had hoped that I would be able to acess all of the memory. Long story short: the circuit / BIOS combination does not support PAE. The BIOS does not provide an option to remap the shadowed memory to an adress range above the 4GB barrier (Memory/PCI Hole remapping). Unfortunately, this means that the memory will be lost to operating systems supporting PAE. In general, the following preconditions have to be met in order to access RAM shadowed by PCI adress ranges on a 32bit operating system:
Under these circumstances Linux will not have a problem accessing all your memory (provided the HIGHMEM options are enabled). On the other hand Microsoft removed PAE support for 32bit Windows XP since SP2. In other words, you will currently only be able to access more than 4GB physical RAM with Windows 2000/2003 Server. Or Linux that is 😉
The amount of virtual ram is a total different issue as well as the amount of RAM acessible by virtulization technologies such as Vanderpool and Pacifica which will at least require the conditions above. The rest is up to the implementations. KVM supports any combination of non/PAE 32/64bit hosts/clients except 64bit client in 32bit host. Whereas VMware will not (yet) support PAE enabled client operating systems.