[CentOS] 4gb ram shows as 3.3gb

John R Pierce pierce at hogranch.com
Thu Jul 26 22:14:42 UTC 2007

Martin Marques wrote:
> John R Pierce wrote:
>> but thats neither here nor there, PAE is a universal issue for any 
>> x86 32bit system with 4GB+ ram, with PAE disabled, the BIOS, PCI, AGP 
>> or PCI-express, etc IO spaces consume anywheres from .5 to 1GB of the 
>> 32bit address space. PAE is a hardware workaround implemented in 
>> pretty much all Intel and AMD CPUs made in the last 5+ years, and 
>> allows the OS to access more than 4GB of physical address space. PAE 
>> introduces some hardware overhead because it involves larger page 
>> tables and another level of indirection in the TLB lookups.
>> CentOS 5 installs defaults to PAE off because there are some systems 
>> where PAE is crash-happy. Someone here has already explained how to 
>> enable PAE and in fact the original poster tried it and is happy with 
>> his full 4GB now.
> Well, looks like I'm having quite a bit of a problem then. :-(
> I have PAE kernel running, and all I see is 3.2Gb of the 4Gb.
> dmidecode gives me this (intel chip):
> Handle 0x0000, DMI type 0, 20 bytes.
> BIOS Information
> Vendor: Intel Corp.
> Version: EV91510A.86A.0482.2006.0222.2350
> ....
> Any ideas on why I can't see all 4Gb?

Could be an issue with the ASPI information being provided by the system 
BIOS. The missing 700MB or so of memory is at a high physical address 
somewhere, its up to the BIOS to tell the OS where this is.

according to that BIOS identifier code in your DMI data, your board is a 
Intel Desktop D9150GEV or its cousins, and you have BIOS version 0482, 
which is the last version
(see http://support.intel.com/support/motherboards/desktop/sb/cs-010639.htm)

per the technical product specification for those boards, 
PAE may not be supported.
it doesn't say that explicitly, however, section 2.2.1 on page 51 says ...

The board utilizes 4 GB of addressable system memory. Typically the 
address space that is
allocated for PCI Conventional bus add-in cards, PCI Express 
configuration space, BIOS
(firmware hub), and chipset overhead resides above the top of DRAM 
(total system memory). On
a system that has 4 GB of system memory installed, it is not possible to 
use all of the installed
memory due to system address space being allocated for other system 
critical functions. These
functions include the following:

• BIOS/firmware hub (2 MB)
• Local APIC (19 MB)
• Digital Media Interface (40 MB)
• Front side bus interrupts (17 MB)
• PCI Express configuration space (256 MB)
• MCH base address registers, internal graphics ranges, PCI Express 
ports (up to 512 MB)
• Memory-mapped I/O that is dynamically allocated for PCI Conventional 
and PCI Express add-in cards.

this implies that the 'overlapping' memory is NOT relocated to a higher 
address. This was a rather low end desktop board from circa 2004, 
intended strictly to support Win2000/XP in 32bit mode. with the P4 500 
and 600 series CPUs and onboard Intel shared memory graphics.

More information about the CentOS mailing list