繁体   English   中英

Unix fork:创建了多少个进程?

[英]Unix fork: how many processes are created?

嗨,我正在练习操作系统概念第9版第3章,有一个“创建了多少个进程,包括父进程?” 问题令我困惑。 代码在C中使用Unix系统调用,fork():

#include <stdio.h>
#include <unistd.h>

int main(){

fork();
fork();
fork();

return 0;
}

有什么好友回答这个问题? 谢谢

fork(); 

1st fork从运行进程(main)创建了新进程。 在System现在有两个过程

fork();

两个进程中的每一个都再次调用fork。 因此创建了两个新流程。 所以现在共有四个过程在系统中

fork();

现在每四个进程调用fork。 所以再创造了四个新流程。 所以在最后一次调用fork()之后创建了总共八个进程;

我猜它是8,像1 - > 2 - > 4 - > 8

共有8个过程,包括父过程。 这里, 使用fork()的进程数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM