I dont like being the microft basher du jour, but ...
I should point out - for the sake of fairness - that looking at the main consumer operating systems, its only Windows (and only consumer/workstation versions of it) that has issues with 4GB+ total ram on 32-bit.
Macs have been on 64-bit for a while now, ofc.
Linux, can work with up to 64GB of ram on 32-bit. Although PAE is necessary for a process to be able to access an address range greater than 4GB, most things that might need to do so, do - for example Sun's xVM products.
XP/Vista's 3.3GB 32-bit limit is NOT a limit with 32-bit OSes, but a limit caused by 20 years of accumulated bad-design-decision cruft, and their decision to turn said cruft into a marketing ploy.
Implementing in the Vista consumer OS the same tech for large-memory address used by servers (including 32-bit windows servers) would have meant drivers needing to be rewritten, but oh wait, they had to do that aaanyway 
And if you ask "why a marketing ploy", that's because when memory ranges are the same, the advantage of 64-bit is actually pretty negligible, apart from a very small number of applications.
With current compilers, the applications that can actually make use of all those extra parallel maths operations is pretty tiny, meaning your only real advantage is the extra registers. If anything, the performance gap between 32-bit and 64-bit is shrinking.