Windows XP + PAE + 6GB RAM: See more than 3.5GB?
Firstly let me say I've seen a number of similar questions on SuperUser, and I don't think this is a duplicate. (Most address 4GB RAM installed. I have 6GB)
I have Windows XP 32-bit running on a i7-based Xeon system with 6GB of RAM. I only see 3.5GB of RAM in Windows.
Is there any way to squeeze more visible RAM out of this set up? Even an extra 1GB would be great.
Does having 6GB (vs 4GB) of RAM installed help at all? (I.e Even if I loose the 3.5-4.0 GB region, can I use the area above it?)
P.S. Will eventually move to Windows 7 64-bit, but can't for now.
Even with Physical Address Extensions enabled Windows XP still allows only 4 GB of memory. I know this can be a little confusing since Windows Server 2003 allows up to 64 GB of RAM (with the proper processor support). Sadly your OS is bounded to 4 GB in this case. The kernel may support up to 64 GB with PAE, but it is locked down in XP. It seems the only reason they still include it is for DEP support. From Physical Address Extension - PAE Memory and Windows:
Although support for PAE memory is typically associated with support for more than 4 GB of RAM, PAE can be enabled on Windows XP SP2, Windows Server 2003, and later 32-bit versions of Windows to support hardware enforced Data Execution Prevention (DEP).
EDIT: I just want to add that this 4GB cap includes dedicated video memory or memory set aside for a on board GPU.
No. You won't see more than 3.5GB until you upgrade to a 64 bit operating system. If you need to use all 6GB now, you will need to get that "eventual" Win7 64 bit install now.
As near as I can understand:
32-bit processors natively have 4GB (2^32 [bit] ) of address space -- Period. Because of MMIO (Memory-Mapped Input/Output) a portion of this space is also used to communicate with, and address the memory of, your peripheral devices (ie gfx cards).
In order to support multiple memory intensive applications and to compensate 8GB+ mainboard support, Intel (and later, AMD) introduced PAE (Physical Address Extension) to increase the addressing space to 48 bits (and later 52 bits), respectively.
This is accomplished by sending memory addresses in 2+ "chunks" (Dual-Cycle Addressing) -- the first 32 bits on 1 cycle, and the remaining bits on consecutive cycles thereafter.
However, for this new framework to be utilized, hardware manufacturers had to integrate support for DCA (aka DAC) into their respective products, typically requiring extensive hardware revision and special PAE enabled drivers.
Software also had to be rewritten to support Large Address Awareness, allowing more than the default 2GB of application memory space. Needless to say, because of the amount of software and hardware revision involved, and with the advent of 64-bit processors soon afterward, the technology (while popular in server and enterprise environments) never significantly penetrated the end-user market.