前言
top命令經(jīng)常用來(lái)監(jiān)控linux的系統(tǒng)狀況,是常用的性能分析工具,能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用情況
目錄
一、描述
二、top命令常用字段含義
三、top中的子命令
四、總結(jié)
五、思維導(dǎo)圖
一、描述
1、top命令
- 經(jīng)常用來(lái)監(jiān)控Linux的系統(tǒng)狀況
- 是常用的性能分析工具
- 能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用情況
2、與ps命令的區(qū)別
- ps命令只能顯示進(jìn)程某一時(shí)刻的靜態(tài)信息
- top命令則能以實(shí)時(shí)、動(dòng)態(tài)刷新(默認(rèn)每3秒刷新一次)的方式顯示進(jìn)程狀態(tài)
- 從而為系統(tǒng)管理員及時(shí)、有效地發(fā)現(xiàn)系統(tǒng)的缺陷提供方便
二、top命令常用字段含義
1、前6行
- 第一行:正常運(yùn)行時(shí)間行。顯示系統(tǒng)當(dāng)前時(shí)間、系統(tǒng)已運(yùn)行的時(shí)間、當(dāng)前已登錄的用戶數(shù)、1/5/10分鐘前到現(xiàn)在系統(tǒng)平均負(fù)載(≤1時(shí)屬于正常,若持續(xù)≥5表明系統(tǒng)很忙碌)
- 第二行:進(jìn)程統(tǒng)計(jì)行。包括進(jìn)程的總量,以及正在運(yùn)行、掛起、暫停、僵尸進(jìn)程的數(shù)量
- 第三行:CPU統(tǒng)計(jì)行。包括用戶控件占用CPU的百分比、系統(tǒng)內(nèi)核控件占用CPU的時(shí)間、用戶進(jìn)程中修改過(guò)優(yōu)先級(jí)的進(jìn)程占用CPU的百分比、空閑CPU百分比、等待輸入輸出CPU時(shí)間百分比、服務(wù)于硬件終端所耗費(fèi)CPU時(shí)間百分比、服務(wù)于軟件終端所耗費(fèi)CPU時(shí)間百分比、st(Steal Time)服務(wù)于其他虛擬機(jī)所耗費(fèi)CPU時(shí)間百分比
- 第四行:內(nèi)存統(tǒng)計(jì)行。包括物理內(nèi)存總量,以及已用、空閑、緩沖區(qū)內(nèi)存量
- 第五行:交換分區(qū)和緩沖區(qū)統(tǒng)計(jì)行。包括交換分區(qū)總量、已使用交換分區(qū)總量、空閑交換分區(qū)總量和緩存交換分區(qū)總量
- 第六行:顯示的是此后各行的標(biāo)題
2、PID, USER, PR, NI:與ps命令中的字段含義相同
3、VIRT:virtual memory usage——虛擬內(nèi)存
- 進(jìn)程“需要的”虛擬內(nèi)存大小,包括進(jìn)程使用的庫(kù)、代碼、數(shù)據(jù)等
- 假如進(jìn)程申請(qǐng)100M的內(nèi)存,但實(shí)際只使用了10M,那么它會(huì)占用100M,而不是實(shí)際的使用量
4、RES:resident memory usage——常駐內(nèi)存
- 進(jìn)程當(dāng)前使用的內(nèi)存大小,但不包括swap out
- 包含其它進(jìn)程的共享
- 如果申請(qǐng)100M的內(nèi)存,實(shí)際使用10M,它只占用10m,與VIRT相反
- 關(guān)于庫(kù)占用內(nèi)存的情況,它只統(tǒng)計(jì)加載的庫(kù)文件所占內(nèi)存大小
5、SHR:shared memory——共享內(nèi)存
- 除了自身進(jìn)程的共享內(nèi)存,也包括其它進(jìn)程的共享內(nèi)存
- 雖然進(jìn)程只使用了幾個(gè)共享庫(kù)的函數(shù),但它包含了整個(gè)共享庫(kù)的大小
- 計(jì)算某個(gè)進(jìn)程所占用的物理內(nèi)存大小公式:RES - SHR
- swap out后,它將會(huì)降下來(lái)
6、DATA:
- 數(shù)據(jù)占用的內(nèi)存
- 如果top沒(méi)有顯示,可以通過(guò)f鍵顯示出來(lái)
- 真正的該程序要求的數(shù)據(jù)空間,是真正在運(yùn)行中要使用的
三、top中的子命令
在top命令使用過(guò)程中,可以使用一些交互子命令來(lái)定制自己的輸出和其他功能,這些子命令是通過(guò)按快捷鍵調(diào)用的
- 空格:立即刷新
- T:根據(jù)時(shí)間、累計(jì)時(shí)間排序
- m:切換顯示內(nèi)存信息
- c:切換顯示命令名稱和完整命令行
- W:將當(dāng)前顯示配置寫入~/.toprc文件中,以便下次啟動(dòng)top時(shí)使用
- N:根據(jù)啟動(dòng)時(shí)間進(jìn)行排序
- f:更改選擇顯示或隱藏列內(nèi)容
- P:根據(jù)CPU使用率,按降序顯示列表
- q:退出top命令
- t:切換顯示進(jìn)程和CPU狀態(tài)信息
- M:根據(jù)內(nèi)存使用率,按降序顯示進(jìn)程列表
- K:結(jié)束進(jìn)程的運(yùn)行鍵后在列表上方將出現(xiàn)“PID to kill”提示,在其后輸入指定進(jìn)程的PID號(hào),按回車鍵后即可結(jié)束指定進(jìn)程的運(yùn)行
- r:修改進(jìn)程的優(yōu)先級(jí)
- o:更改顯示列的順序
四、總結(jié)
- top命令能夠?qū)崟r(shí)顯示系統(tǒng)中各個(gè)進(jìn)程的資源占用情況
- ps命令只能顯示進(jìn)程某一時(shí)刻的靜態(tài)信息
- top命令前五行顯示系統(tǒng)總體狀況
- VIRT:virtual memory usage——虛擬內(nèi)存
- RES:resident memory usage——常駐內(nèi)存
- SHR:shared memory——共享內(nèi)存
- DATA:數(shù)據(jù)占用的內(nèi)存
五、思維導(dǎo)圖






