使用top命令分析linux系統(tǒng)性能的詳解
linux的top命令簡介
top命令是Linux下常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用狀況,類似于Windows的任務(wù)管理器。
top顯示系統(tǒng)當(dāng)前的進(jìn)程和其他狀況,是一個(gè)動態(tài)顯示過程,即可以通過用戶按鍵來不斷刷新當(dāng)前狀態(tài).如果在前臺執(zhí)行該命令,它將獨(dú)占前臺,直到用戶 終止該程序?yàn)橹? 比較準(zhǔn)確的說,top命令提供了實(shí)時(shí)的對系統(tǒng)處理器的狀態(tài)監(jiān)視.它將顯示系統(tǒng)中CPU最“敏感”的任務(wù)列表.該命令可以按CPU使用.內(nèi)存使用和執(zhí)行時(shí)間 對任務(wù)進(jìn)行排序;而且該命令的很多特性都可以通過交互式命令或者在個(gè)人定制文件中進(jìn)行設(shè)定。
在linux系統(tǒng)中,top命令可謂是分析系統(tǒng)性能最方便的工具,而且top還是個(gè)交互式工具;通過top命令可以清楚地了解到正在執(zhí)行的進(jìn)程信息包括進(jìn)程ID,內(nèi)存占用率,CPU占用率等。其實(shí)就跟window的任務(wù)管理器類似。
運(yùn)行top命令的結(jié)果如下:
第一行是任務(wù)隊(duì)列信息,跟 uptime 命令的執(zhí)行結(jié)果類同,具體參數(shù)說明如下:
- 19:40:19 — 指當(dāng)前系統(tǒng)時(shí)間
- up 35 days, 20:32 — 表示系統(tǒng)已經(jīng)運(yùn)行了35天20小時(shí)32分鐘(是指在這期間系統(tǒng)沒有重新啟動過,持續(xù)運(yùn)行)
- 1 users — 當(dāng)前有1個(gè)用戶登錄系統(tǒng)
- load average: 0.00, 0.00, 0.00 — load average后面的三個(gè)數(shù)分別是1分鐘、5分鐘、15分鐘的負(fù)載情況。
- load average數(shù)據(jù)是每隔5秒鐘檢查一次活躍的進(jìn)程數(shù),然后按特定算法計(jì)算出的數(shù)值。如果這個(gè)數(shù)除以邏輯CPU的數(shù)量,結(jié)果高于5的時(shí)候就表明系統(tǒng)在超負(fù)荷運(yùn)轉(zhuǎn)了。
第二行,Tasks — 任務(wù)(進(jìn)程),具體信息說明如下:
- 系統(tǒng)現(xiàn)在共有81個(gè)進(jìn)程,其中處于運(yùn)行中的有1個(gè),80個(gè)在休眠(sleep),stoped狀態(tài)的有0個(gè),zombie狀態(tài)(僵尸)的有0個(gè),要特別留意zombie的進(jìn)程哦。
第三行,cpu狀態(tài)信息,具體屬性說明如下:
- 0.0%us — 用戶空間占用CPU的百分比。
- 0.0%sy — 內(nèi)核空間占用CPU的百分比。
- 0.0%ni — 改變過優(yōu)先級的進(jìn)程占用CPU的百分比
- 100.0%id — 空閑CPU百分比
- 0.0%wa — IO等待占用CPU的百分比
- 0.0%hi — 硬中斷(Hardware IRQ)占用CPU的百分比
- 0.0%si — 軟中斷(Software Interrupts)占用CPU的百分比
- 0.0%st — 這個(gè)我也不知道……
第四行, Mem內(nèi)存狀態(tài),具體信息說明如下:
- 1029828k total — 物理內(nèi)存總量(1GB)
- 804628k used — 使用中的內(nèi)存總量(767M)
- 228200k free — 空閑內(nèi)存總量(217M)
- 167208k buffers — 緩存的內(nèi)存量(159M)
第五行,swap交換分區(qū)信息,具體信息說明如下:
- 0k total — 交換區(qū)總量(0K)
- 0k used — 使用的交換區(qū)總量(0K)
- 0k free — 空閑交換區(qū)總量(0K)
- 401672k cached — 緩沖的交換區(qū)總量(383M)
第六行,空行。
第七行以下:各進(jìn)程(任務(wù))的狀態(tài)監(jiān)控,列信息說明如下:
- PID — 進(jìn)程id
- USER — 進(jìn)程所有者
- PR — 進(jìn)程優(yōu)先級
- NI — nice值。負(fù)值表示高優(yōu)先級,正值表示低優(yōu)先級
- VIRT — 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
- RES — 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
- SHR — 共享內(nèi)存大小,單位kb
- S — 進(jìn)程狀態(tài)。D=不可中斷的睡眠狀態(tài) R=運(yùn)行 S=睡眠 T=跟蹤/停止 Z=僵尸進(jìn)程
- %CPU — 上次更新到現(xiàn)在的CPU時(shí)間占用百分比
- %MEM — 進(jìn)程使用的物理內(nèi)存百分比
- TIME+ — 進(jìn)程占用的CPU時(shí)間總計(jì),單位1/100秒
- COMMAND — 進(jìn)程名稱(命令名/命令行)
top 命令參數(shù):
- -b 批處理
- -c 顯示完整的 COMMAND
- -I 忽略失效過程
- -s 保密模式
- -S 累積模式
- -i<時(shí)間> 設(shè)置間隔時(shí)間
- -u<用戶名> 指定用戶名
- -p<進(jìn)程號> 指定進(jìn)程
- -n<次數(shù)> 循環(huán)顯示的次數(shù)
top 的交互命令(在top命令運(yùn)行過程中輸入以下命令即可):
- q:退出程序。
- h或者? :顯示幫助畫面,給出一些簡短的命令總結(jié)說明。
- k :終止一個(gè)進(jìn)程。系統(tǒng)將提示用戶輸入需要終止的進(jìn)程PID,以及需要發(fā)送給該進(jìn)程什么樣的信號。一般的終止進(jìn)程可以使用15信號;如果不能正常結(jié)束那就使用信號9強(qiáng)制結(jié)束該進(jìn)程。默認(rèn)值是信號15。在安全模式中此命令被屏蔽。
- i:忽略閑置和僵尸進(jìn)程。這是一個(gè)開關(guān)式命令。
- M:根據(jù)駐留內(nèi)存大小進(jìn)行排序。
- P:根據(jù)CPU使用百分比大小進(jìn)行排序。
- T:根據(jù)時(shí)間/累計(jì)時(shí)間進(jìn)行排序。
- W:將當(dāng)前設(shè)置寫入~/.toprc文件中。這是寫top配置文件的推薦方法。
- r:重新安排一個(gè)進(jìn)程的優(yōu)先級別。系統(tǒng)提示用戶輸入需要改變的進(jìn)程PID以及需要設(shè)置的進(jìn)程優(yōu)先級值。輸入一個(gè)正值將使優(yōu)先級降低,反之則可以使該進(jìn)程擁有更高的優(yōu)先權(quán)。默認(rèn)值是10。
- l:切換顯示平均負(fù)載和啟動時(shí)間信息。即顯示影藏第一行
- m:切換顯示內(nèi)存信息。即顯示影藏內(nèi)存行
- t:切換顯示進(jìn)程和CPU狀態(tài)信息。即顯示影藏CPU行
- c:切換顯示命令名稱和完整命令行。 顯示完整的命令。 這個(gè)功能很有用。
- S:切換到累計(jì)模式。
- s:改變兩次刷新之間的延遲時(shí)間。系統(tǒng)將提示用戶輸入新的時(shí)間,單位為s。如果有小數(shù),就換算成ms。輸入0值則系統(tǒng)將不斷刷新,默認(rèn)值是5s。需要注意的是如果設(shè)置太小的時(shí)間,很可能會引起不斷刷新,從而根本來不及看清顯示的情況,而且系統(tǒng)負(fù)載也會大大增加。
- f或者F:從當(dāng)前顯示中添加或者刪除項(xiàng)目。
- o或者O:改變顯示項(xiàng)目的順序。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Linux ps和pstree命令知識點(diǎn)總結(jié)
在本篇文章里小編給大家分享的是關(guān)于Linux ps和pstree命令知識點(diǎn)總結(jié)內(nèi)容,需要的朋友們可以學(xué)習(xí)參考下。2020-02-02關(guān)于linux分區(qū),文件系統(tǒng),目錄結(jié)構(gòu)的概述
下面小編就為大家?guī)硪黄P(guān)于linux分區(qū),文件系統(tǒng),目錄結(jié)構(gòu)的概述。小編覺得挺不錯(cuò)的。現(xiàn)在就分享給大家。也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12Ubuntu上Vim安裝NERDTree插件的詳細(xì)操作步驟
這篇文章主要介紹了Ubuntu上Vim安裝NERDTree插件操作步驟,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08centeros7 安裝配置環(huán)境jdk1.8的教程
這篇文章主要介紹了centeros7 安裝配置環(huán)境jdk1.8的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09linux命令實(shí)現(xiàn)音頻格式轉(zhuǎn)換和拼接的方法
今天小編就為大家分享一篇linux命令實(shí)現(xiàn)音頻格式轉(zhuǎn)換和拼接的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08