Firstly mep916 is 100% right.
A BIOS update won't allow the OS to address 4GB of RAM. You'll need to install a 64 bit operating system to use the total amount.
well, yes sort of. A PAE compatible OS and CPU can allow a 32 bit OS and CPU to use up to 64gb. Windows XP is just limited at 4gb because thats how MS make thier money. A PAE enabled 32 bit copy of 2003 Enterprise can handle 32gb.
Secondly jd, this is irrelevant because we are not talking about a server edition of Windows (with 100% PAE-aware kernel mode drivers) which are currently the only PAE compatiable OSs from MS.
32bit Vista, like 32bit XP and later, doesn't really support PAE. You can turn PAE on, but you won’t then actually be able to address any more memory. The only reason to turn PAE on is if you want to activate the no-execute (NX) or execute-disable (XD) features of modern CPUs. That's all PAE does on these operating systems. The reason why PAE doesn't expand the memory map on these OSs is because for PAE to work, all of its kernel mode drivers need to be PAE-aware (as they are in server editions). If
any of them aren't, the computer will hang. MS gave up on having enough PAE-aware drivers in 2004. As such, they also abandoned 32bit PAE mode for Windows. Consequently, PAE gives you exactly the same 4GB maximum as non-PAE mode.
32bit can only go to 3.5gb not 4gb, doesn’t include the graphics cards at the 2 cards has its own 512mb the memory in the hard drive is virtual memory it is store on the hard drive but does not get used unless the main memory is full
And thridly, this is just completely wrong (i.e. every point in the sentence).
In 32 bit Windows operating systems, the total addressable space available is
4GB. Why? A 32bit OS can only address 2^32bit = 4294967296 or 4GB TOTAL. If you install a total of 4GB worth of RAM, the system will detect/use/display less than 4GB of total memory (SP1 will show all, but you cannot use it all) because of address space allocation for other critical functions, such as:
- System BIOS (including motherboard, add-on cards, etc..)
- Motherboards resources
- Memory mapped I/O
- Configuration for AGP/PCI-Ex/PCI
- Other memory allocations for PCI devices
If you don't believe me, may be you will believe MS:
http://support.microsoft.com/kb/929605
"Various devices in a typical computer require memory-mapped access. This is known as memory-mapped I/O (MMIO). For the MMIO space to be available to 32-bit operating systems, the MMIO space must reside within the first 4 GB of address space.
For example, if you have a video card that has 256 MB of onboard memory, that memory must be mapped within the first 4 GB of address space. If 4 GB of system memory is already installed, part of that address space must be reserved by the graphics memory mapping. Graphics memory mapping overwrites a part of the system memory. These conditions reduce the total amount of system memory that is available to the operating system."
So as I said originally:
...So, given the fact that you have 2 x 512mb of memory on your GPUs, that takes 1gb of memory address space. That leaves 3GB. The other 512mb (i.e. to make 2.5gb available) may be being used in hard drive memory and sound integrated memory. SP1 has changed Vista to show all of the installed memory but that doesn’t mean that it is available. It sounds to me that you only have 2.5GB available to be addressed to due to the 32bit OS limitations and because you have taken up addressable memory with other hardware. It sounds about right to me. You could also check that your onboard graphics is disabled and therefore not taking any addressable memory.
If you wish to take full advantage of your installed system memory, the
only way is to install a 64bit operating system, and since XP 64bit sucks, you are looking at Vista Ultimate. Just make sure your laptop has all the required supporting 64bit drivers.