命令解釋
Linux 系統可以透過 top 命令檢視系統的 CPU 、記憶體、執行時間、交換分割槽、執行的執行緒等資訊。透過 top 命令可以有效的發現系統的缺陷出在哪裡。是記憶體不夠、 CPU 處理能力不夠、 IO 讀寫過高.
使用 SSHClient 客戶端連線到遠端 Linux 系統。使用 top 命令檢視系統的當前執行的情況。如圖對 top 命令執行的結果做了簡單的圖解,下面針對每一項做詳細的解釋。
top 命令的第一行 “top – 19:56:47 up 39 min, 3 users, load average: 0.00, 0.00, 0.00” 顯示的內容依次為 “系統當前時間 、系統到目前為止已執行的時間、當前登入系統的使用者數量、系統負載 (任務佇列的平均長度) 三個值分別為 1 分鐘、 5 分鐘、 15 分鐘前到現在的平均值【這三個一般會小於 1,如果持續高於 5,請仔細檢視那個程式影響系統的執行】”
top 命令的第二行 “Tasks: 120 total, 2 running, 118 sleeping, 0 stopped, 0 zombie” 顯示的內容依次 “所有啟動的程式數” 、 “正在執行的程式數” 、 “掛起的程式數” 、 “停止的程式數” 、 “殭屍程式數” 。
top 命令的第三行 “Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st” 顯示的內容依次為 “使用者空間佔用 CPU 百分比” 、 “核心空間佔用 CPU 百分比” 、 “使用者空間內改變過優先順序的程式佔用 CPU 百分比” 、 “空閒 CPU 百分比” 、 “等待輸入輸出 CPU 時間百分比” 、 “CPU 服務於硬體中斷所耗費的時間總額” 、 “CPU 服務軟中斷所耗費的時間總額” 、 “Steal Time
top 命令第四行 “Mem: 508820k total, 480172k used, 28648k free, 41944k buffers” 顯示內容依次為 “實體記憶體總量” 、 “已使用的實體記憶體” 、 “空閒實體記憶體” 、 “核心 WordPress 加速快取記憶體量” 。
top 命令第 5 行 “Swap: 392184k total, 0k used, 392184k free, 259152k cached” 顯示內容依次為 “交換區總量” 、 “已使用互動區總量” 、 “空閒交換區總量” 、 “緩衝的交換區總量” 。
top 命令第 5 行 “PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND ” 顯示內容依次為 “程式 ID” 、 “程式所有者” 、 “優先順序” 、 “nice 值,負值表示高優先順序,正值表示低優先順序” 、 “程式使用的虛擬記憶體總量” 、 “程式使用的、未被換出的實體記憶體大小” 、 “共享記憶體大小” 、 “程式狀態” 、 “上次更新到現在的 CPU 時間佔用百分比” 、 “程式使用的實體記憶體百分比” 、 “程式使用 CPU 總時間” 、 “命令名、命令列” 。
常用操作
top //每隔 5 秒顯式所有程式的資源佔用情況
top -d 2 //每隔 2 秒顯式所有程式的資源佔用情況
top -c //每隔 5 秒顯式程式的資源佔用情況,並顯示程式的命令列引數 (預設只有程式名)
top -p 12345 -p 6789//每隔 5 秒顯示 pid 是 12345 和 pid 是 6789 的兩個程式的資源佔用情況
top -d 2 -c -p 123456 //每隔 2 秒顯示 pid 是 12345 的程式的資源使用情況,並顯式該程式啟動的命令列引數