I was running the program
#include<stdio.h>
#include <unistd.h>
main()
{
pid_t pid, ppid;
printf("Hello World1
");
pid=fork();
if(pid==0)
{
printf("I am the child
");
printf("The PID of child is %d
",getpid());
printf("The PID of parent of child is %d
",getppid());
}
else
{
printf("I am the parent
");
printf("The PID of parent is %d
",getpid());
printf("The PID of parent of parent is %d
",getppid());
}
}
THe output I got was.
$ ./a.out
Hello World1
I am the parent
The PID of parent is 3071
The PID of parent of parent is 2456
I am the child
The PID of child is 3072
The PID of parent of child is 1
I couldnt understand the line
The PID of parent of child is 1
It should have been 3071?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…