【操作系统】运行下列程序,给出运行结果并分析运行结果?

#include<stdio.h>#include<unistd.h>intmain{inti;while((i=fork())==-1);printf("i=%d\n"... #include <stdio.h>
#include <unistd.h>
int main{
int i;
while((i=fork())==-1);
printf("i=%d\n",i);
if(i)
printf("the parent process pid=%d! \n",getpid());
else
printf("the child process pid=%d! \n",getpid());
}
展开
 我来答
lugoodboy
2022-09-18 · TA获得超过7.3万个赞
知道大有可为答主
回答量:1.3万
采纳率:86%
帮助的人:6202万
展开全部

运行程序:

创建子进程源程序



运行结果:

获得父子进程的Process Identification



分析运行结果:

创建新进程成功,出现两个进程,一个是子进程,一个是父进程。

父进程的Process Identification=3!

子进程的Process Identification=4!

fork仅仅被调用一次,却能够返回两次

 1)在父进程中,fork返回新创建子进程的进程ID=4;
2)在子进程中,fork返回0;

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式