[Gllug] Missing RAM

Richard Jones rich at annexia.org
Sun May 17 11:15:58 UTC 2009


On Sun, May 17, 2009 at 10:52:37AM +0100, John Southern wrote:
> free gives 2072544
> OK so rounding causes it to drop the second GB.
> 
> However my question is where is the missing 24608 bytes.

As Peter points out, this is 24 MB short, which is close to a
'typical' number for some old/cheap chipsets where system RAM is
stolen for video RAM.

However you can't really tell what's going on with RAM without sharing
with us the BIOS e820 maps.  For example, from this machine which has
4 GB of total memory, with my annotations:

BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)

^ This is the "640K will be enough for anyone" low memory.

 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e8000 - 0000000000100000 (reserved)

^ ROMs?  #a0000 is the starting address of ancient PC text mode video
memory.  (Actually, it was #a0000 for mono and #a8000 for colour).

 BIOS-e820: 0000000000100000 - 000000000fff0000 (usable)

^ #100000 is the start of upper memory on all post-AT PCs.

 BIOS-e820: 000000000fff0000 - 0000000010000000 (ACPI data)

^ 1 MB of ACPI data located just under the 256MB memory boundary.

 BIOS-e820: 00000000fffbd000 - 0000000100000000 (reserved)

^ And the rest of upper memory, constituting another 3840MB of RAM.
[Not sure why this is marked 'reserved' when it quite clearly should
be 'usable']

>From the above maps, you can see the usable memory on the machine is
approximately: 3840M + 255M + 640K which is just a snip under 4096 MB.

You'll also note that memory does not need to be physically located in
a single contiguous chunk starting at address 0.  Even physical memory
has addressing holes, and this has been true ever since PCs came with
more than 640K of RAM.

Rich.

-- 
Richard Jones
Red Hat
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list