有时当某个进程被暂停(处于 T 状态)时,输出会ps
显示该进程使用了异常数量的 CPU%。
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
cossey 8697 26.9 0.0 8808 672 pts/3 T 09:25 0:22 gzip
这是一个错误吗ps
?
答案1
在某些版本的 中ps
,该%CPU
列显示进程整个生命周期的平均 CPU 使用率。其他版本则采用衰减平均值 (http://www.google.com/search?q=ps+cpu+decaying+average),但即使这样,您在暂停后也必须等待一段时间才能使平均值降至 0。
处理器
最近使用的 CPU 时间与同一时间段内可用的 CPU 时间之比,以百分比表示。此处“最近”的含义未指定。可用的 CPU 时间以未指定的方式确定。
理由如下:
pcpu 字段表示可用的 CPU 时间以未指定的方式确定。这是因为很难表达一种适用于所有可能的机器架构的算法。该值的历史对应物试图显示最近(例如前一分钟)的使用百分比。通常,所有进程的这些值加起来不等于 100%。鼓励实现向用户提供此字段中的数据,以帮助他们识别当前影响系统性能的进程。