top shows only half of realmem?
jhb at freebsd.org
Wed Jan 26 13:07:45 UTC 2011
On Wednesday, January 26, 2011 7:20:34 am Bartosz Stec wrote:
> could someone explain me this?
> # sysctl hw.realmem
> hw.realmem: 2139029504
> top line shows:
> Mem: 32M Active, 35M Inact, 899M Wired, 8392K Cache, 199M Buf, 58M Free
> 32+35+899+8+199+58 = 1231MB
> Shouldn't that sum to all available ram? Or maybe I'm reading it wrong?
> This machine has indeed 2GB of ram on board and showed in BIOS.
> i386 FreeBSD 8.2-PRERELEASE #16: Mon Jan 17 22:28:53 CET 2011
First, don't include 'buf' as isn't a separate set of RAM, it is only a range
of the virtual address space in the kernel. It used to be relevant when the
buffer cache was separate from the VM page cache, but now it is mostly
irrelevant (arguably it should just be dropped from top output).
However, look at what hw.physmem says (and the realmem and availmem lines in
dmesg). realmem is actually not that useful as it is not a count of the
amount of memory, but the address of the highest memory page available. There
can be less memory available than that due to "holes" in the address space for
PCI memory BARs, etc.
More information about the freebsd-stable