遍历C中进程的进程层次结构

时间:2016-11-29 11:01:24

标签: c linux

我目前正在开发一个程序来跟踪linux中某个进程的层次结构的内存使用情况。虽然可以很容易地找到父ID,但很难找到该特定过程的孩子。有没有什么方法可以找到进程中的所有子进程及其子进程等,而无需使用shell脚本?

1 个答案:

答案 0 :(得分:1)

流程层次结构是另一种方式 - 孩子跟踪他们的父母。 您必须通过整个/proc来检查每个进程的父级。这就是所有这些工具的实现:

或者,如果您可以从一开始就监控该过程,例如与strace类似,您可以跟踪所有fork / clone系统调用并记录返回的子pid。