Linux 查看 CPU 使用情况
本帖最后由 非凡云 于 2025-3-18 11:05 编辑在 Linux 系统中,查看 CPU 使用情况是性能分析和故障排查的重要环节。查看 CPU 使用情况,使用 top 命令或者 htop 命令来查看。
top 命令是 Linux 的一个快速动态进程监视器,可以实时显示特定系统监视器核心指标,示例如下:
1. top 命令
toptop - 19:30:10 up2: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从上面的情况来看,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 显示线程级数据。
使用 htop 查看 CPU 使用情况,它可以显示更详细的信息,包括内存使用情况、进程、CPU 使用率等。使用htop 命令后,可以看到 CPU 的状态:
2. htop 命令
htop PID USER PRNI VIRT RES SHR S%CPU %MEM TIME+ COMMAND
3 root 20 0 8572 768 584 S0.00.1 0:00.01 init
4 root 20 0 0 0 0 S0.00.0 0:00.00 kthreadd优势:比 top 更友好的交互式界面,支持颜色标记、鼠标操作和垂直/水平滚动。
htop 命令还可以读到进程的 PID , USER 名,PR 和 NI 的优先级以及 CPU 的占用率等等,从而更加直观地了解各个进程和 CPU 的使用情况。
多核 CPU 分析
3. mpstat 命令
mpstat -P ALL 1# 每秒报告所有 CPU 核心的使用情况
[*]来源: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)。
[*]特点:结合 CPU、内存、I/O 综合分析。
查看 CPU 使用情况,有助于 Linux 管理员深层次地探究性能状况,找出进程所占系统资源的大小,检查 CPU 运行率是否过高,查看 CPU 是否存在僵尸进程等,可以很方便的查看关键的系统指标,进而优化 Linux 系统的性能。
非凡云(ffy.com)一个品质可靠,高性价比的云服务平台。3 证资质齐全 IDC+ISP+ICP ,成熟技术团队服务稳定。
页:
[1]