Linux 命令 top 详解

1 top命令介绍

  • Linux系统中,Top命令主要用于实时运行系统的监控,包括Linux内核管理的进程或者线程的资源占用情况。
  • 这个命令对所有正在运行的进程和系统负荷提供不断更新的概览信息,包括系统负载、CPU利用分布情况、内存使用、每个进程的内容使用情况等信息。

2 常用的 top 指令

top:启动top命令
top -c:显示完整的命令行
top -b:以批处理模式显示程序信息
top -S:以累积模式显示程序信息
top -n 10:表示更新十次后终止更新显示
top -d 3:设置信息更新周期为3秒
top -p 139:显示进程号为139的进程信息,CPU、内存占用率等

除此之外,在top进程运行过程中,两个最重要的功能是查看帮助(h 或 ?)和退出(q 或 Ctrl+C)

3 top信息详解

    top展示界面由从上到下四部分组成:

  • 概览区域
  • 表头
  • 任务区域
  • 还有一个输入/消息行,位于概览区域和表头之间(一般不需要使用这个,会看参数值即可)。
    在这里插入图片描述

3.1 概览区逐行解释

3.1.2 概览区第一行详解
top - 13:23:10 up 398 days,  9:03,  6 users,  load average: 2.36, 2.62, 2.59
  • top:程序或者窗口的名称
  • 13:23:10 up 398 days, 9:03:分别是当前时间、启动天数、系统的启动时间
  • 6 users:总共的用户数量
  • load average: 2.36, 2.62, 2.59:分别代表过去1、5和15分钟的系统平均负载
3.1.2 概览区第二行详解
Tasks: 241 total,   2 running, 239 sleeping,   0 stopped,   0 zombie

        该信息对 task 进行分类,包括running、sleeping、stopped、zombie四类,显示了系统中正在运行的任务的状态统计信息:

  • 241 total:总共有241个任务数
  • 2 running:当前有 2 个任务正在运行
  • 239 sleeping:当前有 239 个任务处于睡眠状态
  • 0 stopped:有 0 个任务停止
  • 0 zombie:0 个任务为僵尸进程
3.1.3 概览区第三行详解
%Cpu(s):  3.9 us,  7.2 sy,  0.0 ni, 83.4 id,  0.0 wa,  0.0 hi,  5.5 si,  0.0 st

显示CPU的状态百分比:

  • %Cpu(s): CPU使用率的统计信息
  • us (user): 用户空间进程占用CPU的时间百分比
  • sy (system): 内核空间进程占用CPU的时间百分比
  • ni (nice): 用户进程以优先级调整过的占用CPU的时间百分比(通常不会有这个值)
  • id (idle): CPU空闲的时间百分比
  • wa (IO-wait): CPU等待I/O操作的时间百分比
  • hi (hardware interrupt): CPU处理硬件中断的时间百分比
  • si (software interrupt): CPU处理软件中断的时间百分比
  • st: 被虚拟化环境偷取的时间百分比(通常不会有这个值)
3.1.4 概览区第四、第五行详解
KiB Mem : 32761636 total, 10839940 free, 14976144 used,  6945552 buff/cache
KiB Swap:  4063228 total,  4043260 free,    19968 used. 15659636 avail Mem 

(表示内存的使用情况)

  • 第四行表示物理内存,分为total、 free、 used 、 buff/cache
  • 第五行表示虚拟内存,分为total、free、used、avail

4 任务区字段详解

  • %CPU: CPU Usage,自上次屏幕更新以来任务占用的CPU时间份额,表示为总CPU时间的百分比。
  • %MEM: Memory Usage,进程使用的物理内存百分比
  • CODE:Code Size,可执行代码占用的物理内存量
  • COMMAND:Command Name or Command Line,用于显示输入的命令行或者程序名称
  • PID:Process Id,任务独立的ID,即进程ID
  • PPID:Parent Process Id,父进程ID
  • UID:User Id,任务所有者的用户ID
  • USER:User Name,用户名
  • RUSER:Real User Name,实际的用户名
  • TTY:Controlling Tty,控制终端名称
  • TIME:CPU TIME,该任务CPU总共运行的时间
  • TIME+:同TIME,其粒度更细
  • OOMa:Out of Memory Adjustment Factor,内存溢出调整机制,这个字段会被增加到当前内存溢出分数中,来决定什么任务会被杀掉,范围是-1000到+1000。
  • OOMs:Out of Memory Score,内存溢出分数,这个字段是用来选择当内存耗尽时杀掉的任务,范围是0到+1000。0的意思是绝不杀掉,1000的意思是总是杀掉。
  • S:Process Status,表示进程状态信息
    • D: 不可中断休眠
    • I:空闲
    • R:运行中
    • S:休眠
    • T:被任务控制信号停止
    • t:在跟踪期间被调试器停止
    • Z:僵尸
      (相关属性有很多,可以使用man top查看,这里先列举这些。)

5 交互命令详解

        top的功能很多,基本能够查看进程的各种状态信息,其中还有一些交互式的命令,方便我们更好的查看系统状态。

在top主界面中,我们输入下面的命令

命令功能
h、?帮助信息查看,涵盖所有的快捷键
空格、回车按键手动刷新界面信息
q、ESC按键退出
B粗体显示功能
d、s改变间隔时间
E、e切换内存显示的单位,从KiB到EiB
g然后输入1-4其中一个数字,选择哪种窗口(1.默认,2.任务,3.内存,4.用户)
H进程、线程显示切换
k输入PID信息,杀掉一个任务
Z改变配色

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/296643.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue2电商前台项目(一):项目前的初始化及搭建

一、项目初始化 创建项目:sudo vue create app 1.项目配置 (1)浏览器自动打开 在package.json文件中,serve后面加上 --open "scripts": {"serve": "vue-cli-service serve --open","buil…

JimuReport 积木报表

一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等! Web 版报表设计器,类似于 excel 操作风格,通过拖拽完成报表设计…

spring总结-基于XML管理bean超详细

spring ioc总结-基于XML管理bean 前言实验一 [重要]创建bean1、目标和思路①目标②思路 2、创建Maven Module3、创建组件类4、创建spring配置文件7、无参构造器8、用IOC容器创建对象和自己建区别 实验二 [重要]获取bean1、方式一:根据id获取2、方式二:根…

【详解旋转编码器原理与应用】:从类型到作用全面解读

旋转编码器是一种精密的传感器装置,主要用于测量旋转物体的角度、速度、方向或位移等机械运动参数,并将其转换为相应的电脉冲信号或数字信号输出。这种装置广泛应用于工业自动化、机器人技术、伺服控制系统、电梯、电机控制、音视频设备、游戏控制器以及…

数据结构——二叉树(堆)

大家好我是小峰,今天我们开始学习二叉树。 首先我们来学习什么是树? 树概念及结构 树是一种 非线性 的数据结构,它是由 n ( n>0 )个有限结点组成一个具有层次关系的集合。 把它叫做树是因 为它看起来像一棵倒挂的…

前端三剑客 —— CSS (第三节)

目录 上节回顾: 1.CSS使用有以下几种样式; 2.选择器 1.基本选择器 2.包含选择器 3.属性选择器 [] 4.伪类选择器 : 5.伪元素选择器 ::before :after 3.常见样式的使用 常见样式参考表 一些特殊样式 媒体查询 自定义字体 变换效果 translate&…

从 Redis 开源协议变更到 ES 国产化:一次技术自主的机遇

引言 近日,Redis Labs 宣布其主导的开源项目 Redis 将采用双重源代码可用许可证(RSALv2)和服务器端公共许可证(SSPLv1)。这一重大决策标志着 Redis 从传统的 BSD 许可证向更加严格的控制权转变,同时也引发…

Servlet Response的常用方法 缓存和乱码处理

前言 Servlet Response相关的信息,在service方法中使用的是HttpServletResponse,它继承自ServletResponse,扩展了Http协议相关的内容,下面简单记录一下它的基本用法。 一、response组成内容 以下是一个常见response响应的内容&…

Ruby 之交租阶段信息生成

题目 我看了一下,这个题目应该不是什么机密,所以先放上来了。大概意思是根据合同信息生成交租阶段信息。 解答 要求是要使用 Ruby 生成交租阶段信息,由于时间比较仓促,变量名那些就用得随意了些。要点主要有下面这些&#xff1a…

Redission--布隆过滤器解决缓存穿透问题

布隆过滤器在缓存穿透问题中的使用 布隆过滤器的核心是一个位数组 布隆过滤器的误判 使用Redission的布隆过滤器步骤 添加 Redission 依赖:首先需要将 Redission 添加到你的 Java 项目中,你可以通过 Maven 来添加 Redission 的依赖。 创建 Redissio…

机器学习全攻略:概念、流程、分类与行业应用案例集锦

目录 1.引言 2.从零开始认识机器学习:基本概念与重要术语 3.五步走:掌握机器学习项目执行的完整流程 3.1.问题定义与数据收集 3.2.数据预处理与特征工程 3.3.模型选择与训练 3.4.模型评估与优化 3.5.模型部署与监控 4.深入了解各类机器学习方法…

LeetCode-146. LRU 缓存【设计 哈希表 链表 双向链表】

LeetCode-146. LRU 缓存【设计 哈希表 链表 双向链表】 题目描述:解题思路一:双向链表,函数 get 和 put 必须以 O(1) 的平均时间复杂度运行。一张图:知识点__slots__ 解题思路二:0解题思路三:0 题目描述&am…

使用 Flume 将 CSV 数据导入 Kafka:实现实时数据流

使用 Flume 将 CSV 数据导入 Kafka:实现实时数据流 文介绍了如何使用 Apache Flume 将 CSV 格式的数据从本地文件系统导入到 Apache Kafka 中,以实现实时数据流处理。通过 Flume 的配置和操作步骤,我们可以轻松地将数据从 CSV 文件中读取并发…

医院云HIS系统源码,二级医院、专科医院his系统源码,经扩展后能够应用于医联体/医共体

基于云计算技术的B/S架构的HIS系统,为医疗机构提供标准化的、信息化的、可共享的医疗信息管理系统,实现医患事务管理和临床诊疗管理等标准医疗管理信息系统的功能。 系统利用云计算平台的技术优势,建立统一的云HIS、云病历、云LIS&#xff0…

设计模式12--组合模式

定义 案例一 案例二 优缺点

【ESP32S3 Sense接入语音识别+MiniMax模型+TTS模块语音播报】

【ESP32S3 Sense接入语音识别MiniMax模型TTS模块语音播报】 1. 前言2. 功能模块概述2.1 语音接入2.2 大模型接入2.3 TTS模块接入 3. 先决条件3.1 环境配置3.2 所需零件3.3 硬件连接步骤 4. 核心代码4.1 源码分享4.2 代码解析 5. 上传验证5.1 对话测试5.2 报错 6. 总结 1. 前言 …

【 书生·浦语大模型实战营】学习笔记(一):全链路开源体系介绍

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、…

我的2024java实习投递历程

每天投递一个简历吧,我tm投投投投投投投 3/21 周四 招商银行 招银网络科技 杭州 java实习生 4月2号笔试 笔试经验:45分钟 30道选择题 题目回忆版: 1.8进制 1-777 多少个数各位乘积为0 2.有关系R(ABCDE)&…

【EasyExcel】多sheet、追加列

业务-EasyExcel多sheet、追加列 背景 最近接到一个导出Excel的业务,需求就是多sheet,每个sheet导出不同结构,第一个sheet里面能够根据最后一列动态的追加列,追加多少得看运营人员传了多少需求列。原本使用的 pig4cloud 架子&…

备战蓝桥杯Day36 - 动态规划 - 三角形最小路径和问题

一、什么是动态规划 通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推的方式解决。 哪些问题可以使用动态规划? 1、具有最优子结构:问题的最优解所包含的子结构的解也是最优的 2、具有无后效性:未来…