4 gig of ram on XP
It is an O/S oddity, the bios will correctly report 4 gig of ram, the operating system can only utilitlize 3 gig of ram, and the other gig of ram is being used by the bios and pci devices.
The physical address space is used to address more than just RAM. It
is also used to address all of the memory and some of the registers
presented by devices. Consequently, if a machine is configured with
the maximum amount of physical memory, some of that memory will be
unusable because some of the physical address space is mapped for
other uses.
Increasing workstation performance and RAM affordability have enabled more and more users to push the limits of 32-bit computing. RAM allocation when using Microsoft Windows XP Professional on x86-based computers. Specifically, the 32-bit version of XP Professional limits available RAM to noticeably less than 4 GB while Microsoft Windows XP Professional x64 Edition eliminates this barrier.
Microsoft Windows XP Professional, designed as a 32-bit OS, supports an address range of up to 4 GB for virtual memory addresses and up to 4 GB for physical memory addresses. Because the physical memory addresses are sub-divided to manage both the computer’s PCI memory address range (also known as MMIO) and RAM, the amount of available RAM is always less than 4 GB.
The PCI memory addresses starting down from 4 GB are used for things like the BIOS, IO cards, networking, PCI hubs, bus bridges, PCI-Express, and video/graphics cards. The BIOS takes up about 512 KB starting from the very top address. Then each of the other items mentioned are allocated address ranges below the BIOS range. The largest block of addresses is allocated for today’s high performance graphics cards which need addresses for at least the amount of memory on the graphics card. The net result is that a high performance x86-based computer may allocate 512 MB to more than 1 GB for the PCI memory address range before any RAM (physical user memory) addresses are allocated.
RAM starts from address 0. The BIOS allocates RAM from 0 up to the bottom of the PCI memory addresses mentioned above, typically limiting available RAM to between 3 GB and 3.4 GB.
Thus, it is your bios and pci devices that are mapped to your physical ram that limits the amount of usuable ram to XP o/s.
Slightly long winded, using two approaches, I hope that clears things up.