iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >top命令详细解读
  • 248
分享到

top命令详细解读

linux服务器运维 2023-08-20 14:08:58 248人浏览 安东尼
摘要

top命令详细解读 1.top命令介绍2.top命令输出结果分析2.2 进程信息 3.top命令行选项4.top交互命令5. VIRT、RES、SHR含义 1.top命令介绍 top命令是linux系统中常用的性能分析工具,

1.top命令介绍

top命令是linux系统中常用的性能分析工具,可以实时地查看系统的运行情况,比如内存、CPU、负载以及各个进程的资源占用情况。鉴于工作中需要经常使用,故在此整理一下top的学习笔记

2.top命令输出结果分析

首先来看一下执行top后的输出界面展示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aKDNOTeA-1656658143161)(file:///C:/Users/j30011431/AppData/Roaming/eSpace_Desktop/UserData/j30011431/imagefiles/EB155427-A769-4FF0-AE2F-AE8BB5CC4CBB.png)]

top界面主要分为两个部分,前5行展示的是系统的整体性能,光标下面部分是系统中每个进程的具体信息。光标所在处是用来输入操作命令的。

##2.1 系统的整体性能

第一行:

top - 14:39:05 up 36 days, 21:26,  3 users,  load average: 56.31, 55.92, 56.03
  • top:名称
  • 14:39:05:系统当前时间
  • up 36 days, 21:26:系统以及运行的时间,和uptime命令相等
  • 3 users:当前有3个用户在线
  • load average: 56.31, 55.92, 56.03:系统一定时间内的平均负载,分别是1分钟、5分钟、15分钟。

主要关注load average这个值,所谓系统负载就是:在一段时间内,CPU正在处理以及等待CPU处理的进程数之和。系统在同一时间运行的进程数和系统CPU核数相关,一般来说Load Average的数值别超过这台机器的总核数,就没什么问题。

第二行:

Tasks: 265 total,   2 running, 263 sleeping,   0 stopped,   0 zombie
  • Tasks:任务,也就是进程
  • 265 total:当前总共有265个任务,也就是265个进程
  • 2 running:2个进程正在运行
  • 263 sleeping:263个进程正在休眠
  • 0 stopped:0个停止的进程
  • 0 zombie:1个僵尸进程

第三行:

%Cpu(s): 88.9 us,  7.9 sy,  0.0 ni,  1.7 id,  0.0 wa,  1.4 hi,  0.0 si,  0.0 st
  • %Cpu(s):CPU使用率
  • 88.9 us:用户空间占用CPU时间的百分比(大部分进程都运行在用户态,通常都是希望用户空间CPU越高越好)
  • 7.9 sy:内核空间占用CPU时间的百分比(Linux内核态占用的CPU时间,系统 CPU占用越高,表明系统某部分存在瓶颈。通常这个值越低越好)
  • 0.0 ni:占用CPU时间的百分比(ni是nice的缩写,进程用户态的优先级,如果调整过优先级,那么展示的就是调整过nice值的进程消耗掉的CPU时间,如果系统中没有进程被调整过nice值,那么ni就显示为0)
  • 1.7 id:空闲CPU占用率,等待进程运行
  • 0.0 wa:等待输入输出的CPU时间百分比(CPU的处理速度是很快的,磁盘io操作是非常慢的。wa表示 CPU 在等待 IO 操作完成所花费的时间。系统不应该花费大量的时间来等待 IO 操作,否则就说明 IO 存在瓶颈
  • 1.4 hi:CPU硬中断时间百分比(硬中断是硬盘、网卡等硬件设备发送给CPU的中断消息 )
  • 0.0 si:CPU软中断时间百分比(软中断是由程序发出的中断 )
  • 0.0 st:被强制等待(involuntary wait)虚拟 CPU 的时间,此时 Hypervisor 在为另一个虚拟处理器服务。

第四行:

MiB Mem :  15508.4 total,   3858.4 free,   3369.3 used,   828.07 buff/cache
  • MiB Mem:内存
  • 15508.4 total:物理内存总量
  • 3858.4 free:空闲内存量
  • 3369.3 used:已使用的内存量
  • 828.07 buff/cache:用作内核缓存的内存量

第五行:

MiB Swap:   4096.0 total,   3855.1 free,    240.9 used.  10823.7 avail Mem
  • MiB Swap:交换空间(虚拟内存,当内存不足的时候,把一部分硬盘空间虚拟城内存使用)
  • 4096.0 total:交换区总量
  • 3855.1 free:空闲交换区总量
  • 240.9 used:使用的交换区总量
  • 10823.7 avail Mem:可用于启动一个新应用的内存(物理内存),和free不同,它计算的是可回收的page cache和memory slab

第四行和第五行输出信息,等同于使用free -m命令。

2.2 进程信息

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
  • PID:进程id
  • USER:进程所有者
  • PR:进程的优先级,越小优先级越高
  • NI:nice值,负值表示高优先级,正值表示低优先级
  • VIRT:进程使用的虚拟内存,单位是kb
  • RES:进程使用的物理内存,单位kb
  • SHR:进程使用的共享内存,单位kb
  • S:进程状态(S表示休眠,R表示正在运行, Z表示僵死状态,N表示该进程优先值为负数,I表示空闲状态)
  • %CPU:进程占用的CPU使用率
  • %MEM:进程使用的物理内存和总内存的百分比
  • TIME+:进程使用的CPU时间总计,单位1/100秒
  • COMMAND:命令行

上述列是top命令的默认显示,还有一些参数可以使用top的交互命令选择显示,按f键,选择需要展示的部分。

3.top命令行选项

格式:top [选项]

选项功能
-p只显示某个进程的信息
-d设置刷新时间,默认是5s
-c显示产生进程的完整命令,默认是进程名
-o指定要排序的字段,比如top -o PID 按照PID从大到小,top -o -PID 按照PID从小到大
-n指定刷新次数,比如 top -n 3,刷新输出3次后退出
-b以非交互非全屏模式运行,以批次的方式执行top,一般配合-n指定输出几次统计信息,将输出重定向到指定文件,比如 top -b -n 3 > /tmp/top.tmp
-i不显示任何闲置 (idle) 或无用 (zombie) 的进程
-u查找特定用户启动的进程

4.top交互命令

top命令在执行过程中可以使用一些交互功能:

按键功能
h键按下h键,会显示帮助画面
c键按下c键,会显示产生进程的完整命令,等同于-c参数,再次按下c键,变为默认显示
f键按下f键,可以选择需要展示的项目
M键按下M键,根据驻留内存大小(RES)排序
P键按下P键,根据CPU使用百分比大小进行排序
T键按下T键,根据时间/累计时间进行排序
E键按下E键,切换顶部内存显示单位
e键按下e键,切换进程内存显示单位
l键按下l键,切换显示平均负载和启动时间信息。
t键按下t键,切换显示CPU状态信息
m键按下m键,切换显示内存信息

5. VIRT、RES、SHR含义

VIRT:

1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据,以及malloc、new分配的堆空间和分配的栈空间等;2、假如进程新申请10MB的内存,但实际只使用了1MB,那么它会增长10MB,而不是实际的1MB使用量。

RES:

1、进程当前使用的内存大小,包括使用中的malloc、new分配的堆空间和分配的栈空间,但不包括swap out量;2、包含其他进程的共享;3、如果申请10MB的内存,实际使用1MB,它只增长1MB;

SHR:

1、进程当前使用的内存大小,包括使用中的malloc、new分配的堆空间和分配的栈空间,但不包括swap out量;2、包含其他进程的共享;3、如果申请10MB的内存,实际使用1MB,它只增长1MB;

上述三个值是从/proc/pid/statm文件中格式化读出来的,前三个值分别是VIRT、RES、SHR,单位是页,常见的是4kb。

参考文献:

https://blog.csdn.net/langzi6/article/details/124805024

Https://www.cnblogs.com/LittleHann/p/4522855.html

来源地址:https://blog.csdn.net/weixin_40734030/article/details/125558689

--结束END--

本文标题: top命令详细解读

本文链接: https://www.lsjlt.com/news/376478.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • top命令详细解读
    top命令详细解读 1.top命令介绍2.top命令输出结果分析2.2 进程信息 3.top命令行选项4.top交互命令5. VIRT、RES、SHR含义 1.top命令介绍 top命令是Linux系统中常用的性能分析工具,...
    99+
    2023-08-20
    linux 服务器 运维
  • Linux top命令详解
    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器 top参数详解 第一行,任务队列信息,同 uptime 命令...
    99+
    2022-11-13
    Linux top命令 Linux 命令
  • linux top命令详解
    一.top简介 top命令经常用来监控linux的系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。在Linux操作系统中,top是使用最频繁,也是比较全的一个命令。Top命令类似于Windows系统的任务管理器工具...
    99+
    2023-09-02
    linux 运维 服务器
  • TOP命令参数详解---10分钟学会top用法
    TOP命令详解 一、top命令介绍   相信每个运维人员都遇到过的事情就是服务器的负载突然飙升,碰到这种情况,大家第一反应一定是登到服务器上,先敲一个top命令看看load average吧。在Linux操作系统中,top是使用最频繁,也是...
    99+
    2023-08-20
    服务器 linux 运维
  • RPM详细命令
    RPM 简介 RPM 查询命令 查询已安装的RPM软件信息 格式:rpm -q[子选项] [软件名] 用法:结合不同子选项完成不同查询 -qa:查看系统中已安装的所有RPM软件包列表 -qi:查看指定软件的详细信息(informati...
    99+
    2023-09-14
    服务器 运维 linux 网络 centos
  • linux命令ifconfig的详细解释
    这篇文章主要讲解了“linux命令ifconfig的详细解释”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux命令ifconfig的详细解释”吧!许多...
    99+
    2024-04-02
  • 详细解析let和const命令
    目录let命令基本用法特性暂时性死区不允许重复声明const特性补充——块级作用域let命令 基本用法 我们都知道let命令是用来声明变量的,类似于var,但...
    99+
    2024-04-02
  • Linux top命令怎么用
    这篇文章给大家介绍Linux top命令怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Linux top命令用于实时显示 process 的动态。使用权限:所有使用者。语法top [-] [d...
    99+
    2023-06-28
  • node.js读取命令行参数详解
    命令行参数(CLI)是在应用程序通过操作系统的命令行界面运行时用于向程序传递附加信息的文本字符串。 我们可以很容易地通过node中的全局对象(即process对象)读取这些参数。 下...
    99+
    2022-11-13
    node.js读取命令行参数 node.js读取命令行参数 node.js args模块读取命令行参数
  • Linux - top命令详解(监视进程和Linux整体性能)
    目录 top启动参数基础字段说明第一行,系统任务统计信息:第二行,进程统计信息:第三行,CPU统计信息:第四行,内存统计信息:第五行,swap交换分区统计信息:第六行,进程信息 控制界面显...
    99+
    2023-10-03
    linux 运维 服务器 top CPU性能
  • linux top命令基本实战
    目录一. top命令介绍二. 语法格式及常用选项三. 参考案例3.1 显示进程信息3.2 显示完整的进程命令3.3 以批处理的形式展示3.4 设置信息更新频次3.5 显示指定进程号的信息3.6 top面板中常用参数3.7 ...
    99+
    2023-02-03
    linux top命令 linux top
  • readelf命令读取elf文件的详细信息(推荐)
    目录readelf命令概述常用参数-a 全部-h 文件头-l 程序头-S section头-e 全部头-s 符号表-n 内核注释-r 重定位-d 动态段-V 版本-A CPU架构-x 16进制展示段readelf命令 概...
    99+
    2023-02-13
    readelf命令读取elf文件 readelf命令读取
  • Sqlite3详细解读
    Sqlite3详细解读"代码下载:SQLite3_2013_0402详细版.zip" http://vdisk.weibo.com/s/Gb9Qi***数据库***严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的...
    99+
    2023-01-31
    详细
  • 命令执行漏洞超详细讲解
    💕💕💕 博主昵称:摆烂阳💕💕💕 🥰博主主页跳转链接 👩‍...
    99+
    2023-08-31
    服务器 网络 安全
  • Java 详细讲解用堆解决Top-k问题
    目录1、什么是堆?堆结构大根堆 VS 小根堆大根堆(最大堆)小根堆(最小堆)优先级队列(PriorityQueue)2、top-k问题解决思路总结:要解决 top-k 问题,我们应该...
    99+
    2024-04-02
  • Linux 系统 grep 命令超详细讲解
    grep命令是Linux系统中非常常用的搜索命令,用于在文件中查找指定的字符串。下面是grep命令的详细讲解:基本语法:grep [...
    99+
    2023-09-15
    Linux
  • 详细解析命令行的getopt_long()函数
    头文件 #include<getopt.h> 函数原型int getopt_long(int argc,char * const argv[],const char *o...
    99+
    2022-11-15
    getopt_long
  • Linux下top命令的用法
    这篇文章主要介绍“Linux下top命令的用法”,在日常操作中,相信很多人在Linux下top命令的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux下top命令的用法”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-05
  • Linux中Top命令怎么用
    这篇文章主要介绍了Linux中Top命令怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命...
    99+
    2023-06-13
  • Linux top命令怎么入门
    Linux top命令怎么入门,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。top命令用于实时监测系统资源使用状况,包含,进程、cpu,内存等。1、用法top [选项]2、...
    99+
    2023-06-28
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作