fork(6) download
  1. #include <stdio.h>
  2. #include <unistd.h>
  3. #include <stdlib.h>
  4. //----------------------------------------------------------
  5. int
  6. main (void)
  7. {
  8. pid_t pid;
  9. //
  10. printf ("Io sono il genitore e il mio numero PID "
  11. "è %i.\n",
  12. (int) getpid ());
  13. pid = fork ();
  14. if (pid == 0)
  15. {
  16. printf ("Io sono il figlio della biforcazione "
  17. "e il mio genitore ha il numero "
  18. "PID %i.\n", (int) getppid ());
  19. exit (0);
  20. }
  21. else
  22. {
  23. printf ("Ho avviato una biforcazione di me "
  24. "stesso, la quale ha ottenuto il "
  25. "numero PID %i.\n", pid);
  26. }
  27. return (0);
  28. }
Success #stdin #stdout 0.01s 1720KB
stdin
Standard input is empty
stdout
Io sono il genitore e il mio numero PID è 7182.
Ho avviato una biforcazione di me stesso, la quale ha ottenuto il numero PID 7185.
Io sono il genitore e il mio numero PID è 7182.
Io sono il figlio della biforcazione e il mio genitore ha il numero PID 1.