1、看如何查看系统的上下文切换情况
vmstat 5
其中跟本文相关的比较重要的几列的含义:- r:正在运行和等待CPU的进程数
- b:处于不可中断睡眠状态的进程数
- in:每秒中断次数
- cs:每秒上下文切换次数
- us:用户进程占用的cpu
- sy:系统进程占用的cpu
接着使用pidsta工具观察cpu上下文切换:
pidstat -w 5
这个结果中有两列我们需要关注的内容:- cswch:每秒自愿上下文切换,也就是进程无法获取到可供执行的资源从而自愿发生上下文切换
- nvcswch:每秒非自愿上下文切换,进程时间片用完、被高优先级进程抢走、系统中断等发生的非自愿的场景