Ok people, assuming I got all of this, here's a sort of compiled mini-guide. Please correct anything I have wrong:
Summing it up:
- You can't get much more than 3GB out of 32-bit Windows XP, period. Addressable amount will vary (3 / 3.3 / 3.5GB) depending on the devices you have, mainly your graphics card.
Why? above 3GB is necessary for device mapping, for example, drivers accessing your graphics card RAM as if it were main memory.
- PAE does *not* help in the former case.
Why? Enabling PAE is only good for enabling the NX/XD (DEP) functionality when using modern CPUs, because even if it's enabled, 32-bit Windows will not map stuff above the 4GB boundary, thus falling in the previous situation.
- The "memory remap" option in the BIOS does *not* help you in the former situation. The 32-bit addressable space problem remains with 32-bit WinXP. It helps in other situation (see below).How can I use more than 3GB of RAM then?
- Your motherboard must support more than 3GB (well duh)
- Your motherboadd must support memory remapping (most modern boards do, look for "Memory remap above 4G" or something similar).
Why? The 3-4GB area is for devices. This "splits" the RAM in two pieces below 3GB and above 4 or so GB, respectively. Don't worry, the PC knows what it's doing.
- Your operating system must be 64-bit OR 32-bit Windows Server
, or Linux with proper PAE support.
What? In more realistic/practical terms, think WinXP 64, Vista 64, some 64-bit variation of any Linux distro, etc.
If you have a 64-bit operating system but your program is 32-bit only, it will still be only able to address 4GB. That means that, i.e., even if you're running XP64 with 8GB of RAM, Supreme Commander will only be able to use, at maximum, 4 of those 8 gigabytes.
-- This "guide" created with information from, among others: bitvector (mainly) / UberGerbil / derFunkenstein / just brew it! / Convert