top命令是linux下常用的性能分析工具,类似于Windows系统下的任务管理器top工具动态实时的显示系统的运行信息。 它能显示整体的系统信息并且以列表的是的形式显示正在被内核控制的任务信息。而且该命令的很多特性都可以通过交互式命令 或者在个人定制文件中进行设定。
1 功能:
显示当前系统正在执行的进程的相关信息,包括进程ID、内存、CPU等相关信息。
2 命令格式:
top [option]
3 选项:
-b 批处理
-c 显示完整的治命令
-d 屏幕刷新间隔时间
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i<时间> 设置间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次
4 交互命令选项:
h:显示帮助信息
k:终止一个进程
i:忽略闲置和僵死进程,这是一个开关进程
q:退出程序
r:重新安排一个进程的优先级别
S:切换到累积模式
s:改变两次刷新之间的延迟时间(单位s),如果有小数,就换算成ms。输入0则系统不断刷新,默认值为5s
f或F:葱当前显示中添加或者删除项目
o或者O:改变显示项目的顺序
l:切换显示平均负载和启动时间信息
m:切换是否显示内存信息
t:切换是否显示进程和CPU状态信息
c:切换显示命令名称和完整命令行
M:根据驻留内存大小进行排序
P:根据cpu使用百分比大小进行排序
T:根据时间/累计时间进行排序
w:将当前设置写入~/.toprc文件中
示例
#top top - 16:52:51 up 5:37, 2 users, load average: 0.31, 0.42, 0.33 Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.3%si, 0.0%st Mem: 1004136k total, 456464k used, 547672k free, 26492k buffers Swap: 1048572k total, 0k used, 1048572k free, 214520k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4 root 20 0 0 0 0 S 0.3 0.0 0:51.06 ksoftirqd/0 1570 root 20 0 2221m 88m 13m S 0.3 9.1 5:04.60 java 1 root 20 0 19360 1524 1228 S 0.0 0.2 0:07.40 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.03 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 stopper/0 6 root RT 0 0 0 0 S 0.0 0.0 0:00.84 watchdog/0 7 root 20 0 0 0 0 S 0.0 0.0 1:03.96 events/0
说明:
统计信息区:
前五行是当前系统情况整体的统计信息区。
16:52:51 : 当前系统时间
up 5:37 : 系统持续运行时间
2 users : 当前两个用户登录系统
load average: 0.31, 0.42, 0.33 :系统负载,任务队列平均长度。
load average后面的三个数分别是1分钟、5分钟、15分钟的负载平均情况。
当CPU完全空闲的时候,平均负荷为0;当CPU工作量饱和的时候,平均负荷为1。
Tasks: 85 total, 1 running, 84 sleeping, 0 stopped, 0 zombie:进程信息
系统目前总共有85个进程,其中处于运行中的有1个,84个在休眠sleep 0个stoped 0个zombie僵尸进程
Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.3%si, 0.0%st: CPU信息
0.3%us 用户空间使用CPU的百分比
0.3%sy 内核空间使用CPU的百分比
0.0%ni 改变过优先级进程使用CPU的百分比
99.0%id 空闲CPU的百分比
0.0%wa io等待占用CPU
0.0%hi 硬中断(Hardware IRQ)占用CPU的百分比
0.3%si 软中断(Software Interrupts)占用CPU的百分比
0.0%st 虚拟CPU空闲占用CPU百分比
Mem: 1004136k total, 456464k used, 547672k free, 26492k buffers 内存信息
1004136k total 物理内存总量
456464k used 被占用的内存量
547672k free 空闲内存量
26492k buffers 缓存的内存量
Swap: 1048572k total, 0k used, 1048572k free, 214520k cached 交换分区信息
1048572k total 交换区总量
0k used 使用的交换分区量
1048572k free 空闲交换分区量
214520k cached 缓冲交换区总量
PID 进程号
USER 进程所有者
PR 进程优先级
NI nice值 负值表示优先级高,正值表示优先级低
VIRT 进程使用虚拟内存总量 VIRT=RES+Swap
RES 进程使用的、未被换出的物理内存大小 RES=CODE+DATA
SHR 共享内存大小
S 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU 上次更新到现在的CPU时间占用百分比
%MEM 进程使用的物理内存百分比
TIME+ 进程使用的CPU时间总计,单位1/100秒
COMMAND 进程名称(命令名/命令行)
1 在top运行状态,输入1指令,显示CPU每个逻辑单元的
2 进程字段加亮和排序
加亮开关b 排序开关x 通过”shift +>”或”shift + <”可以向右或左改变排序列
按b键打开高亮
按x键进行排序,默认是CPU列
通过”shift + >”或”shift + <”可以向右或左改变排序列
3 显示完整的命令COMMAND:top –c
4 设置信息更新次数:
top–n 3 : 信息在更新3次后停止更新,退出top
5 设置信息刷新时间间隔: 默认刷新时间为 5s
top–d 2 : 每隔两秒中,刷新一下屏幕信息
如有错误,请指正!
谢谢!
本文出自 “菜鸟 Roger” 博客,请务必保留此出处http://rogerwang.blog.51cto.com/5326353/1826480
原文地址:http://rogerwang.blog.51cto.com/5326353/1826480