Bash Linux:有没有办法计算进程使用的实际CPU百分比

时间:2014-07-10 07:35:22

标签: bash

有没有办法找到每个进程的实际%CPU使用率(内核和用户模式),而无需从/ proc / PID / stat计算。目前我正在编写一个bash文件来计算进程的实际CPU使用率。 PS aux仅在用户模式下显示%CPU

1 个答案:

答案 0 :(得分:0)

我认为我不明白我犯了一个错误。

例如,我使用top来检查cpu(3个CPU)的使用情况,整体CPU使用率是68.5%(100 - 空闲),当我为所有进程加起来所有CPU并除以3个cpu时,如何来,我得不到相同的结果(68.5%)

Cpu(s):6.8%us,59.0%sy,0.0%ni,32.5%id,0.0%wa,1.6%hi,0.0%si,0.0%st

                                      CPU         

17980 root 20 0 103m 1204 1044 S 20.3 0.1 0:19.44 testSpeedK.sh
37213 root 20 0 103m 1204 1044 R 19.6 0.1 42:22.36 testSpeedK.sh
 2333 root 20 0 173m 42m 5708 S 3.3 2.3 5:06.73 Xorg
    7 root RT 0 0 0 0 S 2.7 0.0 3:01.22 migration / 1
 2825 root 20 0 292m 9304 4456 S 2.0 0.5 0:22.87 gnome-terminal
    3根RT 0 0 0 0 S 1.7 0.0 3:00.57迁移/ 0
   11 root RT 0 0 0 0 S 1.3 0.0 3:40.55 migration / 2
   15 root 20 0 0 0 0 S 0.3 0.0 0:27.64 events / 0
 1523 root 20 0 180m 2196 1712 S 0.3 0.1 0:33.01 vmtoolsd
 2657 root 20 0 438m 18m 9804 S 0.3 1.0 0:49.71 vmtoolsd
35295 root 20 0 15032 1316 952 R 0.3 0.1 0:00.04 top
    1 root 20 0 19356 972 752 S 0.0 0.1 0:01.77 init
    2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
    4 root 20 0 0 0 0 S 0.0 0.0 0:00.42 ksoftirqd / 0
    5根RT 0 0 0 0 S 0.0 0.0 0:00.00迁移/ 0
    6根RT 0 0 0 0 S 0.0 0.0 0:00.21看门狗/ 0
    8根RT 0 0 0 0 S 0.0 0.0 0:00.00迁移/ 1