Ho fatto così:

Codice PHP:
#include <unistd.h>
#include <sys/types.h>
#include <sys/wait.h>
void main(void)
{
 
int i;
 
pid_t pid[10];
 for(
010i++)
 {
 
//genero un nuovo processo figlio
  
pid[i] = fork();
 
//se fork restituisce -1 c'è stato un errore ed esco
  
if(pid[i] == -1)
   exit();
 
//se pid == 0 sono il filgio, quindi esco dal for
  
if(pid[i] == 0)
   break;
 }
 
//se sono un processo figlio mi fermo per 10 secondi
 
if(pid[i] == 0)
 {
  
sleep(1);
  
printf("Sono il processo numero %d con pid %d\n",i+1,getpid);
 }
 
//Se sono il padre...
 
else
 {
  
// aspetto la terminazione di tutti i figli
  
for(010i++)
   
waitpid(pid[i],NULL,0);
  
// stampo la classifica...
  
printf("Sono il processo padre\n");
 }

ma non capisco perchè il pid dei 10 figli è sempre uguale (come se fosse sempre lo stesso figlio...).