我想使用 中存在的统计信息计算系统模式和用户模式下特定进程的 CPU 时间消耗/proc/<PID>
。
文件中有两个字段utime和stime /proc/<PID>/stat
,其文档说:
- utime:此进程在用户模式下被调度的时间量
- stime:该进程在内核(系统)模式下调度的时间量
我使用以下公式计算系统模式下的 CPU 时间消耗(以秒为单位):(stime / 时钟滴答数)。对于用户模式下的 CPU 时间消耗,我使用以下公式:(utime/时钟滴答数)
我验证了atop
系统和用户 CPU 时间的命令输出,但我的计算结果是错误的。
笔记:如果我正在评估进程的系统和用户 CPU 时间的错误字段,请告诉我?或者说正确的计算方法是什么?
PS 我将这些字段除以一秒内的时钟滴答数,以便计算系统 CPU 时间和用户 CPU 时间(以秒为单位),因为 utime 和 stime 以 CPU 时钟滴答表示。