基本上是考试中的一个问题。他们要求绘制过程树对以下问题的看法。我希望有人愿意帮助并向我解释如何进行跟踪
这是A的答案,我也不明白。
答案 0 :(得分:1)
有2个fork调用,并且没有任何条件,因此我们必须以4个进程结束(这是您在图片上看到的第一件事)
详细情况:
第一个根进程存在。
然后分叉 所以我们有进程根(1)和子进程(2) 然后,发生另一个对fork的调用,并且在子节点和root用户中都完成了,因此两个进程都将进行fork,因此:
root - fork() ----------- fork() -----
\ \--- child (3)
\--child (2)-- fork() ------
\---- child (4)
这就是你的照片 (显然,不能真正预测3是否会在4之前产生,因此4可能是第二个根孩子,而3可能是2的孩子)