Linux中的top命令顯示系統上正在執行的程式。它是系統管理員最重要的工具之一。被廣泛用於監視伺服器的負載。在本篇中,我們會探索top命令的細節。top命令是一個互動命令。在執行top的時候還可以執行很多命令。我們也會探索這些命令。
(譯註:不同發行版的top命令在各種細節有不同,如果發現不同時,請讀你的幫助手冊和命令內的幫助。)
1. Top 命令輸出:
首先,讓我們瞭解一下輸出。top命令會顯示系統的很多資訊。我們需要理解不同部分輸出的意義:預設執行時,top命令會顯示如下輸出:
前幾行水平顯示了不同系統引數的概括,接下來是程式和它們在列中的屬性。
1.1 系統執行時間和平均負載:
top命令的頂部顯示與uptime命令相似的輸出。
這些欄位顯示:
當前時間
系統已執行的時間
當前登入使用者的數量
相應最近5、10和15分鐘內的平均負載。
可以使用’l’命令切換uptime的顯示。
1.2 任務:
第二行顯示的是任務或者程式的總結。程式可以處於不同的狀態。這裡顯示了全部程式的數量。除此之外,還有正在執行、睡眠、停止、殭屍程式的數量(殭屍是一種程式的狀態)。這些程式概括資訊可以用’t’切換顯示。
1.3 CPU 狀態:
下一行顯示的是CPU狀態。 這裡顯示了不同模式下的所佔CPU時間的百分比。這些不同的CPU時間表示:
us, user: 執行(未調整優先順序的) 使用者程式的CPU時間
sy,system: 執行核心程式的CPU時間
ni,niced:執行已調整優先順序的使用者程式的CPU時間
wa,IO wait: 用於等待IO完成的CPU時間
hi:處理硬體中斷的CPU時間
si: 處理軟體中斷的CPU時間
st:這個虛擬機器被hypervisor偷去的CPU時間(譯註:如果當前處於一個hypervisor下的vm,實際上hypervisor也是要消耗一部分CPU處理時間的)。
可以使用’t’命令切換顯示。
1.4 記憶體使用:
接下來兩行顯示記憶體使用率,有點像’free’命令。第一行是實體記憶體使用,第二行是虛擬記憶體使用(交換空間)。
實體記憶體顯示如下:全部可用記憶體、已使用記憶體、空閒記憶體、緩衝記憶體。相似地:交換部分顯示的是:全部、已使用、空閒和緩衝交換空間。
記憶體顯示可以用’m’命令切換。
1.5 欄位/列:
在橫向列出的系統屬性和狀態下面,是以列顯示的程式。不同的列代表下面要解釋的不同屬性。
預設上,top顯示這些關於程式的屬性:
PID
程式ID,程式的唯一識別符號
USER
程式所有者的實際使用者名稱。
PR
程式的排程優先順序。這個欄位的一些值是’rt’。這意味這這些程式執行在實時態。
NI
程式的nice值(優先順序)。越小的值意味著越高的優先順序。
VIRT
程式使用的虛擬記憶體。
RES
駐留記憶體大小。駐留記憶體是任務使用的非交換實體記憶體大小。
SHR
SHR是程式使用的共享記憶體。
S
這個是程式的狀態。它有以下不同的值:
D – 不可中斷的睡眠態。
R – 執行態
S – 睡眠態
T – 被跟蹤或已停止
Z – 殭屍態
%CPU
自從上一次更新時到現在任務所使用的CPU時間百分比。
%MEM
程式使用的可用實體記憶體百分比。
TIME+
任務啟動後到現在所使用的全部CPU時間,精確到百分之一秒。
COMMAND
執行程式所使用的命令。
還有許多在預設情況下不會顯示的輸出,它們可以顯示程式的頁錯誤、有效組和組ID和其他更多的資訊。
本作品採用《CC 協議》,轉載必須註明作者和本文連結