【发布时间】:2013-06-01 11:09:33
【问题描述】:
我正在开发一个程序,该程序显示在装有 Linux 的机器上运行的每个进程的百分比。问题是我得到的百分比经常与top 命令显示的百分比不同。
我在网上搜索了很多小时,但我发现的几乎总是相同的公式
100 * (stime + utime)/ (totalCPUTime - processStartTime).
我得到了在 /proc/stat 中对 7 个 CPU 值求和的总 CPUTime,而 stime、utime 和 processStartTime 是取自 /proc/<pid>/stat 的值。
难道我做错了什么?
我在多核机器上运行程序这一事实是否会以某种方式影响结果?
有人知道顶部是如何计算这个值的吗?
谢谢
【问题讨论】: