Btw., prior to service pack 1, XP would let you access 4 gigabytes of physical memory - after that, it was reduced to 4 gigabytes of address space. Microsoft claims it's because of compatibility, but I think marketing (the server versions...) had a finger in the play as well.
There isn't really any problem with even more than 4 gigs of memory on 32bit OSes, and XP supports PAE, you still only get 2 gigabytes (or 3, with a boot.ini switch and specially flagged applications) per-application, though.