Originally Posted by wagaboy
This is exactly the confusion that I was talking about in my earlier post.
What is confusing? Everything you mentioned seems to say the same thing. For 4GB or more
you need either PAE or 64 bit. You just seem to have trouble believing it.
If 4GB physical memory is all I have in my system, and I don't want anything more than this, why can't Linux report all 4GB or at least some value slightly less than 4GB. Why does it have to be 3.2 GB, which is about 800 MB short of 4GB
The amount less than 4GB is controlled by the motherboard and the BIOS. Linux has no way to influence that. Some systems let you use 3.5GB some restrict you to even less than 3GB.
If typical motherboards permitted you to use almost the whole 4GB, the advice to use PAE for 4GB or more wouldn't be as appropriate. Lots of people have exactly 4GB of ram and if they could use almost all of it without PAE, we would be advising them to do so. We advise people with exactly 4GB to use PAE or 64 bit because motherboard designs reserve a significant chunk of the first 4GB of physical address space.
Notice the motherboard and BIOS and often some BIOS menu options control whether even 64bit or PAE can use more ram. On some motherboards 64bit and PAE are both restricted to the same limit (significantly less than 4GB) that non PAE 32 bit can use. On many motherboards, there is a BIOS option that must be set to allow 64bit or PAE to use more.
Many of my previous posts on this topic tell you how to check, even while you are still running a 32 bit non PAE kernel, whether your BIOS is set to allow PAE and 64bit to use more ram.