文章目录

  • 字段的含义:
    • VIRT:virtual memory usage 虚拟内存
    • RES:resident memory usage 常驻内存
    • SHR:shared memory 共享内存
    • DATA(Data+Stack)数据占用的内存
  • 内部命令如下:

首先介绍top中一些字段的含义:

字段的含义:

VIRT:virtual memory usage 虚拟内存

1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等
2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量

RES:resident memory usage 常驻内存

resident - adj. 居住的;定居的 / n. 居民;

1、进程当前使用的内存大小,但不包括swap out
2、包含其他进程的共享
3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反
4、关于库占用内存的情况,它只统计加载的库文件所占内存大小

SHR:shared memory 共享内存

1、除了自身进程的共享内存,也包括其他进程的共享内存
2、虽然进程只使用了几个共享库的函数,但它包含了整个共享库的大小
3、计算某个进程所占的物理内存大小公式:RES – SHR
4、swap out后,它将会降下来

DATA(Data+Stack)数据占用的内存

1、数据占用的内存。如果top没有显示,按f键可以显示出来。
2、真正的该程序要求的数据空间,是真正在运行中要使用的。

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。

内部命令如下:

  • s – 改变画面更新频率
  • l – 关闭或开启第一部分第一行 top信息的表示
  • t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
  • m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
  • N – 以 PID 的大小的顺序排列表示进程列表
  • P – 以 CPU 占用率大小的顺序排列进程列表
  • M – 以 内存占用率 大小的顺序排列进程列表
  • h – 显示帮助\color{#f0f}{帮助}帮助
  • n – 设置在进程列表所显示进程的数量
  • q – 退出top\color{#f0f}{退出 top}退出top
  • s – 改变画面更新周期 ( 和s的区别? )

序号 | 列名 | 含义
a PID 进程id
b PPID 父进程id
c RUSER Real user name
d UID 进程所有者的用户id
e USER 进程所有者的用户名
f GROUP 进程所有者的组名
g TTY 启动进程的终端名。不是从终端启动的进程则显示为 ?
h PR 优先级
i NI nice值。负值表示高优先级,正值表示低优先级
j P 最后使用的CPU,仅在多CPU环境下有意义
k %CPU 上次更新到现在的CPU时间占用百分比
l TIME 进程使用的CPU时间总计,单位秒
m TIME+ 进程使用的CPU时间总计,单位1/100秒
n %MEM 进程使用的物理内存百分比
o VIRT 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
p SWAP 进程使用的虚拟内存中,被换出的大小,单位kb。
q RES 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
r CODE 可执行代码占用的物理内存大小,单位kb
s DATA 可执行代码以外的部分(数据段+栈)占用的物理内存大小,单位kb
t SHR 共享内存大小,单位kb
u nFLT 页面错误次数
v nDRT 最后一次写入到现在,被修改过的页面数。
w S 进程状态。(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
x COMMAND 命令名/命令行
y WCHAN 若该进程在睡眠,则显示睡眠中的系统函数名
z Flags 任务标志,参考 sched.h

默认情况下仅显示比较重要的 PID、USER、PR、NI、VIRT、RES、SHR、S、%CPU、%MEM、TIME+、COMMAND 列。可以通过下面的快捷键来更改显示内容。

通过 f 键可以选择显示的内容。按 f 键之后会显示列的列表,按 a-z 即可显示或隐藏对应的列,最后按回车键确定。
按 o 键可以改变列的显示顺序。按小写的 a-z 可以将相应的列向右移动,而大写的 A-Z 可以将相应的列向左移动。最后按回车键确定。
按大写的 F 或 O 键,然后按 a-z 可以将进程按照相应的列进行排序。而大写的 R 键可以将当前的排序倒转。

top使用方法:

使用格式:

top [-] [d] [p] [q] [c] [C] [S] [s] [n]

参数说明:

d:指定每两次屏幕信息刷新之间的时间间隔。当然用户可以使用s交互命令来改变之。

p:通过指定监控进程ID来仅仅监控某个进程的状态。

q:该选项将使top没有任何延迟的进行刷新。如果调用程序有超级用户权限,那么top将以尽可能高的优先级运行。

S:指定累计模式。

s:使top命令在安全模式中运行。这将去除交互命令所带来的潜在危险。

i:使top不显示任何闲置或者僵死进程。

c:显示整个命令行而不只是显示命令名。

常用命令说明:

Ctrl+L:擦除并且重写屏幕

K:终止一个进程。系统将提示用户输入需要终止的进程PID,以及需要发送给该进程什么样的信号。一般的终止进程可以使用15信号;如果不能正常结束那就使用信号9强制结束该进程。默认值是信号15。在安全模式中此命令被屏蔽。

i:忽略闲置和僵死进程。这是一个开关式命令。

q:退出程序

r:重新安排一个进程的优先级别。系统提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入一个正值将使优先级降低,反之则可以使该进程拥有更高的优先权。默认值是10。

S:切换到累计模式。

s:改变两次刷新之间的延迟时间。系统将提示用户输入新的时间,单位为s。如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s。需要注意的是如果设置太小的时间,很可能会引起不断刷新,从而根本来不及看清显示的情况,而且系统负载也会大大增加。

f或者F:从当前显示中添加或者删除项目。

o或者O:改变显示项目的顺序

l:切换显示平均负载和启动时间信息。

m:切换显示内存信息。

t:切换显示进程和CPU状态信息。

c:切换显示命令名称和完整命令行。

M:根据驻留内存大小进行排序。

P:根据CPU使用百分比大小进行排序。

T:根据时间/累计时间进行排序。

W:将当前设置写入~/.toprc文件中。

查看多核CPU命令
mpstat -P ALL 和 sar -P ALL

说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txt

top命令经常用来监控Linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。

本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。

输入top命令

Centos - top 命令详解相关推荐

  1. Linux下top命令详解

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

  2. Linux(Ubuntu)内存查询top命令详解

    linux中的top命令详解 引言 top命令是UNIX/Linux系统中,用于查看系统详情的第一入口,一般我们查看机器运行状态的时候,总是第一个使用top命令,而实际上top命令展示的数据很多,对于 ...

  3. linux 之top命令详解

    http://bbs.54master.com/redirect.php?tid=272658&goto=lastpost 发表于 2008-9-21 16:31 linux 之top命令详解 ...

  4. linux中top指令,Linux下top命令详解

    原标题:Linux下top命令详解 1.简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top显示系统当前的进程和其他状况 ...

  5. linux top命令看磁盘,linux top命令详解

    linux top命令详解 下面详细介绍它的使用方法. top - 01:06:48 up 1:22, 1 user, load average: 0.06, 0.60, 0.48 Tasks: 29 ...

  6. linux之top命令详解

    linux之top命令详解 2018年8月15日 0:58 top:动态查看进程变化,监控linux的系统状况. top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况, ...

  7. linux top命令详解(看这一篇就够了)

    linux top命令详解(看这一篇就够了) top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况. 常用参数 top的使用方式 top [-d ...

  8. Linux系统中top命令详解

    在Linux系统中top命令是常用的分析性能的工具,能够实时监控系统中各个进程资源占用的情况,这和windows中任务管理器有点类似. top参数详解 第一行,任务队列信息,同 uptime 命令的执 ...

  9. linux top命令详解

    一.top简介 top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况.在Linux操作系统中,top是使用最频繁,也是比较全的一个命令.Top命令 ...

最新文章

  1. Spring之事务管理配置
  2. php解释命令行的参数
  3. Java多线程(六)之Deque与LinkedBlockingDeque深入分析
  4. 《零基础看得懂的C语言入门教程 》——(四)C语言的基本数据类型及变量
  5. 爬虫用mysql存储还是mongodb_【面试题】Mongodb和MySQL存储爬虫数据的特点是什么?...
  6. python简单命令语句_Python语言----linux常用命令(13)
  7. PHP面向对象深入研究之【对象生成】
  8. PostgreSQL如何自动更新时间戳?
  9. 【长期更新】关于各网盘、下载客户端、BT技术
  10. 人口logistic模型公式_人口指数增长模型及Logistic模型
  11. win10 两台电脑之间共享桌面及共享文件(手把手教学)
  12. dnmp一键部署搞定的php开发环境基于Docker的LNMP一键安装程序
  13. Mac安装双系统后在Windows下体验mac原生触控功能(双指、三指、四指)
  14. 毕业之后, 这些年薪50万+的90后程序员都经历了什么?
  15. 【供应链架构day10】供应链架构的基础逻辑
  16. 什么是B2B,B2C,O2O?
  17. 推荐8个免费好用的网站
  18. Javascript中四舍六入五成双
  19. 接口自动化测试高频面试题
  20. 图片asp木马的制作方法[转]

热门文章

  1. windows10 导入 oracle11g dmp文件方法(详细!!!)
  2. windows android 对比度,色彩对比度饱和度基本测试
  3. 酷跑游戏C语言,毕业设计(论文)-跑酷游戏设计(源程序).doc
  4. 访问控制模型详细介绍
  5. 懒惰型性格分析,如何改变懒惰型性格?
  6. Chainer Chemistry | 用于化学和生物学的深度学习库
  7. python基础--初识python
  8. 计算机考研1000题pdf,2020考研张宇1000题(数一、二、三全).pdf
  9. 知识扫盲_常用电平标准(TTL、CMOS、LVTTL、LVCMOS、ECL、PECL、LVPECL、RS232)
  10. cocos creator 做一个涂鸦跳跃