Re: Three out of Four Isn't Bad

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bill Davidsen wrote:
Roger Heflin wrote:
Dennis Gilmore wrote:
On Wednesday 16 April 2008, Bill Davidsen wrote:
I just popped another 2GB in my development machine, 2GB to 4GB RAM, and only 3GB shows. Yes I looked at the 820 output, yes I tried PAE kernels,
yes I checked the BIOS to see the the hole options were tried, other
thoughts.

FC6 running 2.6.22.14-72.fc6PAE, also 2.6.24.4 kernel.org build.

dmesg hopefully attached if it doesn't get stripped again.
I have a Dell D820 and while its a 64 bit system,  it has a 32 bit 
chip in there somewhere so i can only use 3.25gb of thr 4gb that is 
installed could very well be a hardware limitation somewhere.
Dennis

Actually, since most OSes are 32bit (read Windows) none of the bios 
makers set things up  so that the missing ram can be remapped over 4GB 
since that would be useless under windows.    So they just waste the 
memory generally, though sometimes there is a bios option to set 
things to non-windows OS, or change the memory mapping that will allow 
more to be used, but generally that is only with the higher end 
machines and even there (where a large number of the machines are used 
with 64bit OSes) the options don't always exist.
On a normal desktop system generally you are out of luck and will at 
best get maybe 3.2-3.5 GB of ram out of 4GB, and sometimes less 
depending on how well be bios was setup.    The older the motherboard 
is the worse it gets.
My 3 year old intel board lets me use 2.8GB out of 3GB, I am not sure 
how bad it would get if I added another GB, I would expect to at best 
get maybe .5 GB more.
Do a "cat /proc/mtrr" to get a better idea of what the bios is telling 
linux to do.
Mine looks like this:

reg00: base=0x00000000 (   0MB), size=4096MB: write-back, count=1
reg01: base=0xb0000000 (2816MB), size= 256MB: uncachable, count=1
reg02: base=0xc0000000 (3072MB), size=1024MB: uncachable, count=1

Actually the BIOS passes the information on memory to the kernel in the e820 table, physical memory description. MTRR is set by the kernel. In my case (from the original dmesg):
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000c77a0000 (usable)
 BIOS-e820: 00000000c77a0000 - 00000000c77ae000 (ACPI data)
 BIOS-e820: 00000000c77ae000 - 00000000c77e0000 (ACPI NVS)
 BIOS-e820: 00000000c77e0000 - 00000000c7800000 (reserved)
 BIOS-e820: 00000000ffb80000 - 0000000100000000 (reserved)

Yes, but I am lazy and /proc/mtrr is much easier to read that the e820 printout, 
and does show the cachable/write-back stuff.
                              Roger


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux