Il pid restituito dalla fork serve essenzialmente a distinguere il padre dai figli.
Se devi fare comunicare il padre con i figli ti conviene salvare i pid restituiti dalla fork in un vettore.
I figli hanno meno problemi, perché hanno due ottime funzioni per conoscere la propria identità e quella del padre:

codice:
pid_t getpid(); //restituisce il pid del processo chiamante
pid_t getppid(); //restituisce il pid del padre del chiamante