Linux中top命令參數詳解


top命令用法

top命令經常用來監控linux的系統狀況,是常用的性能分析工具,能夠實時顯示系統中各個進程的資源占用情況。

top的使用方式 top [-d number] | top [-bnp]

參數解釋:

-d:number代表秒數,表示top命令顯示的頁面更新一次的間隔。默認是5秒。 -b:以批次的方式執行top。 -n:與-b配合使用,表示需要進行幾次top命令的輸出結果。 -p:指定特定的pid進程號進行觀察。

在top命令顯示的頁面還可以輸入以下按鍵執行相應的功能(注意大小寫區分的):

1 產看cpu 個數,及各核的使用情況     
P 按照 進程 cpu 的使用率排序 (默認情況)
M 按照 內存的使用情況排序
q 退出
shift +< 上一頁
shift +> 下一頁
r 調整nice 值 renice
f 選擇顯示那一列
F,O 按那一列排序
k 殺死一個進程
c 顯示command詳細信息

top各輸出參數含義

下面是使用top命令來進行性能檢測的截圖

一、top前5行統計信息

第1行:top - 21:09:34 up 2 days,  9:49,  2 users,  load average: 3.90, 3.19, 2.49
第1行是任務隊列信息,其參數如下:

內容   含義
 21:09:34  表示當前時間
 up 2 days,  9:49  表示系統運行時間
 2 users  當前登錄用戶數 
 load average: 3.90, 3.19, 2.49  系統負載,即任務隊列的平均長度。 三個數值分別為 1分鍾、5分鍾、15分鍾前到現在的平均值。

load average: 如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了。

第2行:Tasks: 532 total,   2 running, 515 sleeping,   0 stopped,  15 zombie
第3行:%Cpu(s): 14.1 us,  5.6 sy,  0.0 ni, 80.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
第2、3行為進程和CPU的信息
當有多個CPU時,這些內容可能會超過兩行,其參數如下:

內容 含義
532 total 進程總數
2 running 正在運行的進程數
515 sleeping 睡眠的進程數
0 stopped 停止的進程數
15 zombie 僵屍進程數
14.1 us 用戶空間占用CPU百分比,這個值是當前機器邏輯CPU占用百分比累加值/CPU邏輯核數所得,可以使用top 1命令查看各核CPU使用情況
5.6 sy 內核空間占用CPU百分比,這個值是當前機器邏輯CPU占用百分比累加值/CPU邏輯核數所得,可以使用top 1命令查看各核CPU使用情況
0.0 ni 用戶進程空間內改變過優先級的進程占用CPU百分比
80.3 id 空閑CPU百分比
0.0 wa 等待輸入輸出的CPU時間百分比
0.0 hi 硬中斷(Hardware IRQ)占用CPU的百分比
0.0 si 軟中斷(Software Interrupts)占用CPU的百分比
0.0 st  

第4行:KiB Mem : 32780544 total, 7673504 free, 8104836 used, 17002204 buff/cache
第5行:KiB Swap: 0 total, 0 free, 0 used. 24058588 avail Mem
第4、5行為內存信息
其參數如下:

內容 含義
32780544 total 物理總內存
7673504 free 空閑內存總量
8104836 used 使用的物理內存總量
17002204 buff/cache 用作內核緩存的內存量
KiB Swap 交換空間
24058588 avail Mem  代表可用於進程下一次分配的物理內存數量

緩沖的交換區總量即內存中的內容被換出到交換區,而后又被換入到內存,但使用過的交換區尚未被覆蓋,該數值即為這些內容已存在於內存中的交換區的大小。相應的內存再次被換出時可不必再對交換區寫入。

計算可用內存數有一個近似的公式:
第四行的free + 第四行的buffers + 第五行的cached

二、進程信息

列名 含義
PID 進程ID
USER 進程所有者的用戶名
PR 優先級
NI  nice值,負值表示高優先級,正值表示低優先級
VIRT  進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
SWAP 進程使用的虛擬內存中,被換出的大小,單位kb
RES  進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
S 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵屍進程
%CPU 上次更新到現在的CPU時間占用百分比
%MEM 進程使用的物理內存百分比
TIME+ 進程使用的CPU時間總計,單位1/100秒
COMMAND 命令行

其他

默認進入top時,各進程是按照CPU的占用量來排序的。

1、在top基本視圖中,按鍵盤數字“1”可以監控每個邏輯CPU的狀況:

2.附一張服務器資源使用量很高top命令監控指標圖, load average/邏輯CPU數量>5,各邏輯CPU空閑CPU百分比都為0。

參考文獻
1、https://blog.csdn.net/quiet_girl/article/details/50668126

2、http://www.zhimengzhe.com/linux/298422.html

3、https://blog.csdn.net/yjclsx/article/details/81508455


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM