CPU time that accton (psacct)records——记录父子进程之间的时间关系

CPU time that accton (psacct)records——记录父子进程之间的时间关系

我已经打开了“accton”(在 psacct-6.3.2-63.el6_3.3.x86_64 包中),因为我希望能够报告特定进程(所以我编写了一个脚本,该脚本将采用psacct 文件并获取我想要的信息)。

我无法确定的是如何处理与父进程和子进程相关的分叉进程时间。
因此问题是:
父进程是否拥有所有子进程及其自身的累积时间?系统、用户和经过时间之间的关系是否有所不同?

在我的情况下,理解孩子和家长处理时间之间的这种行为是相当重要的。

提前致谢,
塞巴斯蒂安

答案1

所有时间都是针对每个进程的(在旧版本的 Linux 中,它们是针对每个线程的)。计量从进程分叉时开始,持续到其所有执行者,并在进程退出时结束。不包括其子级的时间;当孩子退出时,它们可以在每个孩子的各自记录中找到。如果您使用 acct_v3 格式,记录包括 pid 和 ppid,因此理论上可以重建进程树并计算getrusage(RUSAGE_CHILDREN,...).

相关内容