#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
int nSubprocess_count = 0;
int nFork_result;
int main()
{
nFork_result = fork();
while(nFork_result == 0)
{
printf("child %d from parent %d\n", getpid(), getppid());
nSubprocess_count += 1;
if(nSubprocess_count < 10)
nFork_result = fork();
else
break;
}
if(nFork_result != 0)
printf("parent %d\n", getpid());
sleep(5);
}