(1) 编写一个程序创建一个子进程,父进程随后挂起,子进程循环打印自己的进程号和父进程号,并对比ps查询到的进程号。
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main(int argc, char argv[])
{
pid_t pid;
int a=1;
int i;
if((pid=fork())<0)
{
printf(“error in fork!”);
exit(1);
}
else{
for(i=3;i>a;i++)
{
if(pid==0)
printf(“Child process ID is %d\n”,getpid());
else
printf(“Parent process ID is %d\n”,getpid());
}
}
return 0;
}
(2) 编写一个程序创建n个子进程p1, p2, p3 … pn,其中n由键盘输入,p(i)是p(i+1)的父进程,打印每个进程的进程号,父进程号和子进程号。
#include<stdio.h>
#include<unistd.h>
int main()
{
int i