Top 给出的输出如下:
%Cpu(s): 4.7 us, 1.3 sy, 0.0 ni, 93.9 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st
如果我的 CPU 将 4.7% 的时间花在用户进程上,那么在得出这样的结果之前它考虑了多少时间历史?
答案1
从top 从哪里获取实时数据,bdonlan 的回答:
正如记录的那样进程(5),文件中
/proc/(pid)/stat
有以下字段:
utime %lu
此进程在用户模式下被调度的时间量,以时钟刻度为单位(除以 sysconf(_SC_CLK_TCK))。这包括客户机时间、guest_time(运行虚拟 CPU 所花费的时间,见下文),以便不了解客户机时间字段的应用程序不会在计算中丢失该时间。
stime %lu
此进程在内核模式下被调度的时间量,以时钟滴答为单位(除以 sysconf(_SC_CLK_TCK))。