top终端详解
创始人
2025-05-30 04:56:23
0

1.top命令行使用
2.top每行意义
3.补充

1.top命令行使用

top命令是一个常用的Linux系统命令,用于实时查看系统的运行状态和进程信息。下面是top命令的几个常用参数的含义:

-d seconds:设置top命令的更新间隔时间,单位是秒。默认是3秒。
-n iterations:设置top命令的运行次数,也就是显示几次系统的运行状态和进程信息后退出。默认是无限循环。
-p pid:显示指定进程ID的信息。
-U username:只显示指定用户名的进程信息。
-u username:只显示指定用户名的进程信息,同时显示详细的CPU使用情况。
-H:显示进程树,即每个进程的子进程信息。
-i:不显示闲置进程,只显示正在运行的进程信息。
-c:显示完整的进程命令行信息。
-M:按照内存使用量进行排序。
-k:以KB为单位显示内存使用情况。
-b:以批处理模式运行top

2.top每行意义

top命令在终端中的前5行展示了系统的一些概要信息,具体包括:
第一行展示了当前时间,系统已经运行的时间,登录用户的数量以及系统的平均负载情况。平均负载是指一段时间内系统处于运行状态的进程数量的平均值,如果平均负载高于CPU核心数量的70%以上,那么就表示系统处于高负载状态。
第二行展示了CPU的使用情况,包括CPU的总体使用率和各个CPU核心的使用情况。
第三行展示了物理内存的使用情况,包括总内存大小、已使用的内存、空闲的内存以及缓存和缓冲区使用的内存大小。
第四行展示了交换分区(Swap)的使用情况,包括总大小、已使用的交换分区、空闲的交换分区以及交换分区被使用的比例。
第五行展示了系统的任务队列情况,包括正在运行的进程数量、等待CPU时间片的进程数量以及处于休眠状态的进程数量。
第五行具体字节意义:

PID:进程的ID号。
USER:进程的所有者。
PR:进程的优先级。
NI:进程的优先级nice值。
VIRT:进程使用的虚拟内存大小。
RES:进程使用的物理内存大小。
SHR:进程使用的共享内存大小。
S:进程的状态(R表示运行,S表示睡眠,Z表示僵尸进程)。
%CPU:进程使用CPU的百分比。
%MEM:进程使用物理内存的百分比。
TIME+:进程使用的CPU时间。
COMMAND:进程的命令行。

除了以上列出的参数之外,top命令的交互界面中还可以使用各种快捷键来执行不同的操作,如按下k可以杀死指定的进程,按下H可以显示进程的树形结构等等。在top命令的交互界面中,按下h可以查看所有可用的快捷键和其功能。
第三行具体字节意义:

展示了物理内存的使用情况,包括total(总内存大小)、used(已使用的内存大小)、free(空闲的内存大小)、shared(被共享的内存大小)、buffers(被缓冲的内存大小)以及cached(被缓存的内存大小)。这些数值的单位通常是以KiB(千字节)为基础单位,因此需要将数值转换为更常用的单位(如GB)时,需要进行单位转换。
以7700 total为例,它表示系统的总内存大小为7700 KiB,将其转换为GB,可以使用以下公式: 7700 KiB ÷ 1024 =
7.52 GB(保留两位小数) 因此,7700 total表示系统的总内存大小为7.52 GB。类似地,对于其他的内存使用情况参数,也需要进行单位转换才能更好地理解和分析系统的内存使用情况。

在top命令第三行中,used、buffers和cached分别表示已使用的内存大小、被缓冲的内存大小和被缓存的内存大小。它们之间的区别如下:

used:表示系统当前正在使用的内存大小,包括被进程占用的内存、被内核占用的内存以及其他系统组件占用的内存。
buffers:表示被缓冲的内存大小,包括文件系统缓存和磁盘I/O缓存等。缓存是为了提高系统性能而设置的一种机制,它可以减少磁盘I/O操作的次数,从而加快文件读写的速度。
cached:也表示被缓存的内存大小,包括页面缓存和目录缓存等。页面缓存是为了加速文件读取而设置的一种机制,它将经常读取的文件数据缓存在内存中,从而加快文件读取的速度;目录缓存则是为了加速目录操作而设置的一种机制,它将文件系统中的目录项缓存在内存中,从而加快目录操作的速度。
而buffers和cached之间的区别在于缓存的内容不同,buffers主要缓存的是磁盘I/O操作所涉及到的数据块,而cached主要缓存的是经常读取的文件数据和目录项等。

可以将buffers/cached理解为被占用的内存,但是它们并不属于正在使用的内存(即used),因为它们可以随时被释放以供其他进程使用。当系统需要更多的内存时,它们就会被操作系统回收,从而让更多的内存可用于进程使用。因此,在评估系统的内存使用情况时,需要综合考虑used、buffers和cached等参数。

3.补充:

在终端中输入 “top” 命令,然后按 “Shift + h” 键可以查看所有线程的信息。
你可以在线程名前加一个 “grep” 命令来过滤线程信息,例如:

top -H | grep MyThread
std::thread t(thread_func);pthread_setname_np(t.native_handle(), "MyThread");

相关内容

热门资讯

Python+Yolov5跌倒... Python+Yolov5跌倒检测 摔倒检测 人物目标行为 人体特征识别如需安装运行环境或远...
【Python】Python ... 一、Python 背景知识 1、Python 的由来 吉多·范罗苏姆(Guido va...
职业病防治法宣传周活动方案2...   所谓职业病,是指企业、事业单位和个体经济组织(用人单位)的劳动者在职业活动中,因接触粉尘、放射性...
SAP 发出商品业务配置 SAP发出商品业务配置,即: 出具销售发票时结转成本  一、业务背景&#...
社群营销活动策划方案 社群营销活动策划方案(精选5篇)  为了保障活动顺利、圆满进行,通常需要预先制定一份完整的活动方案,...
树莓派搭建边缘网关环境 首先安装 jdk1.8 2 . sudo vim /etc/profile 编辑环境 JAVA_HO...
网上祭英烈活动总结 网上祭英烈活动总结(精选14篇)  在经历了某次活动以后,我们既增长了见识,也锻炼自身,是时候静下心...
学困生辅导计划及措施 学困生辅导计划及措施  学困生辅导计划及措施(精选11篇)  在我们平凡的日常里,措施在生活中的使用...
庆祝教师节的活动方案 关于庆祝教师节的活动方案(精选5篇)  为了确保活动能有条不紊地开展,常常需要预先准备活动方案,活动...
[simulink] --- ... 1 Simulink信号概述 所谓信号,表示一种随着时间而变化的量,在时...
感恩节活动策划 感恩节活动策划(通用21篇)  为了确保活动有效开展,就不得不需要事先制定活动方案,活动方案具有内容...
javaweb窗口服务人员分析... A)后台管理员模块:通过该功能模块,管理员可以修改自己的密...
国庆满减活动促销方案 国庆满减活动促销方案范文(精选13篇)  为了确保活动能无误进行,常常需要预先制定活动方案,活动方案...
青春派对放飞梦想的团日晚会活... 青春派对放飞梦想的团日晚会活动方案  每一个活动都让参与者有所收获,每一个活动都会让一个集体有了新的...
5.12防震减灾日的活动方案 5.12防震减灾日的活动方案(精选5篇)  为有力保证活动开展的质量水平,常常需要提前进行细致的活动...
顺序表和链表的区别 顺序表链表存储空间上物理上一定连续逻辑上连续,但物理上不一定连续随机访问支持[O(1)...
【云原生】Kubernetes... 【云原生】Kubernetes集群升级指南前言一、集群升级过程辅助命令二、升级master节点2.1...
淘宝光棍节活动策划方案 淘宝光棍节活动策划方案  为保证活动高起点、高质量、高水平开展,通常需要预先制定一份完整的活动方案,...
幼儿园小班劳动节活动方案 幼儿园小班劳动节活动方案(通用10篇)  为了确定活动的圆满进行,往往需要预先进行活动方案制定工作,...
淘宝活动方案 淘宝活动方案(通用15篇)  为了确保事情或工作能无误进行,往往需要预先制定好方案,方案是阐明具体行...