为什么气球驱动程序消耗的内存没有显示在顶部?

为什么气球驱动程序消耗的内存没有显示在顶部?

在超额分配的 ESX 主机上,客户机分配了 80GB RAM。气球驱动程序在某个时刻启动,消耗了相当多的内存。

# vmware-toolbox-cmd stat balloon
52381 MB

现在 guest-os 认为 80G 中的 77G 正在使用中。

# free -m
             total       used       free     shared    buffers     cached
Mem:         80586      77570       3015       1220        101       1800

但是,为什么我在运行 top(按内存排序)时看不到这个?我的 top 进程只使用了 2GB 的 RAM。客户操作系统认为大约 50GB 的内存消失了吗?

答案1

Ballooning 使用内核模块(作为 VMware Tools 的一部分安装)来分配客户机中的内存。因此,消耗内存的是 Linux 内核,而不是 top 显示的常规进程之一。

相关内容