实验2 进程创建与控制实验一、实验目的1. 加深对进程概念的理解2. 练****使用fork()系统调用创建进程3. 练****使用wait()系统调用实现进程同步4. 进一步练****Linux操作系统下C程序设计二、实验内容:使用fork()i数列是0,1,1,2,3,5,8……。通常表示为:fib0=0,fib1=1,fibn=fibn-1+fibn-2…写一个C程序,使用fork()i数列,序列项数通过命令行输入。例如,如果参数为5,i数列的前5个数字将在子进程中被输出。因为父进程和子进程拥有各自的数据拷贝,所以需要由子进程输出。在退出程序之前,父进程调用wait()等待子进程完成。要求提供必要的错误检测以保证在命令行传递的参数是非负数。三、实验结果1. 源代码:#include<>#include<>#include<>#include<sys/>intmain(intargc,char*argv[]){pid_tpid;inti;intf0,f1,f2;f0=0;f1=1;if(argv[1]<0)fprintf(stderr,"Requestanun-negativenumber");pid=fork();if(pid<0){fprintf(stderr,"Forkfailed");exit(-1);}elseif(pid==0){printf("argv[1]=%d\n",atoi(argv[1]));printf("01");for(i=2;i<=atoi(argv[1]);i++){f2=f0+f1;f0=f1;f1=f2;printf("%d",f2);}printf("\pleted\n");}else{wait(NULL);printf("parentprocessexited");}return0;}2. 结果截图:
实验2进程创建与控制实验 来自淘豆网www.taodocs.com转载请标明出处.