linux proc pid stat,linux – 如何从/ proc/pid/stat获取应用程序的总CPU使用率?

制备

要计算特定进程的CPU使用率,您需要以下内容:

>系统的#1正常运行时间(秒)

>#14 utime – 在用户代码中花费的CPU时间,以时钟节拍为单位

>#15 stime – 在内核代码中花费的CPU时间,以时钟节拍为单位

>#16 cutime – 等待儿童在用户代码中花费的CPU时间(在时钟节拍中)

>#17 cstime – 等待孩子的CPU时间花在内核代码(在时钟滴答)

>#22 starttime – 进程开始的时间,以时钟节拍为单位

> Hertz(每秒的时钟滴答数)。

>在大多数情况下,getconf CLK_TCK可用于返回时钟滴答的数量。

> sysconf(_SC_CLK_TCK) C函数调用也可用于返回赫兹值。

计算

首先,我们确定该过程花费的总时间:

total_time = utime + stime

我们还必须决定是否要包括来自儿童过程的时间。如果我们这样做,那么我们将这些值添加到total_time:

total_time = total_time + cutime + cstime

接下来,我们得到从进程开始以来的总经过时间(秒):

seconds = uptime - (starttime / Hertz)

最后,我们计算CPU使用百分比:

cpu_usage = 100 * ((total_time / Hertz) / seconds)

也可以看看

07004

07005

07006

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值