si和so是内存换入换出的实时指标,单位kb/秒;si>0表示页从swap换入内存,so>0表示页从内存换出到swap;持续si>0且so>0提示内存压力或颠簸风险。

直接看 si 和 so 这两列,它们就是内存换入换出的实时指标。
si/so 的含义和判断标准
这两项单位是 KB/秒,出现在 vmstat 输出的 swap 区域:
在无 root/sudo 权限的环境(云容器、VPS、隔离主机)中安装并配置 OpenClaw 浏览器工具的 headless Chrome。适用场景:...
- si(swap-in):每秒从磁盘交换区换入物理内存的数据量。数值大于 0,说明系统正在把页从 swap 拉回内存。
- so(swap-out):每秒从物理内存换出到磁盘交换区的数据量。数值大于 0,说明内核正把不活跃页写到 swap 以腾出内存。
- 持续出现 si > 0 且 so > 0,是典型的内存压力信号——系统在反复换页,可能已进入颠簸(thrashing)边缘。
- 如果 si 长期稳定在几十 KB/s 以上,而 free 或 available 内存持续偏低(可用内存远低于总量的 10%),基本可判定物理内存不足。
配合其他字段交叉验证
单看 si/so 容易误判,要结合 memory 和 procs 区域一起读:
- 先看 swpd:若为 0,说明没启用 swap,此时 si/so 必为 0,无需关注换页问题;若 swpd > 0,才需重点盯 si/so。
- 再看 free 和 available:available 才是真正可分配给新进程的内存。即使 free 很小,只要 available 充足,si/so 偶尔波动属正常回收行为。
- 观察 r 和 b:r 高 + b 高 + si/so 持续 > 0,说明进程既争 CPU 又等内存页加载,瓶颈明确在内存。
- 留意 wa(CPU 等待 I/O 时间):wa 显著升高(如 >20%)且与 si/so 上升同步,说明换页已拖慢整体响应。
推荐的监控命令组合
不要只跑一次,要采样看趋势:
- vmstat 2 5:每 2 秒输出一行,共 5 行,快速扫一眼是否存在持续换页。
- vmstat -w -t 1:宽格式 + 时间戳,持续运行,便于记录时间点对比(比如故障前后)。
- 搭配 free -h 查看 available 内存余量,确认是否真的吃紧;再用 cat /proc/meminfo | grep -E "Swap|Mem" 看更细的换页计数器(如 pgpgin/pgpgout)。










