На хосте ESX с превышением доступности гостю выделяется 80 ГБ ОЗУ. В какой-то момент сработал драйвер воздушного шара и потребляет довольно много памяти.
# vmware-toolbox-cmd stat balloon
52381 MB
Теперь гостевая ОС считает, что используется 77 ГБ из 80 ГБ.
# free -m
total used free shared buffers cached
Mem: 80586 77570 3015 1220 101 1800
Однако почему я не вижу этого при запуске сверху (с сортировкой по памяти)? Мой главный процесс использует только 2 ГБ ОЗУ. Где, по мнению гостевой ОС, пропало ~ 50 ГБ памяти?
Ballooning использует модуль ядра (установленный как часть VMware Tools) для выделения памяти в гостевой системе. Итак, память потребляет ядро Linux, но не один из обычных процессов, которые может показывать top.