Time

為什麼“真實”時間比“使用者”和“系統”時間加起來要高得多?

  • February 8, 2016

我通過執行time許多命令(即nslookupSSH並收集完成隱含服務所需的總時間(即DNS)。所以我收集usersys時間,因為real時間計算我的程序阻塞的時間,我不需要……我猜。

但是我的一些測試結果如下:

real 3m22.033s
user 0m0.009s
sys 0m0.014s

我在有限資源的 linux 機器上執行這些測試,但real時間仍然很長。這是否僅表明該框非常忙於執行不同的程序?user將時間和sys時間相加以知道服務花費了多少仍然正確嗎?

Real是程序終止所花費的總時間(即開始時間和停止時間之間的差異):

$ time sleep 3

real    0m3.002s
user    0m0.000s
sys     0m0.000s

在此列表中,usersys分別指在使用者模式和核心模式下花費的時間。這些不包括在不活動和睡眠狀態下花費的時間。一個程序在故意請求它時進入睡眠狀態,或者當它等待 IO(網路/磁碟訪問/使用者互動)可用時,或者等待其他程序終止時,因為系統處於非常高的負載下沒有可用的 CPU , ETC。

通常,如果您呼叫timereal將對應於下載所需的時間,使用者應該可以忽略不計(除非要求執行密集的數據處理),sys應該很小(可能會花費一些時間來處理緩衝區,將數據移回從核心空間到使用者空間。)wget``wget

引用自:https://unix.stackexchange.com/questions/53302