2

I'm running Debian Wheezy on a Model B+ which has 512MB of RAM. I've set start_x=0 and gpu_mem=16 in /boot/config.txt and the command vcgencmd get_mem arm && vcgencmd get_mem gpu is showing an expected:

arm=496M
gpu=16M

What isn't expected is that free -h only lists 480M of RAM for the arm:

               total       used       free     shared    buffers     cached
Mem:          480M       411M        69M       4.4M        88M       261M
-/+ buffers/cache:        60M       419M
Swap:           0B         0B         0B

So I'm listed as having 480M total instead of 496M like vcgencmd shows. Why might this be? I thought this might because free presents it as mebibytes instead of megabytes but provided the conversion option free -h --si gives:

             total       used       free     shared    buffers     cached
Mem:          491M       390M       101M        29M       116M       234M
-/+ buffers/cache:        39M       451M 
Swap:           0B         0B         0B

Still 5MB short. What may the discrepancy be?

Silversonic
  • 121
  • 2

1 Answers1

3

free doesn't list RAM reserved for the Linux kernel code, which is between 2 and 10 MB, depending on configuration, so the missing 5 MB seem right.

Dmitry Grigoryev
  • 27,928
  • 6
  • 53
  • 144