I am analyzing memory usage on a Linux system. When I run vmstat -s, I see the following:
waffleman@waffle-iron:~$ vmstat -s 3549184 K total memory 3206708 K used memory 1918012 K active memory 1037320 K inactive memory 342476 K free memory 301448 K buffer memory 1748772 K swap cache 0 K total swap 0 K used swap 0 K free swap 5481272 non-nice user cpu ticks 763306 nice user cpu ticks 3570165 system cpu ticks 996097114 idle cpu ticks 72862 IO-wait cpu ticks 27 IRQ cpu ticks 35837 softirq cpu ticks 0 stolen cpu ticks 1718539 pages paged in 69439772 pages paged out 0 pages swapped in 0 pages swapped out 460599379 interrupts 1697890087 CPU context switches 1314014908 boot time 307904 forks
I know the system has 4096 MB of RAM installed, but why does it show only 3466 MB? Can this be interpreted as total "available" memory? Perhaps the missing 630 MB is being used by the kernel and cannot paged out?
I also tried this on on an Embedded Linux system and saw a similar result. The DRAM chip has 128 MB, but only 124 MB shows up in vmstat.