2008年(91)
分类: LINUX
2008-03-24 22:57:24
top
top命令提供了实时的对系统处理器的状态监视,即可以通过用户按键来不断刷新当前状态。如果前台执行该命令,它将独占前台,直到用户终止该程序为止,但是该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定。
下面是该命令的语法格式:
top [-] [d delay] [options]
一些参数的含义如下:
参数 解释
d delay 相邻的两次采样的间隔时间
q 该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行
-l 不显示空闲进程,默认时,top显示空闲进程
-S 将系统进程信息也显示于屏幕,默认时,不显示。
与cPU有关的输出的含义
参数 解释
CPU信息 从/proc/stat获得信息
us 在internal时间段里,用户态的CPU时间(%),不包含nice值为负的任务占用的CPU的时间
usr/total*100
ni 在internal时间段里,nice值为负的任务的用户态的Niced进程的CPU时间(%) nice/total*100
sy 在internal时间段里,核心态的CPU时间(%) system/total*100
id 在internal时间段里,cpu空闲的时间,不包括等待i/o的时间(%) idle/total*100
wa 在internal时间段里,等待i/o的时间(%) iowait/total*100
hi 在internal时间段里,硬中断时间(%) irq/total*100
si 在internal时间段里,软中断时间(%) softirq/total*100
任务
total 采样时,系统全部进程的个数,包括正在运行的top进程,不包括线程。 =running+sleeping+stopped+zombie
running 采样时,运行队列的进程的个数,但不包含top这个进程 通过判断/proc/pid/status中stat的值。
sleeping 采样时,可中断和不可中断状态的进程的个数
stopped 采样时,停止状态的进程的个数
zombie 采样时,僵尸状态的进程的个数
运行中的参数的含义
参数 解释
q 退出程序
r 重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID
S 切换到累计模式
L 切换显示平均负载和启动时间信息
T 切换显示进程和CPU状态信息
M 切换显示内存信息
s 改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加
范例1:查看 键入top命令查看系统状况
CODE:
>top top - 16:52:17 up 3 min, 1 user, load average: 0.10, 0.27, 0.14 Tasks: 55 total, 1 running, 54 sleeping, 0 stopped, 0 zombie top - 16:52:31 up 4 min, 1 user, load average: 0.08, 0.26, 0.13 Tasks: 55 total, 1 running, 54 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3% us, 0.3% sy, 0.0% ni, 99.0% id, 0.0% wa, 0.3% hi, 0.0% si Mem: 251924k total, 238168k used, 13756k free, 4420k buffers Swap: 0k total, 0k used, 0k free, 165200k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4171 root 15 0 48404 4404 root 15 0 66540 1 root 16 0 1772 544 464 S 0.0 0.2 0:00.61 init 2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 3 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 events/0 4 root 5 -10 0 0 0 S 0.0 0.0 0:00.02 khelper 5 root 15 -10 0 0 0 S 0.0 0.0 0:00.00 kacpid 19 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 kblockd/0 29 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pdflush 30 root 15 0 0 0 0 S 0.0 0.0 0:00.01 pdflush 32 root 14 -10 0 0 0 S 0.0 0.0 0:00.00 aio/0 20 root 15 0 0 0 0 S 0.0 0.0 0:00.00 khubd 31 root 15 0 0 0 0 S 0.0 0.0 0:00.01 kswapd0 618 root 25 0 0 0 0 S 0.0 0.0 0:00.00 kseriod |
第一行的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载(1秒,5秒,15秒平均负载
) 。
第二行为进程情况,依次为进程总数、休眠进程数、运行进程数、僵死进程数、终止进程数。
第三行为CPU状态,依次为用户占用、系统占用、优先任务占用、闲置任务占用。
第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、共享内存、缓存使用内存。
第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、交换高速缓存容量。
然后下面就是和ps相仿的各进程情况列表了。
总的来说,top命令的功能强于ps,但需要长久占用前台,所以用户应该根据自己的情况来使用这个命令。
Cpu: 0.0%us, 0.1%sy, 0.0%ni, 99.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
debian:/home/liangyin# top -n 1 |grep Cpu|awk -F'[ %]' '{print $11}'
99.8