如果我有一个生成子进程的进程,是否有一个好方法来获取表示该进程及其子进程的 CPU 综合使用率的单个数字?即是否有一个简单的 shell 命令可用,或者 /proc 中可能有一些信息?
目标操作系统是 Centos 或 Ubuntu。
答案1
以这种方式运行一个进程:
time scriptname # or
time command
它将报告孩子加父母的总和
一旦添加守护进程这个词,情况就会发生变化。顶部将显示近似值,top -p [pid]
您还可以使用 C 或 perl 或 python 读取 /proc[pid]/stat.utime 和朋友(utime、stime、cuttime、cstime(以 c 开头的孩子))。一般来说,一旦习惯了这些数据,您可能会发现系统时间和用户时间对于性能评估变得与总 CPU 时间一样重要。
ps -p [pid] -o %cpu
信息量不是很大——它只显示当前使用的 cpu 数量,而不是累计时间。