I only have 2GB installed in my system. Actually, I believe that unless you are doing a lot of photo work for print or HD video editing, running a large corp database, or need to dozens of programs running at once, more than 2GB is overkill.
But, there are ways to make Win XP see more than 2GB of RAM. You need to modify your C:\boot.ini file, to do so.
In your boot.ini you will find an [operating systems] section. I recommend taking the boot entry you normally use there (most users will only ever see one entry) and duplicating it. Next, you need to modify one of the two duplicate entries. If you want to default with more than 2GB at start up, modify the top-most of the duplicates.
You need to add /3GB /userva=<number> where <number> is equal to the amount of RAM you want visible to the OS measured in megabytes. This number should not extend beyond 3072 (3GB).
Increasing this number allows processes to have more virtual address space, but takes address space away from the kernel. Windows normally reserves the upper 2GB of virtual address space for kernel use. By taking address space away from the kernel, you may create problems with the kernel. Errors like blue screens may occur if you increase this number too much. We use a /userva value of 2500 or 2700 with our products.
I strongly recommend that you back up your boot.ini file, and that you make all modifications CAREFULLY. An improper boot.ini may leave your system unbootable.
Below is an example boot.ini file:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional 2.5GB" /3GB /userva=2500 /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect