top和ps的cpu区别

CPU使用率计算方式:

top 命令计算的是在固定时间间隔内,每个进程占用CPU的时间百分比,因此它能反映进程的实时CPU使用情况。top 中的CPU使用率之和可能超过100%,因为在多核系统中,每个核心的使用率可以单独计算,然后加总。

javascript 复制代码
例如:进程A,在多核(2核)的情况下,top默认统计时间间隔3秒
比如核1在三秒内,执行了A的相关任务2秒,核2执行了A的相关任务2秒
因此%cpu = (2 + 2) / 3 ≈ 133.333%。

ps 命令通常显示的是进程生命周期内的平均CPU使用率。这意味着它提供的CPU使用率是基于进程启动以来的总体使用情况,可能不如top实时。

javascript 复制代码
例如:进程A,在多核(2核)的情况下,进程从启动到现在运行了30分钟
在这30分钟内,核1执行进程A的相关任务15分钟,核2执行进程A相关任务20分钟
因此%cpu = (15 + 30) / 2 / 30 ≈ 58.333%。
相关推荐
Shadow(⊙o⊙)2 分钟前
Linux网络——文件与网络的连接桥梁struct sock {
linux·运维·网络
新时代牛马15 分钟前
Linux 性能调优与追踪完整篇:ftrace、perf、eBPF从采样到落地验证
linux·运维·服务器
sunoo-22923 分钟前
【网络编程 + 数据库】select 与 epoll 核心区别详解 + SQLite 入门到 C 接口全攻略
linux·网络·数据库·vscode·学习·sqlite
zbyyd27 分钟前
Linux 系统编程 :select/epoll 多路复用与 SQLite 数据库实战
linux·数据库·sqlite
Mortalbreeze36 分钟前
深入理解 Linux IO 模型(二):多路复用——select
linux·运维·服务器·网络·tcp/ip
koi77u1 小时前
嵌入式学习———sqlite数据表
linux·数据库·学习·sqlite
笑梦无境1 小时前
nginx安装(5)
linux·运维·nginx
xx~t1 小时前
嵌入式——Linux软件编程——数据库
linux·c语言·数据库·oracle·sqlite
流浪0011 小时前
Linux系统篇26——通信(三)补:共享内存访问真的不进内核?
linux·运维·服务器
不会就选b1 小时前
Linux之socket编程(七)----序列化与反序列化(1)
java·linux·服务器