cpu上下文切换

cpu上下文切换场景:线程上下文切换,进程上下文切换,中断上下文切换

线程与进程最大的区别在于,线程是调度的基本单位,而进程则是资源拥有的基本单位

vmstat
cpu上下文切换
r:就绪队列的长度
b:处于不可中断的进程数
cs:每秒上下文切换数
in:每秒中断数

查看每个进程的上下文切换情况
pidstat -p 1674 -w 5

cpu上下文切换

cswch:每秒资源上下文切换
指进程无法获取所需资源,导致的上下文切换。比如说, I/O、内存等系统资源不足时,就会发生自愿上下文切换
nvcswch:每秒非自愿上下文切换
指进程由于时间片已到等原因,被系统强制调度,进而发生的上下文切换。比如说,大量进程都在争抢 CPU 时,就容易发生非自愿上下文切换。