top監(jiān)控命令在FreeBSD上的使用
top監(jiān)控工具可以顯示CPU占用率為前幾位的進(jìn)程,并提供CPU的實(shí)時(shí)活動(dòng)情況
語(yǔ)法:top [-s time] [-d count] [-q] [-h] [-n number] [-f filename] [-o field][-U usename]
-S 將系統(tǒng)進(jìn)程信息也顯示到屏幕上,默認(rèn)情況下,top不顯示系統(tǒng)進(jìn)程的信息
-b 使用”batch”方式運(yùn)行top。在此種方式下,所有來(lái)自終端的輸入都將被忽略,但交互鍵(比如C and )
依然起使用。這是運(yùn)行top輸出到啞終端或輸?shù)椒墙K端的默認(rèn)運(yùn)行方式
-i 使用交互運(yùn)行top程序,在此種方式下,命令會(huì)被進(jìn)程立即被處理。不管命令是不是能被top所理解執(zhí)行,
屏幕都將立即更新。這是top的默認(rèn)運(yùn)行方式。
-I 不顯示空閑進(jìn)程,在默認(rèn)情況下,top連同空閑進(jìn)程的信息一同輸出。
-t 不顯示top進(jìn)程自己
-n 不以交互方式使用top命令,作用同”batch”方式。
-s time 設(shè)置屏幕刷新的延時(shí),單位為秒,默認(rèn)值5秒
-d count 設(shè)置屏幕刷新的次數(shù),刷新顯示完count次后退出
-q 如果經(jīng)過nice授權(quán),使用-q可以使top運(yùn)行的更快一些,這樣,在系統(tǒng)反應(yīng)緩慢的時(shí)候,可以會(huì)更快的找到存在的問題。
此選項(xiàng)在FreeBSD下只有root可以使用
-n number 設(shè)置每一屏幕顯示的進(jìn)程數(shù)目,number值超過進(jìn)程***數(shù)目,則設(shè)置無(wú)效
-u 用顯示User ID代替username,提高命令運(yùn)行速度
-v 顯示程序版本號(hào)后,立即退出。如果要在top運(yùn)行時(shí)查看版本號(hào),輸入”?”
-o 以指定的字段排序顯示進(jìn)行信息。字段名必須為輸入在屏幕的可見列的名字,而且必須是小寫。
比如”cpu”、”size”、”res”與”time”,但不同的操作系統(tǒng)間有許多的不同。注意不是每個(gè)UNIX操
作系統(tǒng)都支持此選項(xiàng)。
-U 只顯示屬于后面所跟用戶名的進(jìn)程的信息
屏幕控制命令
交換方式下,可以使用以下命令控制top
^L - 刷新屏幕
q - 退出
h or ? - 顯示幫助
d - 修改刷新顯示的次數(shù)
e - 顯示最近”kill”或”renice”命令所產(chǎn)生的錯(cuò)誤
i - 顯示/不顯示處于空閑的進(jìn)程
I - 作用同 ‘i’
k - kill 進(jìn)程; 發(fā)送一個(gè)信號(hào)到某個(gè)進(jìn)程列表
n or # - 修改顯示進(jìn)程的數(shù)目
o - 以特定的字段排序 (pri, size, res, cpu, time)
r - renice 一個(gè)進(jìn)程
s - 修改輸入的更新時(shí)間
u - 只顯示屬于某個(gè)用戶的進(jìn)程 (+ selects all users)
順序顯示下面三個(gè)常規(guī)的信息
一. 系統(tǒng)信息:
last pid: 22228; load averages: 0.25, 0.97, 1.56 up 44+03:25:56 21:39:36
274 processes: 3 running, 259 sleeping, 12 zombie
CPU states: 2.9% user, 0.0% nice, 4.2% system, 0.4% interrupt, 92.5% idle
Mem: 483M Active, 120M Inact, 222M Wired, 25M Cache, 112M Buf, 153M Free
Swap: 2048M Total, 143M Used, 1905M Free, 6% Inuse
首部的幾行顯示系統(tǒng)的幾個(gè)信息,其中包括:
+ Load averages:1分鐘、5分鐘和15分鐘內(nèi)運(yùn)行的負(fù)載平均數(shù)
+ system:系統(tǒng)名和當(dāng)前日期.
一般來(lái)說只要每個(gè)CPU的當(dāng)前活動(dòng)進(jìn)程數(shù)不大于 3那么系統(tǒng)的性能就是良好的,如果每個(gè)CPU的任務(wù)數(shù)大于5,
那么就表示這臺(tái)機(jī)器的性能有嚴(yán)重問題
+ 最近一次更新時(shí)存在的進(jìn)程總數(shù),并分別列出run(運(yùn)行)、sleep(睡眠)、idle(停止)和zomb(‘僵尸’)狀態(tài)的進(jìn)程數(shù)
+ CPU state:用戶占用時(shí)間的百分比、系統(tǒng)占用CPU時(shí)間的百分比、被nice命令改變優(yōu)先級(jí)的任務(wù)占用的CPU時(shí)間百分比、以及CPU空閑時(shí)間的百分比。
(被nice命令改變優(yōu)先級(jí)的任務(wù)僅指那些nice值為負(fù)的任務(wù))?;ㄙM(fèi)在被nice命令改變優(yōu)先級(jí)的任務(wù)上的時(shí)間也將被計(jì)算在系統(tǒng)和用戶時(shí)間內(nèi),因此
整個(gè)時(shí)間加起來(lái)可能會(huì)超過***
二.內(nèi)存信息
Memory: 610008K (24424K) real, 995344K (30304K) virtual, 12588K free Page# 1/4
Memory:關(guān)于內(nèi)存使用情況的統(tǒng)計(jì),包括實(shí)際(real)內(nèi)存的活動(dòng)值/總值,虛擬(virtual)內(nèi)存的使用值/總值,剩余的內(nèi)存。
DESCRIPTION OF MEMORY
Mem: 9220K Active, 1032K Inact, 3284K Wired, 1MB Cache, 2M Buf, 1320K
Free Swap: 91M Total, 79M Free, 13% Inuse, 80K In, 104 K Out
K: Kilobyte(K)
M: Megabyte(兆)
%: 1/100(百分比)
Active:
活動(dòng)頁(yè)的數(shù)目
Inact: 非活動(dòng)頁(yè)的數(shù)目
Wired: 已經(jīng)被寫入頁(yè)的數(shù)目, 包括緩存文件數(shù)據(jù)頁(yè)碼
Cache: 被用于 VM-level 磁盤緩沖的頁(yè)的數(shù)目
Buf: 被用于 BIO-level 磁盤緩沖的頁(yè)的數(shù)目
Free: 空閑頁(yè)
Total: 總的可使用交換區(qū)
Free: 總共空閑的交換區(qū)
Inuse: 交換區(qū)的使用情況
In: pages paged in from swap devices (最近的時(shí)間間隔)
Out: pages paged out to swap devices (最近的時(shí)間間隔)
三.進(jìn)程信息
CPU PID USERNAME PRI NI SIZE RES STATE TIME %WCPU %CPU COMMAND
1 33 root 152 20 0K 0K run 153:43 1.18 1.18 vxfsd
0 1751 root 154 20 2500K 868K sleep 2084:19 0.52 0.52 ARMServer
0 1730 root 154 20 4500K 332K sleep 1664:55 0.44 0.44 acactmgr
列出系統(tǒng)里每一個(gè)處理器的信息,當(dāng)信息在一個(gè)屏幕內(nèi)無(wú)法顯示時(shí),會(huì)被分成多個(gè)屏幕顯示,可以前面提到l,k和t命令查看
(1)CPU:處理器號(hào)(僅當(dāng)多處理器系統(tǒng)時(shí)列出)
(2)PID:進(jìn)程號(hào)
(3)USERNAME:用戶名
(4)PRI:任務(wù)的優(yōu)先級(jí)
(5)NICE:任務(wù)的nice值,一個(gè)具有較低值的進(jìn)程在系統(tǒng)上將具有優(yōu)先權(quán)??梢酝ㄟ^改變nice值提高某些進(jìn)程速度,但是這實(shí)際上是一種交易,因?yàn)槟切﹏ice值被升高的進(jìn)程此時(shí)將運(yùn)行得很慢。
(6)SIZE:任務(wù)的代碼加上數(shù)據(jù)再加上棧空間的大小。
(7)RES:任務(wù)使用的物理內(nèi)存的總數(shù)量。
(8)STATE:任務(wù)的狀態(tài)
(9)TIME:自任務(wù)開始時(shí)使用的總CPU時(shí)間,單位為秒,如153:43,對(duì)應(yīng)是153秒43毫秒
(10)%WCPU:進(jìn)程的CPU利用率權(quán)重百分比
(11)%CPU:進(jìn)程的原始的CPU利用率百分比,自上一次屏幕刷新以來(lái)任務(wù)占用CPU 時(shí)間的份額
(12)COMMAND:?jiǎn)?dòng)進(jìn)程的命令名。如果名字太長(zhǎng)而不能在一行顯示時(shí),它將被截短