目錄

簡介

必要條件

需求

採用元件

慣例

背景資訊

show processes命令

show processes cpu命令

show processes cpu history命令

show processes memory命令

流程

相關資訊

簡介

本文檔介紹show processes命令以及從命令輸出獲得的詳細統計資訊。

必要條件

需求

本文件沒有特定需求。

採用元件

本檔案中的資訊是根據以下軟體版本：

- Cisco IOS®軟體版本12.2(10b)

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

背景資訊

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通訊協定

- 主思科發現協定(CDP) — 處理每個介面的CDP初始化

- 如果傳入資料包，則監視CDP隊列和計時器，然後處理它

- 如果計時器事件，則傳送更新

檢查堆疊

每分鐘檢查一次記憶體。如果發現處理器損壞，它會強制重新載入。

計算負載平均值

- 計算每個網路介面的五分鐘指數衰減輸出位元率，以及整個系統的負載係數。負載平均值使用以下公式計算：average =((average - interval)* exp(-t/C))+間隔(其中t = 5秒和C = 5分鐘，exp(-5/60*5))= .983

- 計算每個介面的負載（逐個）並檢查備份介面負載（根據負載啟用這些負載或關閉它們）。

*Dead*

作為一個組進行進程，該組現在已死亡。如需詳細資訊，請參閱疑難排解記憶體問題。

執行

處理控制檯exec會話；優先順序高。

Hybridge Input

處理通過快速路徑傳送的傳入透明網橋資料包。

*Init*

系統初始化

IP背景

- 當您更改封裝(例如，當介面進入新狀態、IP地址更改、新增新的資料交換介面(DXI)對映或某些撥號器計時器到期時)時呼叫。

- 會定期老化網際網路控制訊息通訊協定(ICMP)重新導向快取。

- 根據介面的狀態修改路由表。

IP快取管理器

使路由快取老化，並修復陳舊的遞迴路由。老化器在每個時間間隔中運行一次（預設值為一分鐘一次），並進行檢查以確保遞迴路由未使條目作廢。此工作者的另一個功能是確保整個快取大約每20分鐘刷新一次。

IP輸入

進程交換IP資料包

IP-RT背景

定期修改最後選用網關和IP靜態路由。此過程在靜態路由（最後選用網關所依賴的）修訂後立即按需呼叫。

ISDNMIB背景

傳送ISDN陷阱服務，並在呼叫隊列過期時將其刪除

ISDN計時器

處理ISDN運營商計時器事件

負載計

計算每五秒不同進程的負載平均值以及每五分鐘呈指數衰減的忙碌時間。負載平均值使用以下公式計算： average =((average - interval)* exp(-t/C))+ interval，其中：

- t = 5秒，C = 5分鐘，exp(-5/(60*5))= .983~= 1007/1024

- t = 5秒，C = 1分鐘，exp(-5/60)= .920~= 942/1024

多重連結PPP輸出

處理從快速交換（出站半快速交換）中排隊的多鏈路資料包

網路背景

- 執行各種與網路相關的後台任務。這些任務必須快速執行，不能因任何原因而阻止。在net_background進程中呼叫的任務（例如，介面取消限制）對時間非常關鍵。

- 執行「計算負載平均值」、「每分鐘作業」和「淨輸入」進程。

- 當介面處於受限狀態時處理介面。

淨輸入

- 處理其他未知的資料包。此操作在進程級別完成，以便讓輸入隊列發揮作用。如果您在中斷級別運行，可以很容易地鎖定路由器。

- 處理您決定提供給網橋的一些已知協定。 在這種情況下，net_input會將封包傳送到NULL或橋接它。

週期淨額

每秒執行介面定期功能，例如：

- 重置週期計數器

- 清除輸入錯誤率計數器

- 檢查串列線路，看它們是否因故障重新啟動

- 執行任何定期的保持連線功能

- 檢查協定路由表一致性

- 檢查通告線路協定啟動或關閉事件的橋接器狀態一致性

每分鐘作業

每分鐘執行以下任務一次：

- 分析堆疊使用情況

- 宣佈低堆疊

- 執行已註冊的one_minute作業

每秒作業數

每秒執行各種任務；執行已註冊的一秒作業。

池管理器

Manager進程在中斷級別管理增長並放棄來自動態池的請求。

PPP管理員

- 管理所有PPP有限狀態機(FSM)操作並處理PPP輸入資料包和介面轉換。

- 監控PPP隊列和PPP計時器（協商、身份驗證、空閒等）。

OSPF路由器

主要開放最短路徑優先(OSPF)程式

OSPF Hello

接收hello的OSPF進程

*Sched*

排程器

序列背景

對每個過期事件監視事件和分支到正確的服務常式（主要是重置介面）

生成樹

- 執行生成樹協定(STP)，這是一個處理多個生成樹演算法的進程

- 監視STP隊列：

- 處理傳入的STP資料包

- 監控STP計時器：

- Hello 計時器

- 拓撲更改計時器

- 數位裝置公司(DEC)短老化計時器

- 轉發延遲計時器

- 消息老化計時器

Tbridge監控器

- 將「相關資料包」分派給相應的處理程式(「相關流量」是思科組管理協定(CGMP)、網際網路組管理協定(IGMP)、OSPF資料包[組播]

- 監控組播計時器，該計時器會檢查站入口老化情況和電路組活動電路

TCP驅動程式

透過傳輸控制通訊協定(TCP)連線傳送封包資料。開啟和關閉連線，或在隊列已滿時丟棄資料包。遠端來源路由橋接(RSRB)、序列通道(STUN)、X.25交換、透過TCP/IP傳輸的X.25(XOT)、資料連結交換(DLSW)、轉譯，以及目前使用TCP驅動程式的路由器上開始或結束的所有TCP連線。

TCP計時器

處理超時資料包的重傳

虛擬EXEC

處理虛擬型別終端(vty)線路（例如，路由器上的Telnet會話）。

CPU使用率高本身並不表示您的裝置有問題。例如，在7500 VIP上，如果出站介面的隊列上升策略為先進先出(FIFO)且出站介面擁塞，則緩衝區啟動的Rx端，即入站VIP啟動緩衝的資料包。現在，如果發生Rx端緩衝，VIP CPU使用率為99%。這是正常的，其本身並不表示過載。如果VIP收到更重要的事情（例如，另一個要交換的資料包），操作不會受到高CPU的影響。粗略的指導原則是，只有在較長的一段時間內始終保持較高的CPU利用率才會表明存在問題。此外，這些命令不是指示符，而是用來幫助找出故障原因。

相關資訊

- 疑難排解思科路由器 CPU 高使用率的問題

- 記憶體問題故障排除

- 思科技術支援與下載