In 32 bit Windows operating systems, the total addressable space available is 4GB. If you installed total 4GB memory, the system will detect less than 4GB of total memory because sizable portions of the available address space must be allocated 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 - (Video RAM being the main culprit here)
Different onboard devices and different add-on cards (devices) will result of different total memory size. e.g. more PCI cards installed will require more memory resources, resulting of less memory free for other uses.
This limitation applies to most chipsets & Windows XP/Vista 32-bit version operating systems.
If you install a Windows operating system, if more than 3GB memory is required for your system, then the below conditions should be met:
1. A memory controller which supports memory swap functionality is used. The latest chipsets like Intel 975X, 955X, Nvidia NF4 SLI Intel Edition, Nvidia NF4 SLI X16, and AMD K8 CPU architecture can support the memory swap function.
2. Windows XP Pro X64 Ed. (64-bit), Windows Vista 64, or other OS which can address more than 4GB memory.
Note: According to the latest Change Log published my Microsoft, Windows Vista 32bit ***SP1*** will display the installed amount of RAM. It is unclear at this point whether or not that memory will actually be available for use, or if it's simply change to the display.