#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>

#define is_child(P)  (P == 0)
#define N 4

main() {
  cadeia_procs();
  exit(0);
}

void cadeia_procs() 
{
  pid_t pai, new_proc;
  int i;

  for (i=1; i<=N; i++) {

    pai = getpid();
    new_proc = fork();

    if (is_child(new_proc))
      printf("FILHO %d: PID = %d\tPPID = %d\n", i, getpid(), pai);
    else
      break;
  }
  return;
}
