The facts are:
Any 32-bit operating system can address (the way the operating system "points" the CPU to the piece of memory it wants to use at any given time) 4GB of RAM, although Microsoft has artificially limited some versions of Vista to less.
Parts of the computer that must store information, such as video cards, network cards, legacy serial, parallel and PS/2 ports, sound cards, and practically every other component on your motherboard or any add-in card take up some of that 4GB address space.
The part of that 4GB address space cannot be used to "point" to the physical RAM in your computer, so if you have a fancy Alienware laptop with dual 1GB video cards and a 32bit XP, Vista, Linux, or whatever, you've lost 2GB right there and might as well only have 2GB of physical RAM installed.
This is why many BIOSes will say "4096MB installed, 3347MB addressable" as in the case of my laptop (note that word, addressable, that means 3347MB of the 4GB a 32-bit operating system can address is available, and the rest of the addresses are used for hardware components like the video cards).
This is also why Alienware prefers to ship 64-bit Vista on their laptops, although you can select 32-bit if you want.
Remember, though, that RAM is really cheap now, especially DDR2 laptop RAM. I just (literaly in the last hour) put 4GB in my laptop. It cost $60 bucks when I ordered it 3 days ago by mail, shipping included. If you can get 3347MB out of 4GB, and you upgraded from 2GB, that means you still have 1347MB more than you had before, and since it is matched RAM (2 identical 2GB modules instead of 1x1GB and 1x2GB), it is operating at the maximum speed of your computer instead of some reduced speed due to not having matched RAM sticks.
Additionally, the only reason Mr. Advertiser up near the beginning of this blog is able to trick his computer into using some RAM as a RAMdisk is because he has 8GB - a full 4GB used by the operating system for RAM+hardware devices, and the other 4GB used by this trick program to pretend it's a hard disk. If you only have 4GB of physical RAM and you buy this program, you have just wasted your money, because it can't do anything for you at all.
There is only one thing that may give you access to your full 4GB of RAM, and that is a 64-bit operating system, whether you wish to use XP 64, Vista 64, or a 64-bit Linux, FreeBSD or other alternative operating system. And if you have more than 4GB, you will get all of that RAM available too, because the maximum RAM a 64-bit operating system can use is many times more than any computer can physically hold right now, and likely for many years from now (the actual amount is 17.2 billion gigabytes).
Even then, there are many laptops that are "wired" by their BIOS+chipset to not give you the full 4GB, so don't be too upset if you still don't get the whole 4GB.
You should also know a few extra bits of information:
64-bit XP is not really XP, it is a lobotomized version of Windows Server 2003.
64-bit Vista uses the same registration keys as 32-bit, you just need a 64-bit or a mixed 32/64-bit install DVD. I am running both 32 and 64-bit Vista legitimately even though I bought a 3-pack of 64-bit Vista.
Windows 7 is awesome, even though it is not really released yet. Get yourself a download copy of it, and a free trial key from Microsoft here:
http://technet.microsoft.com/en-us/windows/dd353205.aspx it is much better than Vista or XP, and almost half as good as Linux (try Ubuntu Linux if you are a Linux newbie and want to try it out, it's free:
http://www.ubuntu.com/GetUbuntu/download).
I'm using Windows XP Pro SP2 and I have 4 GB memory