top命令

Linux top命令用于实时显示 process 的动态。

top参数详解

第一行,任务队列信息

  • 系统当前时间:13:52:56
  • 系统开机后到现在的总运行时间:up 66 days,8min
  • 当前登录用户:2users
  • 负载均衡(uptime) load average:0.50,0.42,0.36, average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了

第二行:任务进程信息

  • total:系统全部进程的数量
  • running:运行状态的进程数量
  • sleeping:睡眠状态的进程数量
  • stoped:停止状态的进程数量
  • zombie:僵尸进程数量

第三行:CPU状态信息

  • us:用户空间占用CPU百分比
  • sy:内核空间占用CPU百分比
  • ni:已调整优先级的用户进程的CPU百分比
  • id:空闲CPU百分比,越低说明CPU使用率越高
  • wa:等待IO完成的CPU百分比
  • hi:处理硬件中断的占用CPU百分比
  • si:处理软中断占用CPU百分比
  • st:虚拟机占用CPU百分比

第四行:物理内存信息

  • total:物理内存总量
  • free:空闲内存总量
  • used:使用中内存总量
  • buff/cache:用于内核缓存的内存量

第五行:交换区内存信息

  • total:交换区总量
  • free:空闲交换区总量
  • used:使用的交换区总量
  • avail Mem:可用交换区总量

备注

对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,表示内核在不断进行内存和swap的数据交换,说明内存真的不够用了。

第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,

第四行中空闲内存总量(free)是内核还未纳入其管控范围的数量。

纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。

可用内存空间:free + buff + cache

第七行以下:进程列表

  • PID:进程id
  • USER:运行进程的用户
  • PR:进程优先级
  • NI:nice值。负值表示高优先级,正值表示低优先级
  • VIRT:进程虚拟内存的大小,只要是进程申请过的内存,即便还没有真正分配物理内存,也会计算在内;VIRT=SWAP+RES (单位kb)
  • RES:进程实际使用的物理内存大小,不包括 Swap 和共享内存。RES=CODE+DATA (单位kb)
  • SHR:共享内存大小,比如与其他进程共同使用的共享内存、加载的动态链接库以及程序的代码段等
  • S:进程状态
    • R:运行状态
    • S:睡眠状态
    • D:不可中断的睡眠状态
    • T:跟踪/停止
    • Z:僵尸进程
  • %CPU:CPU 使用率
  • %MEM:进程使用物理内存占系统总内存的百分比
  • TIME+:上次启动后至今的总运行时间
  • COMMAND:命令名or命令行

追加说明

VIRT:virtual memory usage 虚拟内存

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

RES:resident memory usage 常驻内存

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

SHR:shared memory 共享内存

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

top使用方法

查看所有进程的资源占用情况

top

监控每个逻辑CPU的状况

top  ,按 1

高亮显示当前运行进程

top ,按 b

显示 完整命令

top ,按 c

切换显示CPU

top ,按 t

按CPU使用率从大到小排序

top ,按 P

切换显示Memory

top,按m

按Memory占用率从大到小排序

top,按M

按累计运行时间Time从大到小排序

top,按T

高亮CPU列

top,按x

彩色高亮显示

top,按z,按shift+z 可以调配色方案

通过”shift + >”或”shift + <”可以向右或左改变排序列

top shift + >或shift + <

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

top,按i

杀掉进程

top,按k,输入PID

改变内存的显示单位,默认为KB

top,按e (针对列表)top,按E (针对头部统计信息)

退出top程序

按q

linux(7)top命令详细解释的更多相关文章

  1. linux下top命令详细介绍

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

  2. linux下top命令参数解释

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.下面详细介绍它的使用方法. top - 01:06:48 up 1:22, 1 ...

  3. Linux学习笔记15——GDB 命令详细解释【转】

    GDB 命令详细解释 Linux中包含有一个很有用的调试工具--gdb(GNU Debuger),它可以用来调试C和C++程序,功能不亚于Windows下的许多图形界面的调试工具. 和所有常用的调试工 ...

  4. Linux下top订购具体解释

    Linux下top订购具体解释 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvempmMjgwNDQxNTg5/font/5a6L5L2T/fontsize ...

  5. 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:  ...

  6. Linux下top命令详解

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

  7. linux中top命令的用法

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

  8. Linux中systemctl命令详细介绍

    Linux Systemctl是一个系统管理守护进程.工具和库的集合,用于取代System V.service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器.通过Syst ...

  9. Linux Load average负载详细解释

    http://tianmaotalk.iteye.com/blog/1027970     Linux Load average负载详细解释   linux查看机器负载

随机推荐

  1. Java入门随手记-DOS命令

    DOS 打开cmd的方式 开始+系统+命令提示符 win键+r 输入cmd打开控制台(推荐使用) 在任意的文件夹下面,按住shift键+鼠标右键点击,在此次打开命令窗口 资源管理器的地址栏前面加上cm ...

  2. ThreadX移植——STM32H7+MDK-AC6平台

    作者:zzssdd2 E-mail:zzssdd2@foxmail.com 一.前言 在uCOS全家桶宣布开源之后被微软收购的ThreadX也开源了,真是喜大普奔,对于我们这些嵌入式行业从业者来说,能 ...

  3. CSS 奇技淫巧:动态高度过渡动画

    这个问题源自于掘金上的一个留言,一个朋友问到,为什么我下面这段代码的高度过渡动画失效了? 伪代码大概是这样: { height: unset; transition: all 0.3s linear; ...

  4. docker+mysql集群+读写分离+mycat管理+垂直分库+负载均衡

    依然如此,只要大家跟着我的步骤一步步来,100%是可以测试成功的 centos6.8已不再维护,可能很多人的虚拟机中无法使用yum命令下载docker, 但是阿里源还是可以用的 因为他的centos- ...

  5. 原生javascript制作省市区三级联动详细教程

    多级联动下拉菜单是前端常见的效果,省市区三级联动又属于其中最典型的案例.多级联动一般都是与数据相关联的,根据数据来生成和修改联动的下拉菜单.完成一个多级联动效果,有助于增强对数据处理的能力. 本实例以 ...

  6. Hadoop源码:namenode格式化和启动过程实现

    body { margin: 0 auto; font: 13px / 1 Helvetica, Arial, sans-serif; color: rgba(68, 68, 68, 1); padd ...

  7. Java开发手册之数据库规约

    1.不要使用 count(列名)或 count(常量)来替代 count(*),count(*)是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关. 2.cou ...

  8. Java JDBC的 url 配置信息和Mybatis核心配置文件(MySQL 的配置信息)

    JDBC 连接数据库的 url driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/smbms?uesSSL=true&u ...

  9. 【设计模式】Java设计模式精讲之原型模式

    简单记录 - 慕课网 Java设计模式精讲 Debug方式+内存分析 & 设计模式之禅-秦小波 文章目录 1.原型模式的定义 原型-定义 原型-类型 2.原型模式的实现 原型模式的通用类图 原 ...

  10. 你不知道的Linux目录

    Linux二级目录及其对应的作用 主要文件