资料介绍
虽然说Linux操作系统要比Windows操作系统稳定的多。但是这个稳定是相对而言的。也就是说,Linux操作系统也会有闹脾气的时候。在某些情况下,其系统的资源使用率(包括CPU或者内存),也会达到90%以上甚至更多。为此系统管理员在必要的时候,仍然需要监视系统资源的使用情况。笔者今天就给大家介绍一下,在Linux操作系统下如何监视这个系统资源,做到心中有数。
一、如何监视系统资源?
在Windows操作系统中,可以通过任务管理器来查询各个进程所占用的CPU与内存的比率。在Linux操作系统中没有这种图形化的管理。在命令行模式下,键入top命令,即可以看到各个进程所占用的系统资源。
作为一个合格的系统管理员,出于系统性能优化或者其他方面的考虑,往往需要掌握系统中最消耗CPU或者内存资源的程序。为了达到这个目的,系统管理员就需要借助系统提供的top命令。这个命令可以帮助管理员监控系统资源的使用情况,包括内存、CPU、交换文件分区的使用率等等。如上图所示,就是这个命令的执行结果。系统管理员想要提升操作系统的性能,第一步就是需要读懂上面这张表格。如果这种图中的内容系统管理员无法看懂,那么他就想提升系统的性能根本无法入手。
Top命令的运行结果大致可以分为两个部分。上半部是使一些统计的信息,包括内存和交换分区的使用情况、CPU的运行情况、进程的总数等等。在这些统计信息中,系统管理员除了要关注这些重要资源的使用滤外,还需要注意进程运行的状态。如上图所示,可见在Linux系统中进程的状态主要有四种,分别为running、sleeping、stopped和zombie。如果从系统维护与性能优化考虑,则系统管理员需要关注那些状态为zombie的进程。若进程处于这个状态,在Linux操作系统中叫做僵尸进程。什么叫做僵尸进程呢?就是那些父进程还没死、但是子进程却死了的进程。在Linux操作系统中,进程一般分为父进程和子进程。某个进程A可能会调用另外一个进程B。此时这个进程A就叫做父进程,而进程B就叫做子进程。由于一些意外的情况,子进程运行已经停止,但是父进程却还不知道子进程早已停止运行,还在那边傻傻的等待着子进程返回运行结果。由于子进程没有返回结果,则父进程可能一直会在那边等待。从而导致系统性能的下降。如果系统管理员发现有僵尸进程的话,首先要做的就是结束父进程(有时候还需要查看这个父进程打开的其他子进程运行情况),以释放其占用的系统资源。其次如果这种情况发生的比较频繁时,则系统管理员就需要分析到底是什么原因导致这种情况发生的。找到原因后要采取积极的措施。通常情况下,如果子进程的状态为“僵尸”时,父进程就不会自动结束,从而其占用的系统资源就不会自动释放,从而降低操作系统的性能。
二、Top命令的使用技巧。
1、 选择合适的排序顺序
在Windows操作系统的任务管理器中,管理员可以根据需要选择合适的排序顺序,如按CPU排序或者按内存的使用率进行排序。而在top命令的显示结果中,默认情况下是按照CPU的使用率来进行排序的。如果现在系统管理员想按照内存使用率来排序,该如何处理呢?如果要想改变top命令结果的排序顺序,则可以按m键来按内存进行排序。注意这里的m是小写,而不是大写的。在Linux操作系统中大部分命令与参数大小写都是敏感的。这跟微软操作系统中的DOS命令不同。Dos命令是不区分大小写的。虽然这个排序没有像微软操作系统中的任务管理器那么方便,只需要点点鼠标就可以完成排序。但是只要熟悉相关的命令,在命令行中对其排序没有大家想想的那么困难。
2、 监视特定用户使用的资源情况。
在Windows操作系统中,如果想要查看特定帐户所打开的进程以及所耗用的系统资源,操作非常简单。只需要打开系统任务管理器,然后按照用户来进行排序。就可以知道某个用户开启了哪些进程以及所占用的比例。而在top命令中,没有按帐户进行排序的功能。即在上面这个显示结果中,只可以按照内存使用率或者CPU负载来进行排序,而无法按照用户来进行排序。如上图所示,在同一个结果中夹杂着系统特权用户root与普通用户所打开的进程。这对于系统管理员查找问题原因非常的不方便。有时候系统管理员往往需要只查看特定用户的进程,如只需要查看oracle帐户所打开的进程以及所占用的系统资源。而忽略掉系统帐户。因为特权帐户其他用户无权进行登陆操作,而其运行的往往是一些系统级别的进程,为此一般不会出现问题。而普通用户可以运行一些应用程序。有时候他们糊里糊涂可能会打开一些非法程序,占用大量的系统资源,从而降低系统性能。废话少说,如何才能够查看特定帐户所启动的进程呢?其实很简单。现运行top命令,让系统统计所有帐户的进程。然后在需要查看特定帐户的进程使,只需要按u键(注意小写),然后输入用户名即可。此时系统会自动把其他帐户的进程过滤掉,方便系统管理员查看。按用户过滤后,仍然可以按m键来对现实的结果进行过滤。如果在一开始就需要查看某个特定用户的进程,那么只需要直接在top命令后面加入-u可选项然后带上具体的用户名即可。但是,此时如果再想查看全部用户的话,那么只有先推出top命令,然后再利用top命令不带任何选项,来查看所有用户的进程。或者说,再在这个窗口中输入字符u,然后直接按回车键,也可以显示所用用户的进程信息。
3、动态统计信息。
使用top命令来统计进程的运行信息,跟微软操作系统的任务管理器一样,都是动态调整的。也就是说,系统会每隔一段时间去统计这个信息,然后动态的显示在窗口中。不需要用户手工去更新相关的信息。而且从上面的图形中可以看出,top命令统计的信息要比微软任务管理器统计的信息要多的多。所以对系统管理员来说,具有更大的参考价值。笔者以前也很喜欢采用微软操作系统的任务管理器。而了解了top命令后,就对其钟爱有加了。因为其不仅可以完成任务管理器中的所有功能。而且top命令中有的信息在微软任务管理器中却无法显示。而这些信息往往对我们维护系统、提升性能具有很大的参考价值。
4、删除有异常的进程。
如果这个窗口中,发现某些进程有异常或者用户执行了规定以外的应用程序,如占用了太多的系统资源或者有僵尸进程的存在,则可以直接在这个窗口中讲其删除。操作的方法很简单,只需要在这个窗口内输入字符p,然后系统会提示系统管理员输入要关闭进程的PID。管理员只需要键入这个值,然后按回车键就可以杀掉不需要的进程。不过在关闭进程的时候,有权限的限制。系统特权帐户root可以关闭所有用户的进程。而普通帐户则只能够删除自己打开的程序,而无法关闭其他用户的进程。如现在系统管理员先以oracle用户登录,发现root帐户下某个进程异常,想要关闭时,系统会提示无法关闭的错误信息。此时管理员必须先终止这个top进程,然后利用su命令更改登陆的帐户。然后再关闭这个异常的进程。系统管理员可以同时关闭多个进程。方法很简单,就是同时输入多个需要关闭的进程号。在各个进程号之间需要利用逗号隔开。
top在系统维护中是一个很有用的命令。除了可以实现如上的功能外,还可以设置其动态更新的时间间隔等等。不过需要注意的是,在不同版本的Linux系统中其功能稍有差异,而且其显示的布局与内容也有所不同。为此当系统管理员维护其不怎么熟悉的版本时,有时候需要查看系统的帮助说明。此时只需要在top命令后面加上?号就可以获得相关的帮助。这个联机帮助文档根top命令一样,都是系统管理员的好帮手。不过可惜的是,现在这些在线帮助文档都是英文的。所以这对系统管理员的英文说明要求比较高。
一、如何监视系统资源?
在Windows操作系统中,可以通过任务管理器来查询各个进程所占用的CPU与内存的比率。在Linux操作系统中没有这种图形化的管理。在命令行模式下,键入top命令,即可以看到各个进程所占用的系统资源。
作为一个合格的系统管理员,出于系统性能优化或者其他方面的考虑,往往需要掌握系统中最消耗CPU或者内存资源的程序。为了达到这个目的,系统管理员就需要借助系统提供的top命令。这个命令可以帮助管理员监控系统资源的使用情况,包括内存、CPU、交换文件分区的使用率等等。如上图所示,就是这个命令的执行结果。系统管理员想要提升操作系统的性能,第一步就是需要读懂上面这张表格。如果这种图中的内容系统管理员无法看懂,那么他就想提升系统的性能根本无法入手。
Top命令的运行结果大致可以分为两个部分。上半部是使一些统计的信息,包括内存和交换分区的使用情况、CPU的运行情况、进程的总数等等。在这些统计信息中,系统管理员除了要关注这些重要资源的使用滤外,还需要注意进程运行的状态。如上图所示,可见在Linux系统中进程的状态主要有四种,分别为running、sleeping、stopped和zombie。如果从系统维护与性能优化考虑,则系统管理员需要关注那些状态为zombie的进程。若进程处于这个状态,在Linux操作系统中叫做僵尸进程。什么叫做僵尸进程呢?就是那些父进程还没死、但是子进程却死了的进程。在Linux操作系统中,进程一般分为父进程和子进程。某个进程A可能会调用另外一个进程B。此时这个进程A就叫做父进程,而进程B就叫做子进程。由于一些意外的情况,子进程运行已经停止,但是父进程却还不知道子进程早已停止运行,还在那边傻傻的等待着子进程返回运行结果。由于子进程没有返回结果,则父进程可能一直会在那边等待。从而导致系统性能的下降。如果系统管理员发现有僵尸进程的话,首先要做的就是结束父进程(有时候还需要查看这个父进程打开的其他子进程运行情况),以释放其占用的系统资源。其次如果这种情况发生的比较频繁时,则系统管理员就需要分析到底是什么原因导致这种情况发生的。找到原因后要采取积极的措施。通常情况下,如果子进程的状态为“僵尸”时,父进程就不会自动结束,从而其占用的系统资源就不会自动释放,从而降低操作系统的性能。
二、Top命令的使用技巧。
1、 选择合适的排序顺序
在Windows操作系统的任务管理器中,管理员可以根据需要选择合适的排序顺序,如按CPU排序或者按内存的使用率进行排序。而在top命令的显示结果中,默认情况下是按照CPU的使用率来进行排序的。如果现在系统管理员想按照内存使用率来排序,该如何处理呢?如果要想改变top命令结果的排序顺序,则可以按m键来按内存进行排序。注意这里的m是小写,而不是大写的。在Linux操作系统中大部分命令与参数大小写都是敏感的。这跟微软操作系统中的DOS命令不同。Dos命令是不区分大小写的。虽然这个排序没有像微软操作系统中的任务管理器那么方便,只需要点点鼠标就可以完成排序。但是只要熟悉相关的命令,在命令行中对其排序没有大家想想的那么困难。
2、 监视特定用户使用的资源情况。
在Windows操作系统中,如果想要查看特定帐户所打开的进程以及所耗用的系统资源,操作非常简单。只需要打开系统任务管理器,然后按照用户来进行排序。就可以知道某个用户开启了哪些进程以及所占用的比例。而在top命令中,没有按帐户进行排序的功能。即在上面这个显示结果中,只可以按照内存使用率或者CPU负载来进行排序,而无法按照用户来进行排序。如上图所示,在同一个结果中夹杂着系统特权用户root与普通用户所打开的进程。这对于系统管理员查找问题原因非常的不方便。有时候系统管理员往往需要只查看特定用户的进程,如只需要查看oracle帐户所打开的进程以及所占用的系统资源。而忽略掉系统帐户。因为特权帐户其他用户无权进行登陆操作,而其运行的往往是一些系统级别的进程,为此一般不会出现问题。而普通用户可以运行一些应用程序。有时候他们糊里糊涂可能会打开一些非法程序,占用大量的系统资源,从而降低系统性能。废话少说,如何才能够查看特定帐户所启动的进程呢?其实很简单。现运行top命令,让系统统计所有帐户的进程。然后在需要查看特定帐户的进程使,只需要按u键(注意小写),然后输入用户名即可。此时系统会自动把其他帐户的进程过滤掉,方便系统管理员查看。按用户过滤后,仍然可以按m键来对现实的结果进行过滤。如果在一开始就需要查看某个特定用户的进程,那么只需要直接在top命令后面加入-u可选项然后带上具体的用户名即可。但是,此时如果再想查看全部用户的话,那么只有先推出top命令,然后再利用top命令不带任何选项,来查看所有用户的进程。或者说,再在这个窗口中输入字符u,然后直接按回车键,也可以显示所用用户的进程信息。
3、动态统计信息。
使用top命令来统计进程的运行信息,跟微软操作系统的任务管理器一样,都是动态调整的。也就是说,系统会每隔一段时间去统计这个信息,然后动态的显示在窗口中。不需要用户手工去更新相关的信息。而且从上面的图形中可以看出,top命令统计的信息要比微软任务管理器统计的信息要多的多。所以对系统管理员来说,具有更大的参考价值。笔者以前也很喜欢采用微软操作系统的任务管理器。而了解了top命令后,就对其钟爱有加了。因为其不仅可以完成任务管理器中的所有功能。而且top命令中有的信息在微软任务管理器中却无法显示。而这些信息往往对我们维护系统、提升性能具有很大的参考价值。
4、删除有异常的进程。
如果这个窗口中,发现某些进程有异常或者用户执行了规定以外的应用程序,如占用了太多的系统资源或者有僵尸进程的存在,则可以直接在这个窗口中讲其删除。操作的方法很简单,只需要在这个窗口内输入字符p,然后系统会提示系统管理员输入要关闭进程的PID。管理员只需要键入这个值,然后按回车键就可以杀掉不需要的进程。不过在关闭进程的时候,有权限的限制。系统特权帐户root可以关闭所有用户的进程。而普通帐户则只能够删除自己打开的程序,而无法关闭其他用户的进程。如现在系统管理员先以oracle用户登录,发现root帐户下某个进程异常,想要关闭时,系统会提示无法关闭的错误信息。此时管理员必须先终止这个top进程,然后利用su命令更改登陆的帐户。然后再关闭这个异常的进程。系统管理员可以同时关闭多个进程。方法很简单,就是同时输入多个需要关闭的进程号。在各个进程号之间需要利用逗号隔开。
top在系统维护中是一个很有用的命令。除了可以实现如上的功能外,还可以设置其动态更新的时间间隔等等。不过需要注意的是,在不同版本的Linux系统中其功能稍有差异,而且其显示的布局与内容也有所不同。为此当系统管理员维护其不怎么熟悉的版本时,有时候需要查看系统的帮助说明。此时只需要在top命令后面加上?号就可以获得相关的帮助。这个联机帮助文档根top命令一样,都是系统管理员的好帮手。不过可惜的是,现在这些在线帮助文档都是英文的。所以这对系统管理员的英文说明要求比较高。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- LPC86x上的开关矩阵使用情况
- LPC86x ACMP使用情况
- LPC86x ADC使用情况
- 浅谈如何评估TI C2000系列微控制器程序的堆栈使用情况
- 如何在Linux上监视和优化电源使用
- Windows查看电源使用情况
- STM32/KEIL/MDK 查看 FLASH 和 RAM 使用情况
- 【KEIL·单片机·扫盲贴】关于ARM单片机程序内存使用情况的细致讨论。
- Vivado:查看各模块资源占用情况方法
- 单片机整体的CPU使用情况详细介绍
- 医院云计算系统资源调度方案 12次下载
- 基于时间序列的电力信息系统资源调配研究 0次下载
- 主流GPS芯片使用情况 13次下载
- 下一代工业无线局域网使用情况分析 0次下载
- 大化肥用离心压缩机组的使用情况分析及其近期发展趋势
- 如何使用SystemView的堆监控功能 536次阅读
- 显示Web服务器中的内存使用情况 556次阅读
- 如何在Linux中使用watch命令呢? 674次阅读
- DFX设计如何分析 517次阅读
- Linux系统解决磁盘空间不足的问题 759次阅读
- 考虑x和z在verilog条件语句中的使用情况 1338次阅读
- vcs和xrun搭配uvm1.1/uvm1.2版本库的使用情况 3167次阅读
- 基于终端的系统监视工具介绍 915次阅读
- 浅谈Linux kernel中的同步机制 745次阅读
- 如何检查Linux中的RAM使用情况 2229次阅读
- 资源监控工具如何退出Bpytop程序 962次阅读
- 如何查看程序栈的使用情况 2618次阅读
- 监控网络使用情况的Linux命令行工具 4598次阅读
- Linux文件缓存使用情况和命中率查看的工具详细概述 8832次阅读
- Python脚本使用时CPU使用情况检测过程详解 7540次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 6基于FPGA的C8051F单片机开发板设计
- 0.70 MB | 2次下载 | 免费
- 751单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21548次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183278次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多