I thought LAA flag meant max. 3GB for the application, 2GB without LAA?
Under 32 bit windows (any version), yes. 2GB for any process, 2GB for the kernel. If you boot with the /3GB switch in boot.ini (you
shouldn't) then a process with LAA can address up to 3GB, but the kernel is limited to 1GB.
Under 64 bit windows, a process without LAA is limited to 2GB, same as 32 bit. A process with LAA however can address the full 4GB of the 32 bit address space.
If LAA means 4GB max, then 6GB systems would make more sense for more people.
Honestly I would expect that any program with real need to address >2GB of memory would (should) have a 64 bit version. Just flipping on LAA doesn't do much. The program has to be design to actually allocate and use the extra memory to see a real benefit from it.
Take Oblivion for example. With all the hi-res texture packs and so on available for it it's pretty easy to run into problems with the game running out of memory and crashing when it hits the 2GB barrier. You can modify the game's exe to enable the LAA flag, and doing so will save you from some of the crashes. However, the game will never really use more than 2GB, because it wasn't built to make use of more memory.