正在运行的进程数显示在顶部

efu*_*tch 7 process ubuntu top

我在top(1) 中显示的“正在运行”字段中看到的通常最大数量是系统中安装的逻辑 CPU 的数量。但是,我观察到在 Ubuntu 10.04(未在其他版本中检查)下,有时top(1) 显示运行的进程数超过我提到的限制。

例如,是什么导致在单核系统中显示 2 个正在运行的进程?

Gil*_*il' 6

顶部的“running”字段不显示同时运行的任务数,它显示的是可运行的任务数,即争用CPU访问的任务数。

如果top可以在一个时间片内获取所有系统信息,那么“running”字段就是状态(S列)显示的任务数R(同样,R这里常说的意思是“running”,但这实际上是“runnable”的意思“ 如上)。实际上,这个数字可能不匹配,因为 top 为每个任务一一获取信息,并且一些可运行的任务在完成时可能已经睡着,反之亦然。(一些 top 的实现可能只计算具有状态的任务R以计算“正在运行”字段;那么数字将是准确的。)

请注意,当 top 收集其信息时,总会有一个可运行的任务,即 top 本身。如果您看到单个可运行任务,则意味着没有其他进程在争用 CPU 时间。