The problem is you are probably using a 32bit OS, which can only utilize 3.5GB of RAM. Any RAM you have over that amount is unusable excess.
Edited by MobAttack - 1/11/11 at 11:47am
32 Bit has limitations. The first and largest Limitation is the 4GB limit. Meaning that 32 Bit can not and will not recognize or utilize 4GB of RAM. The Max you will get is 3.5GB of RAM recognized and utilized on a 32 Bit system. No before anyone goes off on me for the fact that Vista SP1 will show that you have 4GB installed you still do not get to utilize that 4GB as it will not use that other 512MB.
To better explain the limitation i turn to Computer Guru of NeoSmart Technologies. Who gave me this bit of information.
Memory is a block of registers (storage devices) in a very long row:
In order to access Address X, the CPU needs to store the value of X in a register in the CPU and tell the memory to read the contents of the address stored in that register.
Registers in x86 PCs are limited to 32 bits, which means the biggest number that can be stored in that register is 2^32, or 4,294,967,296; which means that the CPU can access up to "ADDRESS 4,294,967,296" which is the 4th GB of data.
The problem is that the CPU also access I/O devices (printer, USB, keyboard, mouse, monitor, etc.) by assigning them an address as well. So it reserves half a GB or so of the memory addresses to talk to the I/O devices... So you have 4GB - ~0.5GB -> 3.5 GB (on Windows it is 3.2GB).
This is the only reason x64 was invented.