原文地址:http://www.cnblogs.com/txw1958/archive/2012/07/25/linux-top-command.html

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
top可以显示CPU占用率为前几位的进程,并提供CPU的实时活动情况
语法:top [-s time] [-d count] [-q] [-u] [-h] [-n number] [-f filename]
-s time 设置屏幕刷新的延时,单位为秒,默认值5秒
-d count 设置屏幕刷新的次数,刷新显示完count次后退出
-q 如果经过nice授权,使用-q可以使top运行的更快一些
-u 用显示User ID代替username,提高命令运行速度 -h 当系统由多个CPU时,个别CPU的状态信息被隐藏,只显示平均状态值
-n number 设置每一屏幕显示的进程数目,number值超过进程最大数目,则设置无效
-f filename 输出重定向到给定的文件名,默认为16个进程信息

top - :: up  :,   user,  load average: 0.07, 0.02, 0.00
Tasks: total, running, sleeping, stopped, 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: 514280k total, 313348k used, 200932k free, 20480k buffers
Swap: 2008116k total, 0k used, 2008116k free, 217160k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
root S 0.1 :00.57 init
root RT S 0.0 :00.00 migration/
root S 0.0 :00.00 ksoftirqd/
root RT S 0.0 :00.00 migration/
root S 0.0 :00.00 ksoftirqd/
root - S 0.0 :00.00 events/
root - S 0.0 :00.00 events/
root - S 0.0 :00.00 khelper
root - S 0.0 :00.00 kacpid

统计信息区(前五行)
第一行:任务队列信息,同 uptime 命令的执行结果。其内容如下:
09:20:44  当前时间
up 1:49  系统运行时间,格式为时:分
1 user     当前登录用户数
load average: 0.07, 0.02, 0.00 
      系统负载,即任务队列的平均长度。三个数值分别为 1分钟、5分钟、15分钟前到现在的平均值。

第二行:进程信息。当有多个CPU时,这些内容可能会超过两行。内容如下:
67 total  进程总数
1 running  正在运行的进程数
64 sleeping   睡眠的进程数
2 stopped  停止的进程数
0 zombie       僵尸进程数

第三行:CPU的信息。当有多个CPU时,可能不止一行。内容如下:
0.0% us    (user mode)用户占用CPU百分比
0.0% sy    (system mode)系统占用CPU百分比
0.0% ni    (low priority user mode (nice))低优先级用户占用CPU百分比
100.0%  id    (idle task)空闲任务占CPU百分比
0.0% wa   (I/O waiting)等待输入输出的CPU时间百分比
0.0% hi    (servicing IRQs)硬件中断占CPU百分比
0.0% si    (servicing soft IRQs)软件中断占CPU百分比

第四行:物理内存信息
最后两行为内存信息。内容如下:
514280k total   物理内存总量
313348k used   使用的物理内存总量
200932k free   空闲内存总量
20480k buffers   用作内核缓存的内存量

第五行:交换内存信息
2008116k total    交换区总量
0k used       使用的交换区总量
2008116k free   空闲交换区总量
217160k cached    缓冲的交换区总量

进程信息区
统计信息区域的下方显示了各个进程的详细信息。首先来认识一下各列的含义。
列名 含义
PID 进程id
PPID 父进程id
RUSER Real user name
UID 进程所有者的用户id
USER 进程所有者的用户名
GROUP 进程所有者的组名
TTY 启动进程的终端名。不是从终端启动的进程则显示为 ?
PR 优先级
NI nice值。负值表示高优先级,正值表示低优先级
P 最后使用的CPU,仅在多CPU环境下有意义
%CPU 上次更新到现在的CPU时间占用百分比
TIME 进程使用的CPU时间总计,单位秒
TIME+ 进程使用的CPU时间总计,单位1/100秒
%MEM 进程使用的物理内存百分比
VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
SWAP 进程使用的虚拟内存中,被换出的大小,单位kb。
RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
CODE 可执行代码占用的物理内存大小,单位kb
DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
SHR 共享内存大小,单位kb
nFLT 页面错误次数
nDRT 最后一次写入到现在,被修改过的页面数。
S 进程状态。
    D=不可中断的睡眠状态
    R=运行
    S=睡眠
    T=跟踪/停止
    Z=僵尸进程
COMMAND 命令名/命令行
WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
Flags 任务标志,参考 sched.h
默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。

Linux性能测试 top命令的更多相关文章

  1. linux中top命令详解

    linux的top命令里的cpu信息是什么意思呢? Cpu(s): 62.1% us, 15.9% sy,0.1% ni, 19.4% id,2.0% wa,0.1% hi,0.4% si Mem:  ...

  2. Linux下top命令详解

    Linux下top命令详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不断刷 ...

  3. linux中top命令的用法

    收集了两篇关于介绍Linux中监控命令top命令的详细使用方法的文章.总的来说,top命令主要用来查看Linux系统的各个进程和系统资源占用情况,在监控Linux系统性能方面top显得非常有用,下面就 ...

  4. [转帖]Linux性能测试 pmap命令

    Linux性能测试 pmap命令 https://www.cnblogs.com/txw1958/archive/2012/07/26/linux-pmap.html 名称:       pmap - ...

  5. linux下top命令详细介绍

    linux下top命令详细介绍 top 命令是 Linux 下常用的系统资源占用查看及性能分析工具,能够实时显示系统中各个进程的资源(比如cpu.内存的使用)占用状况,top命令的执行结果是一个动态显 ...

  6. Linux性能测试分析命令_sar+iostat+vmstat+top

    sar主要用于收集并统计系统资源的信息,包括CPU.IO.内存.网卡流量等. vmstat命令主要是对操作系统的虚拟内存.进程.IO读写.CPU活动等整体情况进行统计.但是它不能对某个进程进行深入分析 ...

  7. 性能测试 | Linux系统top命令中的io使用率,很多人都误解了它的具体含义

    body{ text-align:left; width:80%; margin:10px 100px; } 最近在做连续数据流的缓冲系统,C语言代码实现后,粗略测试了下,功能上应该没有问题.那么,接 ...

  8. Linux性能测试分析命令_top

    top命令动态展示系统整体资源和各个进程资源占用状况,是Linux下常用的性能分析工具. top命令语法 使用格式:top [-] [d] [b] [H] [p] [q] [c] [C] [S] [s ...

  9. linux的top命令参数详解

    简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...

随机推荐

  1. mysql触发器语法的一个实例

    我要实现的功能是:在更新一个表时.从三个表中查询记录并插入到另外一个表中.以下是我写触发器的过程: 第一次写的触发器例如以下: CREATE TRIGGER istmingxi  AFTER UPDA ...

  2. [Yarn] Use Yarn to Create an Alternative Import Name of an Installed Library

    In this lesson we'll show how to use yarn to alias the names of same npm libraries but install diffe ...

  3. 关于右移和除法的关系 , ADC采集电量 ,ADC采集MIC(麦克风)

    //////////////////////////////////////////////////////////////////////////////////////////////////// ...

  4. [Angular2] Map keyboards events to Function

    The idea is when we tape the arrow keys on the keyboard, we want the ball move accodingly. const lef ...

  5. 在线算法与离线算法(online or offline)

    1. 在线算法(online) PFC(prefix-free code)编码树的解码过程:可以在二进制编码串的接收过程中实时进行,而不必等到所有比特位都到达后才开始: 2. 离线算法(offline ...

  6. C#中使用split分割字符串的几种方法小结

    1.用字符串分隔: using System.Text.RegularExpressions;string str="aaajsbbbjsccc";string[] sArray= ...

  7. js进阶正则表达式8量词(+*?{}的意义用法)(量词的对象是前面一个字符)

    js进阶正则表达式8量词(+*?{}的意义用法)(量词的对象是前面一个字符) 一.总结 1.量词的对象是前面一个字符 量词 描述 n+ 匹配任何包含至少一个 n 的字符串. n* 匹配任何包含零个或多 ...

  8. 【hdu 2594】Simpsons’ Hidden Talents

    Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s) ...

  9. 怎么实现登录之后跳转到登录之前的页面?SpringMVC+Freemarker

    项目中,想实现一个功能. 直接访问某个需要登录的url,比如/addArticle,可能会跳转到登录页面login.html. 登录成功之后,自动跳转到/addArticle这个登录前的页面,继续登录 ...

  10. APPCAN学习笔记002---app高速开发AppCan.cn平台特色

    技术qq交流群:JavaDream:251572072 1.多窗体机制   常见应用仅仅支持单一窗体 2.原生UI与交互支持   大量原生UI与交互支持(如Action Sheet等) 3.第三方开放 ...