我在我的 Linux 机器上使用 vmstat,它显示
➜ ~ vmstat [16:56:44]
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 0 18290200 1056100 8039540 0 0 1 6 4 7 1 0 99 0 0
当我检查 man vmstat 时,它说swpd: the amount of virtual memory used.
这对我来说没有任何意义,因为我使用的虚拟内存怎么可能为零?手册页vmstat
错误吗?
答案1
“...使用的虚拟内存量”
也许应该添加“由kswapd 使用”。以下是 2014 年的一些很好的例子:如何读取 Vmstat 输出
当有“si”或“so”时,“swapd”也有值。
[user@RHEL ~]$ vmstat 1 5
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
3 1 244208 10312 1552 62636 4 23 98 249 44 304 28 3 68 1 0
0 2 244920 6852 1844 67284 0 544 5248 544 236 1655 4 6 0 90 0
1 2 256556 7468 1892 69356 0 3404 6048 3448 290 2604 5 12 0 83 0
0 2 263832 8416 1952 71028 0 3788 2792 3788 140 2926 12 14 0 74 0
0 3 274492 7704 1964 73064 0 4444 2812 5840 295 4201 8 22 0 69 0
我猜测中的“swpd”vmstat
与 中的“swap,used”相同free
。
vmstat
将“si”和“so”显示为“每秒”值,free
仅给出总体交换使用情况的快照。