簡介
本文件說明 show processes 命令以及從命令輸出取得的詳細統計資料。
必要條件
需求
本文件沒有特定需求。
採用元件
本檔案中的資訊是根據以下軟體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
慣例
如需文件慣例的詳細資訊,請參閱思科技術提示慣例。
背景資訊
show processes命令顯示裝置上有關活動進程的資訊。發出show processes cpu 命令以顯示這些進程的詳細CPU利用率統計資訊,發出show processes memory 命令以顯示已使用的記憶體量。
要驗證裝置的CPU或記憶體利用率級別是否指示可能出現問題,請使用輸出直譯器工具。有關詳細資訊,請參閱排除CPU使用率過高故障。
附註:只有完成註冊的思科使用者有權存取思科內部工具與資訊。
show processes命令
以下是show processes命令的輸出示例:
router#show processes
CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0%
PID Q Ty PC Runtime(uS) Invoked uSecs Stacks TTY Process
1 C sp 602F3AF0 0 1627 0 2600/3000 0 Load Meter
2 L we 60C5BE00 4 136 29 5572/6000 0 CEF Scanner
3 L st 602D90F8 1676 837 2002 5740/6000 0 Check heaps
4 C we 602D08F8 0 1 0 5568/6000 0 Chunk Manager
5 C we 602DF0E8 0 1 0 5592/6000 0 Pool Manager
6 M st 60251E38 0 2 0 5560/6000 0 Timers
7 M we 600D4940 0 2 0 5568/6000 0 Serial Backgroun
8 M we 6034B718 0 1 0 2584/3000 0 OIR Handler
9 M we 603FA3C8 0 1 0 5612/6000 0 IPC Zone Manager
10 M we 603FA1A0 0 8124 0 5488/6000 0 IPC Periodic Tim
11 M we 603FA220 0 9 0 4884/6000 0 IPC Seat Manager
12 L we 60406818 124 2003 61 5300/6000 0 ARP Input
13 M we 60581638 0 1 0 5760/6000 0 HC Counter Timer
14 M we 605E3D00 0 2 0 5564/6000 0 DDR Timers
15 M we 605FC6B8 0 2 011568/12000 0 Dialer event
下表列出並說明show processescommand輸出中的欄位。
欄位 |
說明 |
五秒的CPU使用率 |
過去五秒的CPU使用率。第二個數字表示在中斷級別花費的CPU時間的百分比。 |
一分鐘 |
前一分鐘的CPU使用率 |
五分鐘 |
過去五分鐘的CPU使用率 |
PID |
進程ID |
Q |
進程隊列優先順序。可能的值:C(臨界)、H(高)、M(中)、L(低)。 |
泰 |
計畫程式測試。可能的值: *(當前運行)、E(等待事件)、S(準備運行,主動放棄處理器)、rd(準備運行,已出現喚醒條件)、we(等待事件)、sa(睡眠到絕對時間)、si(睡眠到絕對時間)、sp(睡眠到時間間隔(替換呼叫)、st(睡眠到計時器到期)、hg(掛起;進程不再執行)、xx(宕機:進程已終止,但尚未刪除)。 |
PC |
當前程式計數器 |
運行時(uS) |
進程已使用的CPU時間(微秒) |
已呼叫 |
已呼叫進程的次數 |
秒 |
每次進程呼叫的CPU時間微秒 |
堆疊 |
可用低水位標籤或總堆疊空間,以位元組為單位 |
TTY |
控制進程的終端 |
程序 |
進程的名稱。如需詳細資訊,請參閱本檔案的程式一節。 |
注意:由於網路伺服器具有4000微秒的時鐘解析度,因此只有在進行了大量呼叫或經過合理測量的運行時之後,才能認為運行時是可靠的。
show processes cpu命令
show processes cpu 命令顯示有關路由器中活動進程及其CPU利用率統計資訊的資訊。以下是show processes cpu 命令的輸出示例:
router#show processes cpu
CPU utilization for five seconds: 8%/4%; one minute: 6%; five minutes: 5%
PID Runtime(uS) Invoked uSecs 5Sec 1Min 5Min TTY Process
1 384 32789 11 0.00% 0.00% 0.00% 0 Load Meter
2 2752 1179 2334 0.73% 1.06% 0.29% 0 Exec
3 318592 5273 60419 0.00% 0.15% 0.17% 0 Check heaps
4 4 1 4000 0.00% 0.00% 0.00% 0 Pool Manager
5 6472 6568 985 0.00% 0.00% 0.00% 0 ARP Input
6 10892 9461 1151 0.00% 0.00% 0.00% 0 IP Input
7 67388 53244 1265 0.16% 0.04% 0.02% 0 CDP Protocol
8 145520 166455 874 0.40% 0.29% 0.29% 0 IP Background
9 3356 1568 2140 0.08% 0.00% 0.00% 0 BOOTP Server
10 32 5469 5 0.00% 0.00% 0.00% 0 Net Background
11 42256 163623 258 0.16% 0.02% 0.00% 0 Per-Second Jobs
12 189936 163623 1160 0.00% 0.04% 0.05% 0 Net Periodic
13 3248 6351 511 0.00% 0.00% 0.00% 0 Net Input
14 168 32790 5 0.00% 0.00% 0.00% 0 Compute load avgs
15 152408 2731 55806 0.98% 0.12% 0.07% 0 Per-minute Jobs
下表列出並說明了show processes cpu輸出中的欄位。
欄位 |
說明 |
五秒的CPU使用率 |
過去五秒的CPU使用率。第一個數字表示總計,第二個數字表示在中斷級別花費的CPU時間的百分比。 |
一分鐘 |
前一分鐘的CPU使用率 |
五分鐘 |
過去五分鐘的CPU使用率 |
PID |
進程ID |
運行時(uS) |
進程已使用的CPU時間(以微秒為單位) |
已呼叫 |
已呼叫進程的次數 |
秒 |
每次進程呼叫的CPU時間微秒 |
5秒 |
過去五秒內按任務顯示的CPU使用率 |
1分鐘 |
按任務顯示的CPU使用率(按任務顯示) |
5分鐘 |
過去五分鐘內任務的CPU使用率 |
TTY |
控制進程的終端 |
程序 |
進程的名稱。如需詳細資訊,請參閱本檔案的程式一節。 |
注意:由於網路伺服器具有4000微秒的時鐘解析度,因此只有在進行了大量呼叫或經過合理的測量運行時後,才能認為運行時是可靠的。
show processes cpu history命令
show processes cpu history命令以圖形格式ASCII顯示路由器在一段時間內的CPU總使用率:一分鐘、一小時和72小時,分別以一秒、一分鐘和一小時的增量顯示。每秒測量並記錄最大使用量;平均使用量在一秒鐘內計算。
以下是輸出一小時部分的輸出示例:
router#show processes cpu history
!--- One minute output omitted
6665776865756676676666667667677676766666766767767666566667
6378016198993513709771991443732358689932740858269643922613
100
90
80 * * * * * * * *
70 * * ***** * ** ***** *** **** ****** * ******* * *
60 #***##*##*#***#####*#*###*****#*###*#*#*##*#*##*#*##*****#
50 ##########################################################
40 ##########################################################
30 ##########################################################
20 ##########################################################
10 ##########################################################
0....5....1....1....2....2....3....3....4....4....5....5....
0 5 0 5 0 5 0 5 0 5
CPU% per minute (last 60 minutes)
* = maximum CPU% # = average CPU%
!--- 72-hour output omitted
-
圖形的Y軸是CPU利用率。
-
圖形的X軸是圖形中所顯示時段的增量;在這種情況下,它是前一小時中的單個分鐘。最近的測量位於X軸的左端。
-
前兩行(垂直讀取)顯示記錄的CPU利用率的最大百分比,同時遞增。
-
在上一個示例中,記錄的最後一分鐘的CPU使用率為66%。路由器一次只能達到66%這一分鐘,或者可以多次達到66%;路由器只記錄其增量過程中達到的峰值以及增量過程中的平均值。
show processes memory命令
show processes memory命令顯示有關路由器中活動進程和已用記憶體的資訊。以下是show processes memory命令的輸出示例:
router>show processes memory
Total: 106206400, Used: 7479116, Free: 98727284
PID TTY Allocated Freed Holding Getbufs Retbufs Process
0 0 81648 1808 6577644 0 0 *Init*
0 0 572 123196 572 0 0 *Sched*
0 0 10750692 3442000 5812 2813524 0 *Dead*
1 0 276 276 3804 0 0 Load Meter
2 0 228 0 7032 0 0 CEF Scanner
3 0 0 0 6804 0 0 Check heaps
4 0 18444 0 25248 0 0 Chunk Manager
5 0 96 0 6900 0 0 Pool Manager
6 0 276 276 6804 0 0 Timers
7 0 276 276 6804 0 0 Serial Backgroun
8 0 96 0 3900 0 0 OIR Handler
9 0 96 0 6900 0 0 IPC Zone Manager
10 0 0 0 6804 0 0 IPC Periodic Tim
11 0 17728 484 11156 0 0 IPC Seat Manager
12 0 288 136 7092 0 0 ARP Input
....
90 0 0 0 6804 0 0 DHCPD Timer
91 0 152 0 6956 0 0 DHCPD Database
7478196 Total
註:由於某些Cisco路由器和交換機中實施了show processes memory排序的方式,因此某些設備(例如Cisco 7304)將總值顯示為處理器記憶體和IO記憶體的總和,而不是show processes memory所示的處理器記憶體總量。
此表列出show processes memory命令輸出中的欄位和說明。
欄位 |
說明 |
總計 |
記憶體保留的總量。 |
已使用 |
已用記憶體的總量。 |
免費 |
可用記憶體的總量。 |
PID |
進程ID |
TTY |
控制進程的終端。 |
已分配 |
進程分配的記憶體位元組數。 |
已釋放 |
進程釋放的記憶體位元組數,無論最初由誰分配 |
保持 |
進程保留的記憶體量。此引數可幫助您在懷疑記憶體洩漏時進行故障排除。如果一個進程消耗了記憶體,且該消耗在一段時間內增加,則很可能是出現了記憶體洩漏。如需詳細資訊,請參閱記憶體洩漏錯誤。 |
Getbufs |
進程請求資料包緩衝區的次數。 |
Retbufs |
進程已放棄資料包緩衝區的次數。 |
程序 |
進程的名稱。如需詳細資訊,請參閱本檔案的程式一節。 |
總計 |
所有進程佔用的記憶體總量。 |
流程
下表說明了show processes、show processes cpu和show processes memory輸出中的各個進程。這不是一份詳盡的清單。
程序 |
說明 |
ARP輸入 |
處理傳入的地址解析協定(ARP)請求。 |
BGP I/O |
處理讀取、寫入和執行邊界網關協定(BGP)消息 |
BGP掃描器 |
掃描BGP和主路由表以確保一致性(這是一個獨立的過程,會佔用大量時間)。 |
BGP路由器 |
主BGP進程,在配置完全載入時啟動。 |
BOOTP伺服器 |
網關引導協定(BOOTP)伺服器進程。 |
CallMIB背景 |
如果呼叫歷史記錄過期並收集呼叫資訊,則刪除呼叫歷史記錄。 |
CDP通訊協定 |
|
檢查堆疊 |
每分鐘檢查一次記憶體。如果發現處理器損壞,它會強制重新載入。 |
計算負載平均值 |
|
*Dead* |
作為一個組進行進程,該組現在已死亡。如需詳細資訊,請參閱疑難排解記憶體問題。 |
執行 |
處理控制檯exec會話;優先順序高。 |
Hybridge Input |
處理通過快速路徑傳送的傳入透明網橋資料包。 |
*Init* |
系統初始化 |
IP背景 |
|
IP快取管理器 |
使路由快取老化,並修復陳舊的遞迴路由。老化器在每個時間間隔中運行一次(預設值為一分鐘一次),並進行檢查以確保遞迴路由未使條目作廢。此工作者的另一個功能是確保整個快取大約每20分鐘刷新一次。 |
IP輸入 |
進程交換IP資料包 |
IP-RT背景 |
定期修改最後選用網關和IP靜態路由。此過程在靜態路由(最後選用網關所依賴的)修訂後立即按需呼叫。 |
ISDNMIB背景 |
傳送ISDN陷阱服務,並在呼叫隊列過期時將其刪除 |
ISDN計時器 |
處理ISDN運營商計時器事件 |
負載計 |
計算每五秒不同進程的負載平均值以及每五分鐘呈指數衰減的忙碌時間。負載平均值使用以下公式計算: average =((average - interval)* exp(-t/C))+ interval,其中:
|
多重連結PPP輸出 |
處理從快速交換(出站半快速交換)中排隊的多鏈路資料包 |
網路背景 |
|
淨輸入 |
|
週期淨額 |
每秒執行介面定期功能,例如:
-
- 重置週期計數器
- 清除輸入錯誤率計數器
- 檢查串列線路,看它們是否因故障重新啟動
- 執行任何定期的保持連線功能
- 檢查協定路由表一致性
- 檢查通告線路協定啟動或關閉事件的橋接器狀態一致性
|
每分鐘作業 |
每分鐘執行以下任務一次:
-
分析堆疊使用情況
-
宣佈低堆疊
-
執行已註冊的one_minute作業
|
每秒作業數 |
每秒執行各種任務;執行已註冊的一秒作業。 |
池管理器 |
Manager進程在中斷級別管理增長並放棄來自動態池的請求。 |
PPP管理員 |
|
OSPF路由器 |
主要開放最短路徑優先(OSPF)程式 |
OSPF Hello |
接收hello的OSPF進程 |
*Sched* |
排程器 |
序列背景 |
對每個過期事件監視事件和分支到正確的服務常式(主要是重置介面) |
生成樹 |
|
Tbridge監控器 |
|
TCP驅動程式 |
透過傳輸控制通訊協定(TCP)連線傳送封包資料。開啟和關閉連線,或在隊列已滿時丟棄資料包。遠端來源路由橋接(RSRB)、序列通道(STUN)、X.25交換、透過TCP/IP傳輸的X.25(XOT)、資料連結交換(DLSW)、轉譯,以及目前使用TCP驅動程式的路由器上開始或結束的所有TCP連線。 |
TCP計時器 |
處理超時資料包的重傳 |
虛擬EXEC |
處理虛擬型別終端(vty)線路(例如,路由器上的Telnet會話)。 |
CPU使用率高本身並不表示您的裝置有問題。 粗略的指導原則是,只有在較長的一段時間內始終保持較高的CPU利用率才會表明存在問題。此外,這些命令不是指示符,而是用來幫助找出故障原因。
相關資訊