Как интерпретировать использование памяти top / htop

У меня есть htpc / server-ish ubuntu box, работающий дома с kodi (xbmc) и некоторыми другими веб-сервисами.

Я заметил, что kodi был лаконичен и ssh'ed в коробку, чтобы посмотреть, что происходит. Я видел этот вывод htop:

введите описание изображения здесь

Это выход free -m

richard@RMD-HTPC:~$ free -m total used free shared buffers cached Mem: 7642 7505 137 152 196 1296 -/+ buffers/cache: 6012 1630 Swap: 1905 10 1895 

Как получилось, что использование плунжера составляет 6000 7600 мб на снимке экрана при 7505 бесплатно

Но когда я добавляю все проценты уникальных процессов в htop, я перехожу только к 22-25%? Разве это не намного выше?

    Это связано с тем, что htop подсчитывает буферы и кэшированную память как свободную память, потому что это действительно можно увидеть таким образом.

    Нет никакой «стоимости» в том, что в памяти хранятся некоторые кешированные данные, поэтому ядро ​​хранит там вещи на всякий случай, если это понадобится впоследствии.

    Например, предположим, что вы просмотрели видео объемом около 500 мб, после того как вы закроете видео, ядро ​​может решить сохранить его в памяти вместо очистки этой части, на случай, если вам понадобится это видео снова, поэтому вам не нужно загружать это снова с вашего медленного жесткого диска. Но это 500mb можно считать бесплатным, потому что, как только вам понадобится память для чего-то другого, ядро ​​сможет сразу использовать эту память.

    Это не тот случай, когда эта память используется запущенной программой, потому что эта программа использует эту память прямо сейчас.

    Если вы вычитаете из used памяти buffers и cached значения, вы получите значение, отображаемое htop .

    Теперь о том, что вы сказали, это зависит от того, как вы подвели итоги.