- 浏览: 637486 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
sztime:
可以在文本框上绑定事件来禁用回车键, 我就是这样做的.在IE中 ...
form 回车自动提交问题 -
damoqiongqiu:
非常好的文章,很透彻不过有一句话小僧腆着脸补充一下:“1111 ...
为什么要用补码来做存储 -
wuyizhong:
原来如此啊。
form 回车自动提交问题 -
luliangy:
谢楼主~!
用C语言扩展Python的功能 -
kwong:
很有用,谢谢
火狐和IE 对css 样式解释的差异
top
top命令是最流行的性能工具之一。大多数系统管理员运行top查看Linux和UNIX系统的运行情况。top实用工具提供一种监视进程和Linux整体性能的理想方法。将Linux进程称作任务更准确,但是在本章中我们还是将它们称作进程,因为这个工具也这样称呼它们。1普通用户和root用户都可以运行top。图3-1显示一个空闲系统的典型top输出。
图3-1 top输出
top显示有两个部分。大约前三分之一显示关于Linux的整体信息,其余行为各个进程信息。如果扩展窗口则显示更多进程而填充整个屏幕。
更全面的Linux信息可以通过使用top之外的几个命令来得到。不过,通过一个命令在一个屏幕上显示所有信息比较理想。第一行显示最近1分钟、5分钟和15分钟的负载平均值。负载平均值表示在CPU上运行或者等待运行多少进程。uptime命令也可以用来显示负载平均值。接下来是进程信息,之后是CPU、内存和交换区。内存和交换区信息与free命令输出类似。在我们确定内存和CPU使用之后的下一个问题是哪些进程正在使用它。
大部分进程信息也可以通过ps命令得到,但是top提供一种更易于阅读的格式。最有用的是用于提供帮助的h,它列出top的其他交互式命令。
3.1.1 添加和移除字段
字段可以从显示中添加或移除。进程输出可以按照CPU、内存或者其他指标排序。这是一个查看什么进程抢夺内存的理想方法。各个Linux发布版本的top语法和交互式选项不同,帮助命令可以快速列出什么命令可用。有许多交互式选项可用,用户应该花费一些时间来试验它们。
图3-2显示Red Hat Enterprise Linux ES release 3的帮助屏幕。
图3-2 top的帮助屏幕
f命令用来从top输出中添加或者移除字段。图3-3是一个Red Hat Enterprise Linux ES release 3的帮助屏幕,显示什么字段可以添加。
图3-3 top添加/移除字段的屏幕
图3-4显示一个SUSE Linux 9.0 top的帮助屏幕,可见它们提供的命令差别非常大。
图3-4 SUSE top的帮助屏幕
3.1.2 解释输出
让我们研究top信息的意义,以top的如下输出为例:
top输出的第一行显示负载平均值信息:
这个输出与uptime的输出类似。从中可看到Linux已经运行时间、当前时间和用户数量,以及1分钟、5分钟和15分钟负载平均值。接下来显示进程概要:
我们看到总共有73个进程,其中72个进程正在休眠,一个进程正在运行,没有僵化进程或者被停止的进程。当一个进程退出并且它的父进程没有通过wait(2)或者waitpid(2)函数等待它时,它就会成为僵化进程。这通常是由于父进程在它的子进程之前退出造成的。不同于进程表中的项,僵化进程不使用资源。停止的进程是已经向它发送STOP信号的进程。更多信息,请参见signal(7)手册页。
接下来是CPU信息:
CPU行描述CPU如何使用它们的CPU周期。top命令报告CPU在用户或者内核模式、运行良好进程以及处在空闲状态时所花费时间的百分比。iowait列显示没有进程在CPU上运行时,处理器等待I/O完成的时间的百分比。irq和softirq列表示处理硬件和软件中断所花费的时间。早于2.6版本的Linux内核不报告irq、softirq和iowait。
接下来是内存信息:
前三个指标提供内存使用的概要,列出了总的可用内存、已使用内存和自由内存,它们都是确定对于Linux内存是否足够所需信息。
接下来五个指标标识已使用的内存如何分配。shrd字段显示共享的内存使用,buff是缓冲使用的内存。分配给内核或者用户进程的内存可以处在三种不同状态:活动(active)、不活动脏(inactive dirty)和不活动干净(inactive clean)。活动在top中用aotv表示,表示该内存最近被使用。不活动脏在top中用in_d表示,表示该内存最近没有使用,可以回收。要回收内存,必须将它的内容写到磁盘,这个进程命名为“清洗”,也可称作内存的第四种临时状态。一旦被清洗,不活动脏内存成为不活动干净内存,在top中用in_c表示。由Norm Murray和Neil Horman合著的Understanding Virtual Memory in Red Hat Enterprise Linux 3是一本优秀的参考书,网址为http:people.redhat.com/nhorman/papers/ rhel3_vm.pdf。
接下来是交换区信息:
av字段是可用的交换区总量,之后是已用数量和自由数量,最后是内核用于缓存的内存数量。
top显示的其余部分是进程信息:
top显示尽可能多的能适合屏幕的进程。top(1)手册页中提供了字段说明的描述。表3-1提供了这些字段的概要。
表3-1 top进程字段
字 段 |
说 明 |
PID |
进程id编号 |
USER |
进程所有者的用户名 |
PRI |
进程的优先级 |
SIZE |
进程大小,包括它的代码、栈和数据区域,以千字节为单位 |
RSS |
进程使用的内存总量,以千字节为单位 |
SHARE |
进程使用的共享内存数量 |
STAT |
进程的状态,通常R表示运行,S表示休眠 |
%CPU |
自从最近的屏幕更新以来,这个进程使用的CPU百分比 |
%MEM |
这个进程使用的内存百分比 |
TIME |
自从进程启动以来,这个进程使用的CPU时间量 |
CPU |
最近执行进程的CPU |
COMMAND |
正在执行的命令 |
3.1.3 保存自定义
一个非常好的top功能是保存当前配置。可以使用交互式命令s任意更改显示,然后按w保存该视图。
top在用户的主目录中写入一个.toprc文件,用来保存配置,以便下一次这个用户启动top时使用相同的显示选项。
top也寻找默认配置文件/etc/toprc。这是一个全局配置文件,当任何用户运行实用工具时,top将读取该文件。这个文件可以使top以安全模式运行,也可以设置刷新延迟。安全模式阻止非root用户注销或者更改进程的正常值,也阻止非root用户更改top的刷新值。Red Hat Enterprise Linux ES release 3的一个/etc/toprc示例文件如下所示:
s表示安全模式,3定义三秒钟刷新间隔。其他发布版本可能有不同的/etc/toprc格式。注销进程是一个非常实用的功能。如果用户有一个失控的进程,通过top命令可以轻易找到并注销它,具体步骤为:运行top,通过u命令显示用户的所有进程,然后使用k注销它。top不只是一个优秀的性能监视工具,它也可以用来通过注销那些产生问题的进程从而改进性能。
3.1.4 批处理模式
top也可以以批处理模式运行。尝试运行以下命令:
-n 1告诉top只显示一次迭代,-b选项表示以适合写入文件的文本形式输出或者定向到另一个程序(例如less)。类似以下两行脚本的命令可以顺利完成cron工作:
可以将它添加到crontab,并每隔15分钟收集一次输出。
通过批处理可以轻松完成所有任务,无需用户的干涉。所有进程都被列出,输出并不是每5秒钟刷新一次。如果用户的主目录中存在一个.toprc配置文件,那么它用来格式化显示。以下是在一个多CPU Linux服务器上运行top批处理模式的输出。注意,其中没有显示top输出的所有258个进程。
现在读者可能明白了为什么top会如此流行。top的交互式本质和容易自定义输出的能力使它成为诊断问题的优秀工具。
发表评论
-
信号表
2010-09-02 00:59 525SIGHUP 终止进程 终端线路挂断 SI ... -
Mogile安装实践
2008-09-01 22:05 2045Mogile安装实践 Filed under: Mog ... -
ld.so.conf 文档和PKG_CONFIG_PATH变量
2008-08-30 02:37 2258一、编译和连接 ... -
gcc 安装
2008-08-25 02:26 3457关于GCC的升级,一定要用rpm包吗? 參考:::2004年 ... -
g++下 hash_map
2008-08-25 01:33 3323一个hash_map使用错误 g++ ... -
stdport 安装
2008-08-25 01:27 929stlport安装使用手记 段 ... -
linux下rpc应用 例程详解
2008-07-17 15:51 3037关于“RPC语言” RPC语言也是一种专门的编程语言,当然这 ... -
Linux下编写动态链接库的简单过程
2008-07-10 01:12 3030(1) 使用编译选项 -fPIC ,产生与位置无关 ... -
Linux内核中的进程组及会话
2008-04-26 15:22 6045将阐述Linux内核中的如下几个概念 1) 进程组 2) 会话 ... -
rsync中文手册
2007-08-31 00:55 886用rsync实现网站镜像和 ... -
管理幽默:三个囚犯的选择
2007-10-13 20:13 671有一个美国人、一个法国人和一个犹太人要被关进监狱3年。监狱长让 ... -
linux下批量替换一个目录下的文件某个字符串
2007-12-28 01:19 1042太酷了!! sed -i "s/oldstring/ ... -
linux下编程学习--- 静态库和动态库的编译
2008-02-03 16:28 2181学习linux下c很长一段对动态库和静态库的编译和使用总是 ... -
linux下编程学习----- 线程同步之无名信号量
2008-02-04 14:49 2118这是一个书上的例子,逻辑是:一个线程生产一组数字1、2、3. ... -
linux下编程学习----- 远程过程调用(rpc)
2008-02-19 18:14 6520一、概述 在传统的编程概念中,过程是由程序员在本地 ... -
linux学习之-- 性能分析
2008-02-22 18:57 1147http://hi.baidu.com/chegaoying/ ... -
linux性能分析 -- sar
2008-02-22 19:37 14333sarsar是一个优秀的一般性能监视工具,它可以输出Linux ... -
linux性能分析 -- vmstat
2008-02-22 19:38 3430vmstatvmstat命令也是显示Linux性能指标的方法, ... -
linux性能分析 -- iostat
2008-02-22 19:39 3703iostatiostat命令是另一个 ... -
linux性能分析 -- free
2008-02-22 19:40 824free free命令输出内存和交换信息,与top命令的作用非 ...
相关推荐
nmon 是IBM提供的运行于AIX/Linux平台的性能分析工具,可以在同一屏幕中输出CPU、内存、进程、网络、磁盘等各种性能数据。 支持pSeries® p5、x86、x86_64架构机型,能够运行在AIX和多种Linux发行版,二进制发布,...
本资源通过描述命令作用,并结合实例,讲解Linux下常见的几种性能分析工具,包括vmstat、sar、iostat、free、uptime、netstat和top
获取当前jvm占用CPU的线程, 分析性能问题利器。
分析系统瓶颈:top. 进入交互模式后: - 输入M,进程列表按内存使用大小降序排序,便于我们观察最大内存使用者使用有问题(检测内存泄漏问题); - 输入P,进程列表按CPU使用大小降序排序,便于我们观察最耗CPU资源的...
文档描述了利用火焰图和perf工具对linux程序进行性能分析,打印所有函数执行的消耗时间并进行可视化,胜过用linux的top等命令进行分析
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在...
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在...
性能优化 性能优化的核心是找出系统的瓶颈点,问题找到了,优化的工作也就完成了大半; 这里介绍的性能优化主要从两个层面来介绍:系统层面和程序层面。...分析内存瓶颈 查看内存是否存在瓶颈,使用top指令
10.3 影响Linux性能的各种因素 10.3.1 系统硬件资源 10.3.2 操作系统相关资源 10.3.3 应用程序软件资源 10.4 系统性能分析标准和优化原则 10.5 几种典型应用对系统资源使用的特点 10.5.1 以静态内容为...
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器;不过这里我们主要是介绍一下 linux 系统如何查看CPU信息、机器型号、内存信息等。 系统 # uname -a #...
显示过程信息:过程树,TCP IP连接和过程的图形性能数字。 旨在模仿sysinternals的Windows procexp,并旨在比top和ps更有用,尤其是对于高级用户而言。 该工具的受众:*高级系统管理员试图在过程级别分析生产服务器...
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,常用于服务端性能分析。 在top命令中按f按可以查看显示的列信息,按对应字母来开启/关闭列,大写字母表示开启,小写字母表示关闭。...
适用于Windows 5,Linux和MacOS的PowerShell 5和PowerShell 7的脚本,脚本块和模块性能分析器。 快速入门从PowerShell画廊安装模块:Install-Module Profiler $ trace = Trace-Script -ScriptBlock {&“ demo-...
Guider是一个集成的性能分析器。 它提供了测量,分析,测试和验证系统性能所需的大多数功能。 即使到现在,它的功能和可用性也在不断扩展。 Guider的功能如下。 监控方式 剖析 可视化 控制 记录中 测试 实用程序 ...
- this includes the nmon for Linux too: Goto http://www.ibm.com/servers/eserver/pseries/community/ then select AIX Wiki then select Other Performance Tools then select nmon or go there directly via...
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统...
还在为日日运维伤神吗?还在为只会top命令却分析不出系统出问题的真正原因而发愁吗?nmon———IBM的强大性能监控分析工具。你,值得拥有!
14.5 优化Samba性能 250 14.6 测试配置 251 14.7 运行Samba服务器 252 14.8 共享访问 252 14.8.1 在Linux客户上使用smbclient 252 14.8.2 在Linux客户上加载共享 253 14.8.3 在Windows客户上加载共享 253 14.9 公用...
top命令是Linux下常用的性能分析工具,比如cpu、内存的使用,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来...