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 時間、guest_time(運行虛擬 CPU 所花費的時間,請參見下文),以便不知道的應用程式客人時間欄位的時間不會從他們的計算中遺失。

stime %lu

此行程在核心模式下調度的時間量,以時脈週期為單位(除以 sysconf(_SC_CLK_TCK))。

相關內容