首頁  >  文章  >  運維  >  詳細解析Linux中top指令參數

詳細解析Linux中top指令參數

WBOY
WBOY轉載
2021-12-24 17:27:123800瀏覽

這篇文章為大家帶來了linux關於top指令的相關知識,其中包括了top指令的用法和各輸出參數的意義,希望對大家有幫助。

詳細解析Linux中top指令參數

top指令用法

top指令常用來監控linux的系統狀況,是常用的效能分析工具,能夠即時顯示系統中各個行程的資源佔用情況。

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

#參數解釋:

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

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

?:顯示在top當中可以輸入的指令P:以CPU的使用資源排序顯示M:以記憶體的使用資源排序顯示N:以pid排序顯示T:由行程使用的時間累計排序顯示k:給某一個pid一個訊號。可以用來殺死進程 r:給某個pid重新定制一個nice值(即優先權) q:退出top(用ctrl c也可以退出top)。

top各輸出參數意義

以下是使用top指令來進行效能偵測的截圖:

圖一(ubuntu):

圖二(centos):

一、top前5行統計資訊

第1行:top - 05:43:27 up 4:52, 2 users, load average: 0.58, 0.41, 0.30 
第1行是任務佇列資訊,其參數如下:

意義表示目前時間系統運行時間格式為時:分##目前登入使用者數load average: 0.58, 0.41, 0.30系統負載,即任務佇列的平均長度。三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。
##內容
05:43:27
up 4:52
#2 users


load average: 如果這個數除以邏輯CPU的數量,結果高於5的時候就表示系統在超負荷運轉了。
第2行:Tasks: 159 total, 1 running, 158 sleeping, 0 stopped, 0 zombie
 第3行:%Cpu(s): 37.0 us , 3.7 sy, 0.0 ni, 59.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
 
# 第2、3行為進程和CPU的資訊 

當有多個CPU時,這些內容可能會超過兩行,其參數如下:內容#意思# 159 total總行程數1 running正在執行的行程數睡眠的進程數#停止的進程數殭屍行程數使用者空間佔用CPU百分比0.0 ni使用者行程空間內改變過優先權的行程佔用CPU百分比空閒CPU百分比軟體中斷(Software Interrupts)佔用CPU的百分比
##158 sleeping
0 stopped
0 zombie
37.0 us
3.7 sy #核心空間佔用CPU百分比
59.3 id
#0.0 wa 等待輸入輸出的CPU時間百分比
0.0 hi 硬中斷(Hardware IRQ)佔用CPU的百分比
##0.0 si
#0.0 st


## 



#第4行:KiB Mem: 1530752 total, 1481968 used, 48784 free, 70988 buffers 第5行:KiB Swap: 39055325,第5行:KiB Swap: 39055325, 838938 9 . 617312 cached Mem  其參數如下:##內容##KiB Mem: 1530752 total物理記憶體總量##1481968 used48784 free70988 buffers(buff/cache)KiB Swap: 3905532 total
第4、5行為記憶體資訊 
#使用的物理記憶體總量
空閒記憶體總量
用作核心快取的記憶體量
交換區總量############267544 used ######所使用的交換區總量############3637988 free######空閒交換區總量############617312 cached Mem######緩衝的交換區總量。 ############3156100 avail Mem######代表可用於進程下一次分配的實體記憶體數量############

上述最後提到的緩衝的交換區總量,這裡解釋一下,所謂緩衝的交換區總量,即內存中的內容被換出到交換區,而後又被換入到內存,但使用過的交換區尚未被覆蓋,該數值即為這些內容已存在於記憶體中的交換區的大小。對應的記憶體再次被換出時可不必再對交換區寫入。

計算可用記憶體數有一個近似的公式: 
第四行的free 第四行的buffers 第五行的cached

二、進程資訊

##NI# nice值。負值表示高優先級,正值表示低優先級P#最後使用的CPU,僅在多CPU環境下有意義%CPU上次更新到現在的CPU時間佔用百分比TIME行程使用的CPU時間總計,單位秒TIME #程式使用的CPU時間總計,單位1/100秒##%MEMVIRTSWAP## RES進程使用的、未被換出的物理記憶體大小,單位kb。 RES=CODE DATACODE可執行程式碼佔用的物理記憶體大小,單位kbDATA可執行程式碼以外的部分(資料段堆疊)佔用的物理記憶體大小,單位kb#SHR共享記憶體大小,單位kbnFLT頁面錯誤次數#nDRT最後一次寫入到現在,被修改過的頁面數。 S行程狀態。 D=不可中斷的睡眠狀態R=執行S=睡眠T=追蹤/停止Z=殭屍行程#COMMAND命令列/命令列WCHAN若該進程在睡眠,則顯示睡眠中的系統函數名稱Flags任務標誌其他
#列名 意義
#PID 進程id
#PPID 父程式id
RUSER Real user name
UID 進程擁有者的使用者id
USER #進程擁有者的使用者名稱
GROUP 進程擁有者的群組名稱
TTY #啟動進程的終端名稱。不是從終端機啟動的程序則顯示為?
PR 優先權
進程使用的實體記憶體百分比
進程使用的虛擬記憶體總量,單位kb。 VIRT=SWAP RES
進程使用的虛擬記憶體中,被換出的大小,單位kb
預設進入top時,各行程是依照CPU的佔用量來排序的。

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

 

2、敲擊鍵盤'b'(開啟關閉加亮效果)top視圖轉換如下: 


PID為16283為目前top視圖中唯一的執行態進程。也可以敲擊鍵盤‘y’來開啟或關閉運行態進程的加亮效果。

3、敲擊鍵盤'x'(開啟/關閉排序列的加亮效果),top視圖轉換如下: 

可以看到現在是按"%CPU"進行排序的,可以按”shift >”或”shift <”左右改變排序序列。

4、改變進程顯示欄位

在top基本視圖中,敲擊」f」進入另一個視圖,在這裡可以編輯基本視圖中的顯示欄位:

用上下鍵選擇選項,按下空白鍵可以決定是否在基本視圖中顯示這個選項。

top指令是一個非常強大的功能,但它監控的最小單位是進程,如果想監控更小單位時,就需要用到ps或netstate指令來滿足我們的要求。

相關推薦:《

Linux影片教學

以上是詳細解析Linux中top指令參數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除