首页 > 系统相关 >Linux top 命令详解

Linux top 命令详解

时间:2024-09-09 16:29:19浏览次数:1  
标签:优先级 top 系统 详解 内存 Linux 进程 CPU

Linux top 命令详解

主要功能和用途

  1. 实时监控:提供一个实时的、动态的视图,展示系统当前的状态。
  2. 进程管理:允许用户查看系统中各个进程的运行状态。
  3. 资源监控
    • CPU使用情况:监控CPU的总体使用率、用户空间占用率、系统空间占用率等。
    • 内存使用情况:展示物理内存和交换空间(swap)的使用情况,包括总量、已用量、空闲量等。
    • 进程资源占用:显示每个进程的虚拟内存使用量、物理内存使用量等。

基本用法

在终端中输入top命令并回车,即可启动top程序。默认情况下,它会显示系统中所有进程的列表,并按照CPU使用率进行排序。

top

主要界面元素

  • 顶部区域:显示系统的整体状态,包括当前时间、系统运行时间、登录用户数、平均负载等。平均负载是指在特定时间间隔内,系统处于运行状态和不可中断状态的平均进程数,是衡量系统负载的重要指标。
  • 任务(Tasks)区域:显示当前系统中进程的总数、正在运行的进程数、睡眠中的进程数、停止的进程数以及僵尸进程数。
  • CPU状态:展示CPU的使用情况,包括用户空间占用率、系统空间占用率、空闲率、等待IO时间等。
  • 内存(Mem)和交换空间(Swap)状态:显示物理内存和交换空间的使用情况,包括总量、已用量、空闲量、缓存量等。
  • 进程列表:列出系统中各个进程的详细信息,包括PID(进程ID)、用户、优先级、虚拟内存使用量、物理内存使用量、共享内存量、状态(如运行、睡眠、停止等)、CPU使用率、内存使用率、运行时间以及命令行名称等。

示例分析

image

  1. 系统时间和状态
    • 00:07:32 up 4:29:表示当前时间是00:07:32,系统已经运行了4小时29分钟
    • 4 users:当前有4个用户登录系统。
    • load average: 0.17, 0.27, 0.17:分别表示过去1分钟、5分钟、15分钟的平均负载。平均负载是指系统在特定时间间隔内等待CPU的平均进程数。这里的值表明系统负载较低,但过去1分钟的负载略高于其他时间段。
  2. 任务统计
    • Tasks: 226 total:系统中共有226个进程
    • 2 running:当前有2个进程正在运行
    • 224 sleeping:有224个进程处于睡眠状态,等待某些条件触发(如I/O操作)。
    • 0 stopped没有进程被停止
    • 0 zombie没有僵尸进程。僵尸进程是已经结束但父进程尚未通过调用wait()或waitpid()等待其结束状态的进程。
  3. CPU使用情况
    %Cpu(s): 0.6 us, 24.8 sy, 0.0 ni, 74.5 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st:
    • us(用户空间占用CPU百分比):0.6%
    • sy(内核空间占用CPU百分比):24.8%,us + sy 就是我们常说的CPU利用率,即 0.6% + 24.8% = 25.4%
    • ni(改变过优先级的进程占用CPU百分比):0.0%
    • id(空闲CPU百分比):74.5%,表明CPU大部分时间处于空闲状态。
    • wa(等待输入输出的CPU时间百分比):0.0%
    • hi(硬件中断):0.0%
    • si(软件中断):0.1%
    • st(虚拟机偷取时间):0.0%
  4. 内存和交换空间使用情况
    • KiB Mem:
      • 5178152 total:物理内存总量为5178152KB。
      • 321828 free:空闲内存为321828KB,内存使用率通常用 (total - free) / total 来计算
      • 1063612 used:已使用的内存为1063612KB。
      • 3792712 buff/cache:用作缓冲/缓存的内存为3792712KB。
    • KiB Swap:
      • 2097148 total:交换空间总量为2097148KB。
      • 2096884 free:空闲交换空间为2096884KB。
      • 264 used:已使用的交换空间为264KB。
      • 3799532 avail Mem:估计可用内存为3799532KB,这个值考虑了缓冲/缓存的内存,因为这些内存可以在需要时释放给应用程序使用。
  5. 进程详细信息
    • PID:进程ID,是系统中唯一标识每个进程的数字。
    • USER:运行该进程的用户名。
    • PR:进程的优先级。较低的数值表示较高的优先级。
    • NI:nice值,是一个影响进程优先级的值。负值表示较高的优先级,正值表示较低的优先级。
    • VIRT:虚拟内存大小,是进程使用的虚拟内存总量,包括进程使用的库、数据段、堆栈等。
    • RES:常驻内存大小,是进程当前占用的物理内存量(不包括交换出去的部分)。
    • SHR:共享内存大小,是可被多个进程共享的内存量。
    • S:进程状态,常见的状态有S(睡眠/可中断)、R(运行/正在执行)、D(不可中断睡眠)等。
    • %CPU:自进程启动以来占用的CPU百分比。
    • %MEM:进程使用的物理内存占总内存的百分比。
    • TIME+:进程占用的CPU时间总计,格式为分钟:秒。
    • COMMAND:启动进程的命令名/命令行。

常用选项

-u 用户名:仅显示指定用户的进程。
-n 次数:指定top命令更新的次数,之后自动退出。
-d 秒数:设置屏幕更新的间隔时间,默认为3秒。
-b:以批处理模式运行,通常与重定向结合使用,将输出保存到文件中。
-H:以线程模式显示,显示每个线程的详细信息,而非仅显示进程。

交互命令

在top运行时,用户可以通过一系列交互命令来改变显示的内容或排序方式:

P:以CPU使用率排序。
M:以内存使用率排序。
T:以时间/累计时间排序。
fF:进入字段管理界面,允许用户自定义显示的字段。
k:杀死一个进程,需要输入进程的PID和信号。
r:重新设定进程的优先级。
q:退出top。

标签:优先级,top,系统,详解,内存,Linux,进程,CPU
From: https://www.cnblogs.com/test-gang/p/18404626

相关文章

  • linux 清空文件内容的方式
    一、通过重定向来清空文件内容 ->通过shell重定向null到指定文件即可>access.log->重定向:或true到指定文件:>access.logtrue>access.log二、使用cat/cp/dd使用工具和/dev/null设备来清空文件内容->可以使用cat命令查看/dev/null文件的内容,然后重定向输出到......
  • 就这么学Linux 编写Shell脚本
    编写Shell脚本Shell脚本命令的工作方式有下面两种➢交互式:用户每输入一条命令就立即执行➢批处理:由用户事先编写好一个完整的Shell脚本,Shell会一次性执行脚本中诸多的命令.编写简单脚本当前系统已经默认使用Bash作为命令行终端解释器了echo$SHELL如果想查看当前所在工作......
  • Linux 基础命令
    Linux基础命令优秀教程1、史上最全的Linux常用命令汇总(超全面!超详细!)收藏这一篇就够了2、10分钟让你掌握Linux常用命令(+3万+++收藏)3、Linux常用命令大全4、着重推荐⭐⭐⭐Linux命令大全(手册)文件和目录操作ls:列出目录内容cd:切换目录pwd:显示当前工作目录mkdir:创建新目录cp......
  • 就这么学Linux 常用系统工作命令
    常用系统工作命令快捷键1、man2、echo3、date4、timedatectl5、reboot6、poweroff7、wget8、ps9、pstree10、top11、nice12、pidof13、kill14、killall快捷键tab:自动补全ctrl+C:终止进程ctrl+D:键盘输入结束CTRL+L:清屏1、manman命令中得信息结构2、echoecho命令用于在终端......
  • 【Linux】vim关闭终端的时候,忘记退出vim怎么办
    有些时候经常是关闭终端,但是忘记退出vim编辑的文本,每次登陆的时候会提示这个错误 其实很简单,在该文本的路径下,有一个隐藏文件叫.xxx.txt.swp文件(xxx就是你退出忘记关闭的文件名)、如果没找到的话,用ls-a查看就能看到这个文件就是罪魁祸首,删掉他就可以了rm-f.666.txt.swp......
  • 常用的linux命令以及详解
    Linux系统中包含了大量的命令,这些命令是用户与系统交互的主要方式。以下是一些常用的Linux命令及其详细解释:1.文件和目录操作ls:列出目录内容。ls:列出当前目录的文件和子目录。ls-l:以长格式列出文件和目录,包括权限、所有者、大小和修改时间。ls-a:显示所有文件,包括隐藏文......
  • linux系统usb设备的自动挂载、自动卸载(udev-media-automount)
    不推荐通过编辑/etc/fstab文件挂载方式,因为一旦拔掉硬盘或者更换硬盘后,系统就启动不起来了。这里推荐使用udev-media-automount开源网址: https://github.com/Ferk/udev-media-automount1、下载软件包:cd/目录,进入某个目录下,然后通过一下命令下载或者直接下载解压拷贝进去......
  • 【高级编程】实用类详解(补充)StringBuffer类 和 StringBuilder类
    文章目录为什么使用StringBuffer?StringBuffer1.声明2.常用方法3.举例4.时间戳StringBuilderStringBufferVSStringBuilder为什么使用StringBuffer?StringBuffer是Java中的一个可变字符序列类,允许在原始对象上进行修改,而不会生成新的字符串对象。与String比较......
  • 【高级编程】实用类详解(下)万字整理Java时间日期类 JDK8新日期
    文章目录日期时间DateSimpleDateFormatCalendarJDK8新日期LocalDateTime&LocalDate&LocalTimeDateTimeFormater计算Period&DurationzonedDateTimeInstant类型转换注意事项日期时间Datejava.util.Date类:表示日期和时间。提供操作日期和时间各组成部分的方法。......
  • 【北京迅为】itop-3588开发板快速测试手册-银河麒麟系统功能测试
    1系统启动命令行终端显示如下,进入 root 用户       2系统信息查询查看内核和 cpu 信息,输入如下命令:uname-a查看操作系统信息:cat/etc/issue查看环境变量信息:env     3背光测试背光的亮度设置范围为(0--255),255表示亮度最高,0 表示关闭背光亮度。进入系统后在终......