As above.
The best explanation I've seen for the "I have 4gb, but the OS only shows 3.5gb" is found on this page (including a spiffy graphic! ). Thing is, and as there noted, the overall solution advised is "enable PAE, and the OS will be able to see the 4gb". Fine and well, that matches my understanding of how PAE extends the 32-bit Windows OS's ability to reference memory by creating a 'buffer' to make a virtual 36-bit address space.
But, here is the problem that brought out this question.
DEP on 32-bit Windows OSes requires PAE. If you have DEP enabled, you have PAE enabled, whether you set the switch in the boot.ini or not. This according to Microsoft, themselves:
...which is why I wonder about the number of "I only see 3.5gb, when I have 4gb" questions. Virtually EVERY SINGLE processor released in the past 5 years has DEP support (either via AMD's NX bit or Intel's XD bit). So, installing a clean Windows to a box with one of these processors, it by default enables DEP. I've not seen a single system without that enabled in a very, very long time, now. Ergo, PAE is also enabled, and...
...well, back to the title. Why would anyone not see all 4gb of ram, then? If PAE allows it to be seen, and PAE is automatically enabled when DEP is present, and DEP has been present on every proc even remotely modern...???
The best explanation I've seen for the "I have 4gb, but the OS only shows 3.5gb" is found on this page (including a spiffy graphic! ). Thing is, and as there noted, the overall solution advised is "enable PAE, and the OS will be able to see the 4gb". Fine and well, that matches my understanding of how PAE extends the 32-bit Windows OS's ability to reference memory by creating a 'buffer' to make a virtual 36-bit address space.
But, here is the problem that brought out this question.
DEP on 32-bit Windows OSes requires PAE. If you have DEP enabled, you have PAE enabled, whether you set the switch in the boot.ini or not. This according to Microsoft, themselves:
To use these processor features, the processor must be running in Physical Address Extension (PAE) mode. However, Windows will automatically enable PAE mode to support DEP. Users do not have to separately enable PAE by using the /PAE boot switch.
...which is why I wonder about the number of "I only see 3.5gb, when I have 4gb" questions. Virtually EVERY SINGLE processor released in the past 5 years has DEP support (either via AMD's NX bit or Intel's XD bit). So, installing a clean Windows to a box with one of these processors, it by default enables DEP. I've not seen a single system without that enabled in a very, very long time, now. Ergo, PAE is also enabled, and...
...well, back to the title. Why would anyone not see all 4gb of ram, then? If PAE allows it to be seen, and PAE is automatically enabled when DEP is present, and DEP has been present on every proc even remotely modern...???