• Linux | Centos下几种CPU查看使用率的常用命令


    一、top

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器,下面详细介
    绍它的使用方法;
    top是一个动态显示过程,即可通过用户按键来不断刷新当前状态。如果在前台执行该命令,它将独占前台,直到用户终止该程序为
    止。top命令提供了实时的对系统处理器的状态监视;它将显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU
    占用率等;
    
    • 1
    • 2
    • 3
    • 4
    • 5

    1.1 常用参数

    -b:批处理
    
    -c:显示完整的治命令
    
    -I:忽略失效过程
    
    -s:保密模式
    
    -S:累积模式
    
    -i<时间>:设置间隔时间
    
    -u<用户名>:指定用户名
    
    -p<进程号>:指定进程
    
    -n<次数>:循环显示的次数
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    在这里插入图片描述

    top命令可以看到总体的系统运行状态和cpu的使用率;
    %us:表示用户空间程序的cpu使用率(没有通过nice调度);
    %sy:表示系统空间的cpu使用率,主要是内核程序;
    %ni:表示用户空间且通过nice调度过的程序的cpu使用率;
    %id:空闲cpu;
    %wa:cpu运行时在等待io的时间;
    %hi:cpu处理硬中断的数量;
    %si:cpu处理软中断的数量;
    %st:被虚拟机偷走的cpu;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    PID:进程标示号
    USER:进程所有者
    PR:进程优先级
    NI:进程优先级别数值
    VIRT:进程占用的虚拟内存值
    RES:进程占用的物理内存值
    SHR :进程使用的共享内存值
    S :进程的状态,其中S表示休眠,R表示正在运行,Z表示僵尸进程
    %CPU :进程占用的CPU使用率
    %MEM :进程占用的物理内存百分比
    TIME+:进程启动后占用的总的CPU时间
    Command:进程启动的启动命令名称
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    二、free

    在这里插入图片描述

    total:总计物理内存的大小
    used:已使用多大
    free:可用有多少
    Shared:多个进程共享的内存总额
    Buffers/cached:磁盘缓存的大小
    
    • 1
    • 2
    • 3
    • 4
    • 5

    三、vmstat

    显示Linux虚拟内存统计信息:进程、内存、分页、IO和 cpu 活动的信息;
    - 不需要特殊权限;
    
    • 1
    • 2

    在这里插入图片描述

    3.1 常用参数

    -a:开关显示活动/非活动内存;
    -f:开关显示自引导以来的分叉数。这包括 fork、vfork 和 clone 系统调用,相当于创建的任务总数。每个进程由一个或多个任务表示,具体取决于线程使用情况。此显示不重复。
    -t:开关将时间戳添加到输出;
    -m:开关显示slabinfo;
    -n:开关使标头仅显示一次,而不是定期显示;
    -s:开关显示各种事件计数器和内存统计信息的表格。此显示不重复;
    -delay:是更新之间的延迟(以秒为单位)。如果未指定延迟,则仅打印一份报告,其中包含自启动以来的平均值;
    -count:是更新的次数。如果未指定计数并定义了延迟,则计数默认为无穷大;
    -d:报告磁盘统计信息;
    -w:扩大大内存大小 的字段宽度;
    -p:后跟一些分区名称以获取详细统计信息;
    -S:后跟 k 或 K 或 m 或 M在1000、1024、1000000 或 1048576 字节之间切换输出;
    -V:开关导致显示版本信息 。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    3.2 获取信息

    在这里插入图片描述

    procs

    r:在运行队列中等待的进程数;
    b:在等待io的进程数;
    
    • 1
    • 2

    memory

    swpd:现时可用的交换内存(单位KB); 
    free:空闲的内存(单位KB);
    buff:缓冲去中的内存数(单位:KB);
    cache:被用来做为高速缓存的内存数(单位:KB);
    
    • 1
    • 2
    • 3
    • 4

    swap

    si: 从磁盘交换到内存的交换页数量,单位:KB/秒;
    so: 从内存交换到磁盘的交换页数量,单位:KB/秒;
    
    • 1
    • 2

    io

    bi: 发送到块设备的块数,单位:块/秒;
    bo: 从块设备接收到的块数,单位:块/秒;
    
    • 1
    • 2

    system

    in: 每秒的中断数,包括时钟中断;
    cs: 每秒的环境(上下文)转换次数;
    
    • 1
    • 2

    cpu

    cs:用户进程使用的时间 。以百分比表示;
    sy:系统进程使用的时间。 以百分比表示;
    id:中央处理器的空闲时间 。以百分比表示;
    
    • 1
    • 2
    • 3

    四、mpstat

    是实时系统监控工具。其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中。在多CPUs系统里,其不 但能查看所有
    CPU的平均状况信息,而且能够查看特定CPU的信息;
    
    【命令】:
    mpstat [-P {|ALL}] [internal [count]]
    - -P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值
    - internal 相邻的两次采样的间隔时间
    - count 采样的次数,count只能和delay一起使用
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    4.1 安装

    yum install sysstat
    
    • 1

    4.2 获取信息

    在这里插入图片描述

    user:在internal时间段里,用户态的CPU时间(%),不包含nice值为负进程,值为 (usr/total)*100;
    nice:在internal时间段里,nice值为负进程的CPU时间(%),值为(nice/total)*100;
    system:在internal时间段里,核心时间(%),值为(system/total)*100;
    iowait:在internal时间段里,硬盘IO等待时间(%),值为(iowait/total)*100;
    irq:在internal时间段里,硬中断时间(%),值为(irq/total)*100;
    soft:在internal时间段里,软中断时间(%),值为(softirq/total)*100;
    idle:在internal时间段里,CPU除去等待磁盘IO操作外的因为任何原因而空闲的时间闲置时间(%),值为(idle/total)*100;
    intr/s:在internal时间段里,每秒CPU接收的中断的次数,值为(intr/total)*100
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
  • 相关阅读:
    windows10无线网络未连接打红叉怎么办
    java基于SpringBoot+Vue的社区菜店 线上买菜系统elementui
    聊聊Zookeeper技术内幕之客户端与SetData请求处理
    【vue设计与实现】挂载和更新 4-卸载操作&区分vnode的类型
    大数据,对于生活的改变
    Fragment系列:使用FrameLayout动态加载
    华为静态路由配置实验(超详细讲解+详细命令行)
    [CISCN2019 华北赛区 Day1 Web2]ikun
    python爬虫(3)
    JavaEE——Servlet生命周期
  • 原文地址:https://blog.csdn.net/weixin_45926547/article/details/126141295