当前位置: 首页 > news >正文

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改变配色

相关文章:

  • 《YOLOv8:从入门到实战》专栏介绍 专栏目录
  • 程序员沟通之道:TCP与UDP之辩,窥见有效沟通的重要性(day19)
  • 工具_git提交时忽略某些文件或者目录,git提交排除某些文件或目录
  • 微服务连接不上rabbitmq解决
  • Android 高德地图
  • Folder Icons for Mac v1.8 激活版文件夹个性化图标修改软件
  • pwn学习笔记(7)--堆相关源码
  • 计算机网络:数据链路层 - 可靠传输协议
  • vscode安装通义灵码
  • 基于AI智能识别技术的智慧展览馆视频监管方案设计
  • 全志A40i android7.1 移植wifi驱动的一般流程
  • 超势垒整流器选型参数,结构原理,工艺与注意问题总结
  • TiDB单机版安装和连接访问
  • DWARF简析
  • 理解pytorch的广播语义
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • python3.6+scrapy+mysql 爬虫实战
  • 【面试系列】之二:关于js原型
  • 2017届校招提前批面试回顾
  • Asm.js的简单介绍
  • canvas 绘制双线技巧
  • CentOS6 编译安装 redis-3.2.3
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Java方法详解
  • js递归,无限分级树形折叠菜单
  • k8s 面向应用开发者的基础命令
  • Logstash 参考指南(目录)
  • Wamp集成环境 添加PHP的新版本
  • 关于Java中分层中遇到的一些问题
  • 解析带emoji和链接的聊天系统消息
  • 全栈开发——Linux
  • 如何实现 font-size 的响应式
  • 一个完整Java Web项目背后的密码
  • 再次简单明了总结flex布局,一看就懂...
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • UI设计初学者应该如何入门?
  • 湖北分布式智能数据采集方法有哪些?
  • 摩拜创始人胡玮炜也彻底离开了,共享单车行业还有未来吗? ...
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • #微信小程序:微信小程序常见的配置传值
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (1)Android开发优化---------UI优化
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (ZT)一个美国文科博士的YardLife
  • (附源码)计算机毕业设计ssm电影分享网站
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .net 后台导出excel ,word
  • .NET上SQLite的连接
  • /bin/rm: 参数列表过长"的解决办法
  • ??javascript里的变量问题