如何监控内核专用内存的使用情况?

如何监控内核专用内存的使用情况?

如果我错了,请纠正我,但 top 命令只监视应用程序的内存使用情况,而不是专用于内核的内存使用情况。

您将如何监控内核专用内存的使用情况?

答案1

内核通过 /proc/slabinfo 导出这些信息。这些信息不太容易读取,因此还有一个 slabtop 工具(来自 procps,您可能已经安装了它)。

我通常使用这个调用,但请查看手册页以了解它还能做什么:

slabtop -s c

答案2

据我所知,SLAB 是内核的几个内存分配器之一

内核使用更多内存

"smem -twk"

例如,ubuntu 桌面

# smem -twk
Area                           Used      Cache   Noncache
firmware/hardware                 0          0          0
kernel image                      0          0          0
kernel dynamic memory          1.1G     802.0M     299.7M
userspace memory               2.2G     218.1M       2.0G
free memory                  440.1M     440.1M          0
----------------------------------------------------------
                               3.7G       1.4G       2.3G

# slabtop -s c

 Active / Total Objects (% used)    : 486431 / 618408 (78,7%)
 Active / Total Slabs (% used)      : 17621 / 17621 (100,0%)
 Active / Total Caches (% used)     : 77 / 108 (71,3%)
 Active / Total Size (% used)       : 157060,61K / 182206,62K (86,2%)
 Minimum / Average / Maximum Object : 0,01K / 0,29K / 8,00K

相关内容