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%。