Linux的Load(系統負載),是一個讓新手不太容易了解的概念。load的就是一定時間內計算機有多少個active_tasks,也就是說是計算機的任務執行隊列的長度,cpu計算的隊列。
top/uptime等工具默認會顯示1分鍾、5分鍾、15分鍾的平均Load。
具體來說,平均Load是指,在特定的一段時間內統計的正在CPU中運行的(R狀態)、正在等待CPU運行的、處於不可中斷睡眠的(D狀態)的任務數量的平均值。
最后,說一下CPU使用率和Load的關系吧。如果主要是CPU密集型的程序在運行(If CPU utilization is near 100 percent (user + nice + system), the workload sampled is CPU-bound.),
那么CPU利用率高,Load一般也會比較高。而I/O密集型的程序在運行,
可能看到CPU的%user, %system都不高,%iowait可能會有點高,這時的Load通常比較高。
同理,程序讀寫慢速I/O設備(如磁盤、NFS)比較多時,Load可能會比較高,而CPU利用率不一定高。這種情況,還經常發生在系統內存不足並開始使用swap的時候,Load一般會比較高,而CPU使用率並不高。