Linux进程管理(5):CPU负载/调度域与调度组/NUMA均衡调度

一、CPU负载

1)top命令

Linux进程管理(5):CPU负载/调度域与调度组/NUMA均衡调度_第1张图片

         上图下半部分中%CPU一列表示每个进程的CPU利用率,0.0表示CPU处于空闲状态。命令输出的第三行%Cpu(s)是CPU的全局利用率,其中包括每种状态的事件所占用的百分比(其数据来源内核导出的/proc/stat文件)。图中第一行的load average后面的3个数字分别是过去1分钟、5分钟和15分钟的平均负载。

2)CPU利用率

Linux进程管理(5):CPU负载/调度域与调度组/NUMA均衡调度_第2张图片

        如果是不启用虚拟机的本征环境(Native环境),软件层面的CPU状态就是用户态、系统态和空闲态三大类了。其中空闲态就是0号进程(Idle进程)执行时所处的状态,由于0号进程是内核线程,因此空闲态硬件层面也属于内核态;空闲态分为普通空闲态(CPU和外设都没有有效工作)和I/O等待态(指的是因外设太慢,CPU不得不等待I/O完成的"假"空闲状态,判断是不是I/O等待态的标志是运行队列的nr_iowait是否为0,如果又进程通过io_schedule()/io_schedule_timeout()发起自愿调度则nr_iowait大于0

你可能感兴趣的:(Linux内核/驱动,进程管理)