Good info in that link except the PDF for "memory hole" is very dated (2004) only
hinting at what is now the norm:
"Work is being done by the BIOS and/or chip manufacturers that will either remap
physical memory or move device address space in order to eliminate the hole. This
memory hole may be a thing of the past soon."
The MS link I posted I think covers it all including expectations & solutions:
http://support.microsoft.com/kb/929605
Meanwhile KB929580 conflicts with KB929605 stated need for x64 OS:
http://support.microsoft.com/kb/929580
"This problem occurs because the address space is limited to 4 GB in a 32-bit
hardware environment. Memory may be relocated to make room for addresses that the
basic input/output system (BIOS) reserves for hardware. However, because of this
limitation, Windows Vista, Windows Server 2003, and Windows Server 2008 cannot access
memory that is relocated above the 4 GB boundary."
*But then goes on to say*:
"A 32-bit operating system can address memory that is relocated above the 4 GB
boundary if the following conditions are true:
* The computer is in Physical Address Extension (PAE) mode.
* The computer has 4 GB of RAM.
In this case, the operating system correctly reports how much memory is
installed."
Lastly, a break down of memory limits by OS:
http://msdn.microsoft.com/en-us/library/aa366778.aspx
On 5/1/2010 11:24 AM, CW wrote:
I'm not sure how this changes anything about the original post. The reason for
those figures is all based on how things like BIOS handles shadowing, higher
memory registers, PCI-E segments (for the 2.5G) etc.
The 3.5G can -show- but it's because of the way the memory controller works
there.. which would make me think it's far more likely you saw that on either a
server board or using an AMD chip, which has the memory controller onboard.
Some good explanation here:
http://www.codinghorror.com/blog/2007/03/dude-wheres-my-4-gigabytes-of-ram.html
<snip>