命令top使用指南

來源:互聯網
上載者:User

1--top的啟動參數2--top各資訊展示區說明 load average:最近1分鐘、5分鐘和15分鐘的系統平均負載

系統平均負載被定義為在特定時間間隔內運行隊列中(在CPU上運行或者等待運行多少進程)的平均進程數。如果一個進程滿足以下條件則其就會位於運行隊列中: - 它沒有在等待I/O操作的結果
- 它沒有主動進入等待狀態(也就是沒有調用’wait’)
- 沒有被停止(例如:等待終止)

進程三種狀態:一是阻塞進程(blocked process),二是可運行進程(runnable process),三是運行中進程(running process)。
系統load是指運行中和可運行進程的總數,比如現在系統有2個運行中進程,3個可運行進程,那麼系統的load就是5。load average就是一定時間內的load數量。 例如load average: 8.13, 5.90, 4.94,表示在過去的1、5、15分鐘內運行隊列中的平均進程數量,假設系統有兩個CPU,那麼其每個CPU的當前任務數為:8.13/2=4.065,5.90/2=2.95,4.94/2=2.47。
一般來說只要每個CPU的當前活動進程數不大於3,那麼系統的效能就是良好的;如果每個CPU的任務數大於5,那麼就表示這台機器的效能有嚴重問題。
在Linux系統中,uptime、w、top等命令都會有系統平均負載load average的輸出。 Tasks: 56 total, 2 running, 54 sleeping, 0 stopped, 0 zombie

當前進程統計資訊: 56 total:系統當前進程總數;
2 running:運行中進程數量;
54 sleeping:睡眠中進程數量;
0 stopped:停止的進程數量;
0 zombie:殭屍進程數量。

Cpu(s): 0.3% us, 1.0% sy, 0.0% ni, 98.7% id, 0.0% wa, 0.0% hi, 0.0% si

CPU使用統計資訊:

15.2%us:使用者空間佔用CPU百分比; 0.4%sy:核心空間佔用CPU百分比; 0.0%ni:使用者進程空間內改變過優先順序的進程佔用CPU百分比;82.8%id:空閑CPU百分比; 1.4%wa:等待I/O的CPU時間百分比; 0.0%hi:CPU硬停機時間百分比; 0.1%si:CPU非強制中斷時間百分比; 0.0%st:

進程統計資訊區

PID
前五行是系統整體的統計資訊。第一行是任務隊列資訊,同 uptime 命令的執行結果。其內容如下:

01:06:48 目前時間

up 1:22 系統已耗用時間,格式為時:分

1 user 當前登入使用者數

load average: 0.06, 0.60, 0.48 系統負載,即任務隊列的平均長度。

三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。

第二、三行為進程和CPU的資訊。當有多個CPU時,這些內容可能會超過兩行。內容如下:

Tasks: 29 total 進程總數

1 running 正在啟動並執行進程數

28 sleeping 睡眠的進程數

0 stopped 停止的進程數

0 zombie 殭屍進程數

Cpu(s): 0.3% us 使用者空間佔用CPU百分比

1.0% sy 核心空間佔用CPU百分比

0.0% ni 使用者進程空間內改變過優先順序的進程佔用CPU百分比

98.7% id 空閑CPU百分比

0.0% wa 等待輸入輸出的CPU時間百分比

0.0% hi

0.0% si

最後兩行為記憶體資訊。內容如下:

Mem: 191272k total 實體記憶體總量

173656k used 使用的實體記憶體總量

17616k free 空閑記憶體總量

22052k buffers 用作核心緩衝的記憶體量

Swap: 192772k total 交換區總量

0k used 使用的交換區總量

192772k free 空閑交換區總量

123988k cached 緩衝的交換區總量。

記憶體中的內容被換出到交換區,而後又被換入到記憶體,但使用過的交換區尚未被覆蓋,

該數值即為這些內容已存在於記憶體中的交換區的大小。

相應的記憶體再次被換出時可不必再對交換區寫入。

進程資訊區

統計資訊地區的下方顯示了各個進程的詳細資料。首先來認識一下各列的含義。

序號 列名 含義

a PID 進程id

b PPID 父進程id

c RUSER Real user name

d UID 進程所有者的使用者id

e USER 進程所有者的使用者名稱

f GROUP 進程所有者的組名

g TTY 啟動進程的終端名。不是從終端啟動的進程則顯示為 ?

h PR 優先順序

i NI nice值。負值表示高優先順序,正值表示低優先順序

j P 最後使用的CPU,僅在多CPU環境下有意義

k %CPU 上次更新到現在的CPU時間佔用百分比

l TIME 進程使用的CPU時間總計,單位秒

m TIME+ 進程使用的CPU時間總計,單位1/100秒

n %MEM 進程使用的實體記憶體百分比

o VIRT 進程使用的虛擬記憶體總量,單位kb。VIRT=SWAP+RES

p SWAP 進程使用的虛擬記憶體中,被換出的大小,單位kb。

q RES 進程使用的、未被換出的實體記憶體大小,單位kb。RES=CODE+DATA

r CODE 可執行代碼佔用的實體記憶體大小,單位kb

s DATA 可執行代碼以外的部分(資料區段+棧)佔用的實體記憶體大小,單位kb

t SHR 共用記憶體大小,單位kb

u nFLT 分頁錯誤次數

v nDRT 最後一次寫入到現在,被修改過的頁面數。

w S 進程狀態。

D=不可中斷的睡眠狀態

R=運行

S=睡眠

T=跟蹤/停止

Z=殭屍進程

x COMMAND 命令名/命令列

y WCHAN 若該進程在睡眠,則顯示睡眠中的系統函數名

z Flags 任務標誌,參考 sched.h

預設情況下僅顯示比較重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通過下面的快速鍵來更改顯示內容。

更改顯示內容

通過 f 鍵可以選擇顯示的內容。按 f 鍵之後會顯示列的列表,按 a-z 即可顯示或隱藏對應的列,最後按斷行符號鍵確定。

按 o 鍵可以改變列的顯示順序。按小寫 a-z 可以將相應的列向右移動,而大寫的 A-Z 可以將相應的列向左移動。最後按斷行符號鍵確定。

按大寫的 F 或 O 鍵,然後按 a-z 可以將進程按照相應的列進行排序。而大寫的 R 鍵可以將當前的排序倒轉。

命令使用

1. 工具(命令)名稱

top

2.工具(命令)作用

顯示系統當前的進程和其他狀況; top是一個動態顯示過程,即可以通過使用者按鍵來不斷重新整理目前狀態.如果在前台執行該命令,它將獨佔前台,直到使用者終止該程式為止. 比較準確的說,top命令提供了即時的對系統處理器的狀態監視.它將顯示系統中CPU最“敏感”的工作清單.該命令可以按CPU使用.記憶體使用量和執行時間對任務進行排序;而且該命令的很多特性都可以通過互動式命令或者在個人定製檔案中進行設定.

3.環境設定

在Linux下使用。

4.使用方法

4.1使用格式

top [-] [d] [p] [q] [c] [C] [S] [s] [n]

4.2參數說明

d 指定每兩次螢幕資訊重新整理之間的時間間隔。當然使用者可以使用s互動命令來改變之。

p 通過指定監控進程ID來僅僅監控某個進程的狀態。

q該選項將使top沒有任何延遲的進行重新整理。如果調用程式有超級使用者權限,那麼top將以儘可能高的優先順序運行。

S 指定累計模式

s 使top命令在安全模式中運行。這將去除互動命令所帶來的潛在危險。

i 使top不顯示任何閑置或者僵死進程。

c 顯示整個命令列而不只是顯示命令名

4.3其他

下面介紹在top命令執行過程中可以使用的一些互動命令。從使用角度來看,熟練的掌握這些命令比掌握選項還重要一些。這些命令都是單字母的,如果在命令列選項中使用了s選項,則可能其中一些命令會被屏蔽掉。

Ctrl+L 擦除並且重寫螢幕。

h或者? 顯示協助畫面,給出一些簡短的命令總結說明。

k 終止一個進程。系統將提示使用者輸入需要終止的進程PID,以及需要發送給該進程什麼樣的訊號。一般的終止進程可以使用15訊號;如果不能正常結束那就使用訊號9強制結束該進程。預設值是訊號15。在安全模式中此命令被屏蔽。

i 忽略閑置和僵死進程。這是一個開關式命令。

q 退出程式。

r 重新安排一個進程的優先順序別。系統提示使用者輸入需要改變的進程PID以及需要設定的進程優先順序值。輸入一個正值將使優先順序降低,反之則可以使該進程擁有更高的優先權。預設值是10。

S 切換到累計模式。

s 改變兩次重新整理之間的延遲時間。系統將提示使用者輸入新的時間,單位為s。如果有小數,就換算成m s。輸入0值則系統將不斷重新整理,預設值是5 s。需要注意的是如果設定太小的時間,很可能會引起不斷重新整理,從而根本來不及看清顯示的情況,而且系統負載也會大大增加。

f或者F 從當前顯示中添加或者刪除項目。

o或者O 改變顯示項目的順序。

l 切換顯示平均負載和啟動時間資訊。

m 切換顯示記憶體資訊。

t 切換顯示進程和CPU狀態資訊。

c 切換顯示命令名稱和完整命令列。

M 根據駐留記憶體大小進行排序。

P 根據CPU使用百分比大小進行排序。

T 根據時間/累計時間進行排序。

W 將當前設定寫入~/.toprc檔案中。這是寫top設定檔的推薦方法。

3--運行時命令

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.