#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>

int main(int argc, char **argv)
{
 pid_t kind1;

 while(1)
  {
   switch(kind1=fork())
    {
     case -1 :  printf("Fehler bei fork()..........\n");  exit(0);
      case 0 :  printf("Kindprozess sagt : Mein PID ist %d\n",getpid());
                printf("Kindprozess sagt : Meine Eltern die mich erzeugt habe haben die PID %d\n",getppid());
                exit(1);
      default : printf("Elternprozess sagt : Ich habe folgendes Kind PID : %d\n",kind1);
                printf("Elternprozess sagt : Meine PID lautet %d\n",getpid());
                printf("Elternprozess sagt : Ich bin kein Waisenkind und die PID meiner Eltern lautet %d\n",getppid());
                exit(2);
    }
  }
 return 0;
}