[Discuss] Limiting amount of memory
Richard Pieri
richard.pieri at gmail.com
Fri Sep 13 22:10:07 EDT 2013
Bill Bogstad wrote:
> It would still be nice to know where the memory is being used.
Some Googling about lead me to the PCI memory hole:
http://en.wikipedia.org/wiki/PCI_hole
Short version: in order to boot 32-bit operating systems the BIOS or EFI
firmware needs to map all PCI devices to the first 4GB of address space.
This leads to "holes" in the memory map between what's available in the
lower 4GB and everything above 4GB. That's the "missing" RAM.
I checked five different boxes: two very different Dells, a white box
server, and two VMware virtual machines. All of them are "missing" some
RAM. How much varies widely: The white box is missing about 1GB; the big
Dell about 2.5GB; the little Dell about 1/2GB, and the two virtual
machines only about 150MB. Make that six: my little HP server is short
about 160MB. The little Dell and one of the VMs are running 32-bit
Linux; the others are 64-bit Linux.
So, not a Dell thing specifically and not a 32-bit thing specifically,
but a PCI thing generally.
As to why mem=16G leaves the system with only 9GB detected? Dunnow. If
mem=8G yields ~6GB useable then mem=16G should yield ~14GB usable on
that box. There could be some kind of memory mapping weirdness between
the PCI allocations and the kernel RAM constraints.
--
Rich P.
More information about the Discuss
mailing list