【发布时间】:2021-01-18 18:45:51
【问题描述】:
假设我有以下程序
pid_t pid = fork(); // fork #1
pid = fork(); // fork #2
现在我们有什么:
- Fork #1 创建一个额外的进程。所以现在我们有两个 进程。
- Fork #2 由两个进程执行,创建两个 进程,共四个。
我的困惑是在第一次分叉之后我们将有两个进程 P1(父)和 C1(子)。每个进程将执行第二次分叉一次。那么我们不应该有 6 个进程,因为 P1 会再创建两个,C1 也会创建?还是只有 P1 可以执行第二个 fork 创建 P2 C2
【问题讨论】:
标签: c linux process operating-system fork