top 命令在查找 CPU 使用率百分比时要考虑多少时间?

top 命令在查找 CPU 使用率百分比时要考虑多少时间?

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))。

相关内容