编写一段程序(程序名为fork.c),使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示字符“a”,子进程分别显示字符“b”和字符“c”。试观察记录屏幕上的显示结果,并分析原因。
(1)进入Linux操作系统。
(2)打开终端,进入vi编辑器
(3)输入源程序代码。
#include<stdio.h>
#include<sys/types.h>
#include<unistd.h>
int main()
{
intpid1,pid2;
printf("a\n");
if((pid1=fork())<0)
{
printf("Child1fail create!\n");
return1;
}
elseif(pid1==0)
{
printf("b\n");
return;
}
if((pid2=fork())<0)
{
printf("Child2fail create!\n");
return1;
}
elseif(pid2==0)
{
printf("c\n");
return;
}
}
(4)按Esc键,进入命令模式后,输入“:wq文件名”就可以运行该程序了。