fork()函数使用–实验
实验目的:理解程序创建新进程的方法,观察并发执行的现象。
实验原理:fork()建立子进程,子进程得到父进程地址空间的一个复制
实验内容:首先分析一下程序运行时其输出结果有哪几种可能性,然后实际调试该程序观察其实际输出情况,比较两者的差异,分析其中的原因。
void main(void){
int x=5;
if(fork()){
x+=30;
printf("%d\n",x);
}
else
printf("%d\n",x);
printf("%d\n",x);
}
实验过程:
实验源码:
#include<stdio.h>
#include<sys/types.h>
#include<unistd.h>
int main()
{
int x=5;
if(fork()) {
x+=30;
printf("%d\n",x);
} else
printf("%d\n",x);
printf("%d\n",x);
return 0;
}
实验结果:
(1) 5 5 35 35