Linux 查看 CPU 使用情况

简介: 在 Linux 系统中,查看 CPU 使用情况是性能分析和故障排查的重要环节。查看 CPU 使用情况,使用 top 命令或者 htop 命令来查看。

在 Linux 系统中,查看 CPU 使用情况是性能分析和故障排查的重要环节。查看 CPU 使用情况,使用 top 命令或者 htop 命令来查看。

top 命令是 Linux 的一个快速动态进程监视器,可以实时显示特定系统监视器核心指标,示例如下:

1. top 命令

top
AI 代码解读
top - 19:30:10 up  2:33,  1 user,  load average: 0.44, 0.47, 0.45
Tasks: 183 total,   1 running,   1 sleeping,  182 stopped,   0 zombie
Cpu(s):  3.6%us,  0.3%sy,  0.0%ni, 95.7%id,  0.3%wa,  0.0%hi,  0.1%si,  0.0%st
AI 代码解读

从上面的情况来看,CPU 当前使用率为 3.6%us ,这部分使用率代表在用户空间内的 CPU 时间 ,另外的 0.3%sy 指代表系统空间内的 CPU 时间, 95.7%id 表示 CPU 当前空闲时间占总时间百分比。

核心功能:动态显示系统资源使用情况,默认按 CPU 占用排序。

关键指标

  • %Cpu(s) 行:

    • us:用户态进程占用 CPU 时间(非 root)。
    • sy:内核态进程占用 CPU 时间。
    • ni:调整过优先级的用户进程占用时间。
    • id:空闲时间(Idle)。
    • wa:等待 I/O 完成的时间(iowait)。
    • hi:硬件中断时间。
    • si:软件中断时间。
    • st:虚拟化环境下被偷取的时间(steal time)。

操作

  • 按 1 展开多核 CPU 详情。
  • 按 P 以 CPU 使用率排序。
  • 按 Shift + H 显示线程级数据。

2. htop 命令

使用 htop 查看 CPU 使用情况,它可以显示更详细的信息,包括内存使用情况、进程、CPU 使用率等。使用htop 命令后,可以看到 CPU 的状态:

htop
AI 代码解读
   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
   3 root           20   0    8572    768    584 S  0.0  0.1   0:00.01 init
   4 root           20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd
AI 代码解读

优势:比 top 更友好的交互式界面,支持颜色标记、鼠标操作和垂直/水平滚动。

htop 命令还可以读到进程的 PID , USER 名,PR 和 NI 的优先级以及 CPU 的占用率等等,从而更加直观地了解各个进程和 CPU 的使用情况。

多核 CPU 分析

3. mpstat 命令

mpstat -P ALL 1  # 每秒报告所有 CPU 核心的使用情况
AI 代码解读

来源:sysstat 工具包(需安装)。

  • 输出解析

    • %usr:用户态 CPU 使用率。
    • %nice:调整优先级的用户进程。
    • %sys:内核态 CPU 使用率。
    • %iowait:I/O 等待时间。
    • %irq:硬件中断时间。
    • %soft:软件中断时间。
    • %idle:空闲时间。
  • 用途:诊断 CPU 核心负载不均问题。

综合性能工具

4. vmstat 命令

vmstat 1 # 每秒输出一次系统状态

  • 核心指标
-   r:等待运行的进程数(可判断 CPU 是否饱和)。
-   us, sy, id, wa:同 top 的 CPU 分类。
-   cs:上下文切换次数(过高可能因进程争抢 CPU)。
AI 代码解读
  • 特点:结合 CPU、内存、I/O 综合分析。

查看 CPU 使用情况,有助于 Linux 管理员深层次地探究性能状况,找出进程所占系统资源的大小,检查 CPU 运行率是否过高,查看 CPU 是否存在僵尸进程等,可以很方便的查看关键的系统指标,进而优化 Linux 系统的性能。

目录
打赏
0
1
1
0
29
分享
相关文章
Linux使用cpulimit对CPU使用率进行限制
cpulimit是一款简单易用的CPU使用率限制工具,支持对特定程序或整个CPU使用率进行限制。可通过源安装(如`yum`或`apt-get`)或编译安装获取。使用时,可针对程序名、进程号或绝对路径设置CPU占用上限(如`cpulimit -e xmrig -l 60 -b`)。ROOT用户可限制所有进程,普通用户仅限于权限范围内进程。注意,CPU百分比基于实际核心数(单核100%,双核200%,依此类推)。
32 7
|
10天前
|
Linux系统中如何查看CPU信息
本文介绍了查看CPU核心信息的方法,包括使用`lscpu`命令和读取`/proc/cpuinfo`文件。`lscpu`能快速提供逻辑CPU数量、物理核心数、插槽数等基本信息;而`/proc/cpuinfo`则包含更详细的配置数据,如核心ID和处理器编号。此外,还介绍了如何通过`lscpu`和`dmidecode`命令获取CPU型号、制造商及序列号,并解释了CPU频率与缓存大小的相关信息。最后,详细解析了`lscpu`命令输出的各项参数含义,帮助用户更好地理解CPU的具体配置。
45 8
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
179 23
在Linux中,如何看当前系统有几颗物理CPU和每颗CPU的核数?
在Linux中,如何看当前系统有几颗物理CPU和每颗CPU的核数?
|
4月前
|
揭秘Linux内核:探索CPU拓扑结构
【10月更文挑战第26天】
108 1
深入探索Linux内核:CPU拓扑结构探测
【10月更文挑战第18天】在现代计算机系统中,CPU的拓扑结构对性能优化和资源管理至关重要。了解CPU的核心、线程、NUMA节点等信息,可以帮助开发者和系统管理员更好地调优应用程序和系统配置。本文将深入探讨如何在Linux内核中探测CPU拓扑结构,介绍相关工具和方法。
76 0
|
7月前
|
性能分析之 Linux 系统中 ps&top 中 CPU 百分比不一致?
【8月更文挑战第18天】性能分析之 Linux 系统中 ps&top 中 CPU 百分比不一致?
353 5
在Linux中,如何获取CPU的总核心数?
在Linux中,如何获取CPU的总核心数?
在Linux中,如何查找系统中占用CPU最高的进程?
在Linux中,如何查找系统中占用CPU最高的进程?