引言

top命令是UNIX/Linux系统中,用于查看系统详情的第一入口,一般我们查看机器运行状态的时候,总是第一个使用top命令,而实际上top命令展示的数据很多,对于新手来说这些其实并不友好。本文主要的目的就是做一个详细的梳理。

介绍(description)

top 程序提供了一个正在运行的系统的实时数据的展示。它可以展示的内容包含系统的基本信息,以及当前正在被linux内核管理的任务。这些系统的摘要信息的类型以及任务展示的类型,排序和大小都是用户可配置的,并且这些配置可以是持久化的,不受重启影响。

首行/基本信息

首行可以使用命令 upTIme替代。首行显示的内容从左到右分别为

* 当前的时间

* 系统累积以及运行的时间

* 当前登入用户的数量

* 当前的系统负载。

系统负载三个数字的含义

一般来说,系统每隔5秒钟,会检查一下当前系统活跃的进程数。这个活跃进程要满足3个前提

* 它没有在等待I/O操作的结果

* 它没有主动进入等待状态(也就是没有调用’wait’)

* 没有被停止(例如:等待终止)

而系统负载的三个数值分别表示的是1分钟,5分钟和15分钟系统负载的平均值。

对于一个具有n核处理器的系统来说,当系统负载的load average为n的时候,表示系统差不多刚刚好满负荷,但是已经没有额外的经历去处理其它任务了。当load average 大于n的时候,表示系统超负荷运转。一般来说为了使系统能正常运转,我们经验上,任务load average / n 《 0.7 是一般能接受的情况。

第二行/cpu信息

第二行主要显示进程和cpu的信息,注意在top命令中task指进程。第二行的信息依次为

* 进程总数

* 正常运行的进程数量

* 休眠的进程总数

* 停止的进程总数

* 僵死进程总数

* us用户进程占用cpu资源的百分比

* sy内核态进程占cpu资源的百分比

* ni用户进程空间内改变过优先级的进程占cpu资源的百分比

* id空闲cpu的百分比

* wa 等待输入输出的进程占cpu资源的百分比

* hi 硬中断占用的百分比

* si软中断占用的百分比

* st 虚拟机占用百分比

第三行/内存相关信息

mem

物理内存总量

使用的物理内存总量

空闲的物理内存总量

用在内核缓存的内存总量

swap

交换区内存总量

使用的交换区的总量

空闲的交换区总量

缓存的交换区总量。

Swap:表示硬盘上交换分区的使用情况。只有mem被当前进程实际占用完,即没有了buffers和cache时,才会使用到swap。

上面这句话只是一般情况下的理想状态,实际上内核可能会主动地将一些暂时不用的内存块写入到磁盘的交换区(swap),这样节约出来的内存就可以用作他用了。这些被写入swap的内存,只有当实际需要的时候,才会被重新写入内存。

注意:当物理内存空闲的时候,也有可能会有大量的swap。原因在于,有可能存在这么一种情况,某一个进程,需要大量的物理内存,而当这个进程结束的时候,这个进程在生命周期中,被交换进入swap的内存,并不会主动释放。操作系统总是在实际需要的时候才去做处理,这样就会出现在某一些特定的时段,物理内存很空闲,而swap使用量却很高的情况。

进程信息

参看Linux中top的说明

* pid : Process Id进程id,这个是进程的唯一标识符。这个id,会被周期性地复写,但是不会从0开始。

* ppid : Parent Process PID父进程的pid

* ruser : Real User Name, 当前进程真实的用户名称

* uid : User Id. 进程拥有者的有效用户id

* USER : User Name,生效用户名称

* group : group name 用户组民粹

* TTY : Controlling Tty 控制终端的名称。启动进程的终端名称。然而当一个进程不是从终端中被访问的时候,你将会看到问号(????)

* pr : Priority 进程的优先级

* ni : Nice Value.优先级的值,负数表示优先级很高,正数表示优先级比较低。

* p : Last userd CPU (SMP)。在多处理环境中,表示最近一次使用的cpu序号。

* %cpu : cpu的使用量占总cpu时间的百分比

* TIME : CPU TIME 任务从开始到现在使用的cpu的总时间。

* TIME + : CPU Time ,hundredths 更为细粒度更为精确的cpu耗时

* %MES : 进程使用的内存量

* VIRT : 进程使用的虚拟内存的大小

* SWAP : 进程使用的交换区的大小

* RES : Resident Size 驻留内存大小,指进程除去使用交换区swap的内存,使用的物理内存的大小

* CODE : code size 指代码占用物理内存的大小

* DATA : Data + Stack size 数据和堆栈占用的大小

* SHR : Shared Mem size 进程共享内存的大小

* nFLT : Page Fault Count 缺页总数

* nDRT : Dirty Pages count 脏页数量

* S : process status 进程状态 。 分别有D R S T Z ,分别表示【不可中断的休眠】【正在运行】【休眠中】【暂停或者跟踪状态】【僵死状态】,参考

* Command : Command line or Program name 命令或者进程名称

* WCHAN : Sleep in Function 显示当前休眠的函数

* Flages :Task Flags 进程在进程计划中的标准。

嵌入式linux完整top命令,linux的top命令详解相关推荐

  1. linux命令ps -aux|grep xxx详解

    linux命令ps -aux|grep xxx详解 要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程, 而ps命令(Process Status)就是最基本同时也是非常强大 ...

  2. linux xxx命令,linux命令ps aux|grep xxx详解

    对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程, 而ps命令(Process Status)就是最基本同时也是非常强大的进程查看命令. 使用该命令 可以确定有哪些进程正在运 ...

  3. linux dig命令的安装和使用详解

    linux dig命令的安装和使用详解 什么是dig命令 Dig是Domain Information Gopher的缩写,是一种DNS查找实用程序,用于探测DNS服务器并解决与DNS服务器相关的问题 ...

  4. 编程实现linux中的who命令功能,Linux who命令简介及使用方法详解

    玩蛇网推荐图文教程:python 列表 本文是关于Linux who命令简介及使用方法详解一文.如果你是一名系统管理员,可能需要需要在一个特定的时间点都有谁活跃在系统上.以便必须严密监视我们的服务器. ...

  5. linux cp -r 参数,Linux系统中cp命令的参数及用法详解

    Linux系统中cp命令主要是用来复制文件或者目录.下面由学习啦小编为大家整理了Linux系统中cp命令的参数及用法详解的相关知识,希望对大家有帮助! Linux系统中cp命令的参数及用法详解:参数说 ...

  6. linux添加目录命令权限,linux chmod命令设置目录/文件权限详解

    首页 > Linux教程 > 常用命令 > chmod 文件权限 linux chmod命令设置目录/文件权限详解 linux中chmod命令用于改变系统文件或目录的访问权限,用数字 ...

  7. linux环境下blastn命令怎么用,Linux环境下通配符及特殊符号使用详解

    Linux环境下通配符及特殊符号使用详解 我们现在来介绍通配符的使用,通过通配符的过滤,快速找到想找的文件和目录,比如/etc/目录下有上千个目录和文件,不使用通配符想找一个目录和文件是非常麻烦的和花 ...

  8. linux中替换命令详解,linux中sed命令字符串替换的用法详解

    Linux系统中sed命令可以将字符串批量替换,省去了很多麻烦,下面由学习啦小编为大家整理了linux系统中sed命令字符串替换的用法详解,希望对大家有帮助! linux中sed命令字符串替换的用法详 ...

  9. Linux中man手册的安装以及使用详解

    Linux中man手册的安装以及使用详解 linux中man手册的安装以及使用详解 man手册是什么 man手册是干嘛的 man手册如何安装 man手册如何使用 举例讲解 我们来看一下man手册的目录 ...

  10. Linux系统下SVN服务器的搭建过程详解 UpJ}s7+

    Linux系统下SVN服务器的搭建过程详解 UpJ}s7+   1 环境:  服务器放在redhatAS4.0上,客户端在windows 2000. k_lb"5z   Z]jSq@%1H* ...

最新文章

  1. [转]linux解压 tar命令
  2. 系统异常和不稳定的原因总结
  3. LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
  4. 重构手法之简化函数调用【1】
  5. PKI/CA (4)根CA信任模型“概述”
  6. 在 MyEclipse 5.1GA 上使用 XFire 编写 Web Service
  7. BAPI:KBPP_EXTERN_UPDATE_CO, TCODE:CJ30/CJ40 第二部分
  8. 数据分析常用的7大思维方法详解
  9. 高等数学_第一章第3节_函数的极限
  10. Atitit 扩大个人影响力和宣传目录1. 发文舆论阵地 11.1. 简书 知乎 csdn等 11.2. Ifttt出发同步 11.3. 问答平台 知乎 quaro 11.4. Tik
  11. xp计算机位数,XP查看电脑系统版本是32位还是64位的方法
  12. xp精简版 安装IIS
  13. 刘铎 计算机学院,离散数学及应用 [刘铎 编著] 2013年版
  14. SDL Trados2017及SDL MultiTerm安装
  15. 帝国cms生成动态php栏目,帝国cms怎么实现页面自动生成html
  16. 如何将YouTube和其他网络视频投射到Kodi(例如Chromecast)
  17. [非线性控制理论]5_自适应控制器(Adaptive controller)
  18. w ndows无法完成格式化,windows无法完成格式化,小编教你解决windows无法完成格式化U盘...
  19. java经典50道编程题(很好练逻辑思维的题)(第一篇)
  20. Unity实战之类爬塔功能

热门文章

  1. SAP本地化-银企直连
  2. SAP修改科目为未清项管理和行项目显示
  3. Linq to sql 实现多条件的动态查询(方法一)
  4. ABAP-在SMARTFORMS中取消使用WORD作为编辑器
  5. SAP修改数据表(tables)的方法
  6. 兼顾隐私与权利,华为以“科技有道”,实现“隐私无价”
  7. tengine简单安装_实操丨如何在EAIDK上部署Tengine开发AI应用之物体检测应用入门(C++)...
  8. e300氛围灯哪里调节_奥迪Q5L安装原厂32色20灯源氛围灯
  9. 汇编语言程序如何转化成c语言,如何把汇编语言转换成C语言
  10. c 后台输出easyui html,EasyUI——实现展示后台数据代码