Total Physical Memory: 2048 MB (2 GB).
9% of 2027 MB
Where's the missing 21 MB?
Could be calculation issue, or your MB is using RAM for video memory.
I'm seeing the same thing now that you mention it.
One is a Dell 1850 with 6GB (6144 MB), dashboard reports 6122 MB - a loss of 22 MB
Other is a homebuilt system with 1GB (1024 MB), dashboard reports 1003 MB - a loss of 21 MB
Neither system is using shared video memory as both have dedicated graphics memory (homebuilt is a Tyan board with onboard ATI graphics I think, and the Dell is a server, also ATI based IIRC).
I could be wrong, but if it's a calculation issue, shouldn't the amount missing vary with the amount of system RAM installed (excluding any reserved RAM)? N0YB's 21MB on 2GB should in theory correspond to 10.5MB on my 1GB system and 63MB on my 6GB system, or at least that's how I see it.
If it matters, I'm seeing this on RC0-July 28 14:39 and RC1-July 29 16:20.
I'm also missing memory, but thats just all the drinking in my youth and old age. Its abit more than 21MB I fear.
The code uses hw.physmem, on Alix this gives:
/sbin/sysctl -n hw.physmem 246906880
246906880/(1024*1024) = 235.46 MB
Short by the same about 21MB.
And here are some boot messages:
Jul 30 07:36:21 kernel: real memory = 268435456 (256 MB) Jul 30 07:36:21 kernel: avail memory = 239239168 (228 MB)
It knows there is 256MB of real memory. I guess avail memory is after various FreeBSD non-paged OS code is loaded.
hw.physmem is between these 2 boot message numbers - why is that?
So FreeBSD somewhere is hiding away 21MB of memory?
It would be nice to understand where the figures come from and why. Even to get back 21MB on Alix :) - but I don't expect it will turn out to be actually lost/wasted/retrievable memory.
I have seen that that number appears over and over in this or that thread over many years actually and it seems no one actually stops to ask where that ram went too. Just that its was taken by something.
My system reports:
real memory = 268435456 (256 MB)
avail memory = 222408704 (212 MB)
The BIOS provides the OS with a memory map indicating the areas of physical memory available to the OS. Some areas of physical memory are reserved by the BIOS, e.g. memory for the video controller, DMI data, ACPI tables etc.
If I recall correctly, the "unavailable" memory also includes memory for page tables to map the kernel address space. Maximum size of kernel address space depends on physical memory size and a number of boot time configuration options such as maximum number of processes, maximum number of mbufs, maximum size of the kernel heap etc.
Whenever I get tired of the "missing memory issue" (2016MB inszeead of 2048M in my case), I run vmstat.
That usually yields something like:
1800MB free memory
400MB reserved memory
Nicely adds ujp to 2.2GB. Bingo!