top:动态观察程序的变化

?
[root@linux ~]#
top [-d] | top [-bnp]
参数:
-d
:后面可以接秒数,就是整个程序画面更新的秒数。预设是
5 秒;
-b
:以批次的方式执行 top ,还有更多的参数可以使用喔!
通常会搭配数据流重导向来将批次的结果输出成为档案。
-n
:与 -b 搭配,意义是,需要进行几次 top 的输出结果。
-p
:指定某些个
PID 来进行观察监测而已。

top 执行过程当中可以使用的按键指令:
?
:显示在 top 当中可以输入的按键指令;
P :以
CPU 的使用资源排序显示;
M :以
Memory 的使用资源排序显示;
N :以
PID 来排序喔!
T :由该
Process 使用的
CPU 时间累积
(
TIME+)
排序。
k
:给予某个
PID 一个讯号
(signal)
r
:给予某个
PID 重新制订一个
nice 值。

范例1:每两秒钟更新一次 top ,观察整体信息

?
[root@linux ~]#
top -d 2
top
-
18:30:36 up
30 days,
7 min,
1 user,
load average:
0.42,
0.48,
0.45
Tasks:
163 total,
1 running,
161 sleeping,
1 stopped,
0 zombie
Cpu(s):
4.7%
us,
4.0%
sy,
6.3%
ni,
82.5%
id,
0.4%
wa,
0.1%
hi,
2.0%
si
Mem:
1033592k total, 955252k used, 78340k free, 208648k buffers
Swap:
1052216k total, 728k used, 1051488k free, 360248k cached
<==如果加入
k 或 r 时,就会有相关的字样出现在这里喔!
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND
3981 apache
34 19 84012 11m
7352 S 17.3 1.2 0:00.09 httpd
1454 mysql
16 0 289m
40m
2228 S 3.8 4.0 115:01.32 mysqld
3985 dmtsai
15 0 2148 904 668 R 3.8 0.1 0:00.03 top
1 root
16 0 3552 552 472 S 0.0 0.1 0:08.90 init
2 root
RT 0 0 0 0 S 0.0 0.0 0:52.76 migration/0
3 root
34 19 0 0 0 S 0.0 0.0 0:03.01 ksoftirqd/0

范例2:将 top 的信息进行 2 次,然后将结果输出到 /tmp/top.txt

?
[root@linux ~]#
top -b -n 2 > /tmp/top.txt
#
这样一来,嘿嘿!就可以将 top 的信息存到 /tmp/top.txt 档案中了。

范例3:假设 10604 是一个已经存在的 PID ,仅观察该程序?

?
[root@linux ~]#
top -d 2 -p10604
top
-
13:53:00 up
51 days,
2:27,
1 user,
load average:
0.00,
0.00,
0.00
Tasks:
1 total,
0 running,
1 sleeping,
0 stopped,
0 zombie
Cpu(s):
0.0%
us,
0.0%
sy,
0.0%
ni,
100.0%
id,
0.0%
wa,
0.0%
hi,
0.0%
si
Mem:
385676k total, 371760k used, 13916k free, 131164k buffers
Swap:
1020116k total, 880k used, 1019236k free, 95772k cached
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND
10604 root
16 0 5396 1544 1244 S 0.0 0.4 0:00.07 bash

范例四:承上题,上面的 NI 值是 0 ,想要改成 10 的话?

?
#
在范例三的 top 画面当中直接按下 r 之后,会出现如下的图样!
top
-
13:53:00 up
51 days,
2:27,
1 user,
load average:
0.00,
0.00,
0.00
Tasks:
1 total,
0 running,
1 sleeping,
0 stopped,
0 zombie
Cpu(s):
0.0%
us,
0.0%
sy,
0.0%
ni,
100.0%
id,
0.0%
wa,
0.0%
hi,
0.0%
si
Mem:
385676k total, 371760k used, 13916k free, 131164k buffers
Swap:
1020116k total, 880k used, 1019236k free, 95772k cached
PID to
renice:
10604
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND
10604 root
16 0 5396 1544 1244 S 0.0 0.4 0:00.07 bash
#
之后,可以输入 nice 值了!
top
-
13:53:00 up
51 days,
2:27,
1 user,
load average:
0.00,
0.00,
0.00
Tasks:
1 total,
0 running,
1 sleeping,
0 stopped,
0 zombie
Cpu(s):
0.0%
us,
0.0%
sy,
0.0%
ni,
100.0%
id,
0.0%
wa,
0.0%
hi,
0.0%
si
Mem:
385676k total, 371760k used, 13916k free, 131164k buffers
Swap:
1020116k total, 880k used, 1019236k free, 95772k cached
Renice
PID 10604 to
value:
10
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+
COMMAND
10604 root
30 10 5396 1544 1244 S 0.0 0.4 0:00.07 bash
?
top
也是个挺不错的程序观察工具!但不同于 ps 是静态的结果输出, top 这个程序可以持续的监测 (monitor) 整个系统的程序工作状态,例如上面的范例一所示啊! 在预设的情况下,每次更新程序资源的时间为
5 秒,不过,可以使用
-d 来进行修改。 top 主要分为两个画面,上面的画面为整个系统的资源使用状态,基本上总共有六行, 显示的内容依序是:

第一行:显示系统已启动的时间、目前上线人数、系统整体的负载(load)。 比较需要注意的是系统的负载,三个数据分别代表
1,
5,
10 分钟的平均负载。
一般来说,这个负载值应该不太可能超过
1 才对,除非您的系统很忙碌。
如果持续高于
5 的话,那么.....仔细的看看到底是那个程序在影响整体系统吧!

第二行:显示的是目前的观察程序数量,比较需要注意的是最后的 zombie 那个数值,如果不是
0 ,嘿嘿!好好看看到底是那个
process 变成疆尸了吧?!

第三行:显示的是
CPU 的整体负载,每个项目可使用
? 查阅。需要观察的是 id (idle) 的数值,一般来说,他应该要接近
100%
才好,表示系统很少资源被使用啊! ^
_^。

第四行与第五行:表示目前的物理内存与虚拟内存 (Mem/Swap) 的使用情况。

第六行:这个是当在 top 程序当中输入指令时,显示状态的地方。 例如范例四就是一个简单的使用例子。
至于
top 底下的画面,则是每个 process 使用的资源情况。比较需要注意的是:

PID :每个
process 的
ID 啦!

USER:该
process 所属的使用者;

PR :Priority
的简写,程序的优先执行顺序,越小越早被执行;

NI :Nice
的简写,与 Priority 有关,也是越小越早被执行;

%
CPUCPU 的使用率;

%
MEM:内存的使用率;

TIME+:CPU 使用时间的累加;
一般来说,如果鸟哥想要找出最损耗
CPU 资源的那个程序时,大多使用的就是
top 这支程序啦!然后强制以
CPU 使用资源来排序
(在 top 当中按下
P 即可),
就可以很快的知道啦! ^
_^。多多爱用这个好用的东西喔!

top 查看资源使用的更多相关文章

  1. 使用top查看进程和系统负载信息

    引言      使用top命令,可以查看正在运行的进程和系统负载信息,包括cpu负载.内存使用.各个进程所占系统资源等,top可以以一定频率更新这些统计信息.下面我们来学习top命令的具体使用方法. ...

  2. Android Studio怎样查看资源或者函数在哪些类中被引用

    很多人在做完Keymap匹配到Eclispe快捷键后,发现查看资源或者函数在哪些地方被引用的快捷键"Ctrl+Shift+G"不灵 了.你选中某个函数后,使用这个快捷键.发现仅仅会 ...

  3. Eclipse 中 ctrl+鼠标左键 快捷查看资源失效

    Eclipse 中 ctrl+鼠标左键 快捷查看资源失效 看看eclipse 工作空间配置的jdk是什么版本,看看本地环境变量中的jdk是什么版本,将二者的版本统一即可. 笔者从git上clone一个 ...

  4. kubectl技巧之查看资源列表,资源版本和资源schema配置

    系列目录 在kubernetes里,pod,service,rs,rc,deploy,resource等对象都需要使用yaml文件来创建,很多时候我们都是参照照官方示例或者一些第三方示例来编写yaml ...

  5. 【linux】linux查看资源任务管理器,使用top命令 + 查看java进程下的线程数量【两种方式】

    ================================ 详解:https://blog.csdn.net/achenyuan/article/details/77867661 ======= ...

  6. linux查看资源占用情况

    在Linux中查看占用空间大文件 查看当前目录总共占的容量.而不单独列出各子项占用的容量$ du -sh查看当前目录下一级子文件和子目录占用的磁盘容量.$ du -lh --max-depth=1结果 ...

  7. top查看CPU情况

    Linux查看CPU情况 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要.在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况.运行 top ...

  8. linux top 查看CPU命令

    top 命令主要用于查看进程的相关信息,同时它也会提供查看系统平均负载,cpu 信息和内存信息 实时监控系统资源使用情况 [root@localhost ~]$ top // 动态查看进程使用资源的情 ...

  9. eclipse 在Navigator视图中查看资源

    随着不断使用Eclipse,Navigator视图中的实体数目会增加.通过在某一项目或文件夹上右击,并在所出现的快捷菜单中选择Go Into命令,你就可以查看该项目或文件夹中的资源了.此时Naviga ...

随机推荐

  1. CentOS7/RHEL7安装Redis步骤详解

    CentOS7/RHEL7安装Redis步骤详解 CentOS7/RHEL7安装Redis还是头一次测试安装了,因为centos7升级之后与centos6有比较大的区别了,下面我们就一起来看看Cent ...

  2. Android APP代码拨打电话、打开手机分享功能等隐式意图

    Android APP拨打电话: Intent intent=new Intent(Intent.ACTION_DIAL,Uri.parse("tel:"+110)); start ...

  3. 无向图的最短路径算法JAVA实现(转)

    一,问题描述 给出一个无向图,指定无向图中某个顶点作为源点.求出图中所有顶点到源点的最短路径. 无向图的最短路径其实是源点到该顶点的最少边的数目. 本文假设图的信息保存在文件中,通过读取文件来构造图. ...

  4. Linux Shell脚本编程--curl命令详解

    用途说明 curl命令是一个功能强大的网络工具,它能够通过http.ftp等方式下载文件,也能够上传文件.其实curl远不止前面所说的那些功能,大家可以通过man curl阅读手册页获取更多的信息.类 ...

  5. VS快捷键教程

    删除或剪切一行(Ctrl + X) 不须要选择不论什么文本, 用来剪切一行, 最经常使用来删除一行.  删除一行也能用 Shift+Delete 格式化整个文档(Ctrl + K, Ctrl + D) ...

  6. 实现ios常见菜单效果的思路

    眼下见过的实现边側菜单的效果.比較流行的有下面三种:(效果图) 1.菜单条覆盖在部分主视图上 附上实现该效果的一个不错的源代码地址: http://code4app.com/ios/RNFrosted ...

  7. Java程序猿学习当中各个阶段的建议

    回答阿里社招面试如何准备,顺便谈谈对于Java程序猿学习当中各个阶段的建议   引言 其实本来真的没打算写这篇文章,主要是LZ得记忆力不是很好,不像一些记忆力强的人,面试完以后,几乎能把自己和面试官的 ...

  8. Vagrant - 百度百科

    http://wapbaike.baidu.com/view/9201587.htm?ssid=0&from=844b&uid=3151E6C0905477A13653132D762B ...

  9. Codeforces Round #248 (Div. 1)——Ryouko&#39;s Memory Note

    题目连接 题意: 给n和m,一行m个1<=x<=n的数.记c=.如今仅仅能选择一个数x变成y,序列中全部等于x的值都变成y,求最小的c 分析: 对于一个数x,把与他相邻的所有的非x的数所有 ...

  10. 可删除超炫&amp;多种特效的Card视图(改造自cardsui-for-android开源项目),提供DEMO下载

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990).谢谢支持!        实例Demo下载地址在本文最后 简介 这个Demo主要是使用了cardsui ...