non mi sembra un problema molto complesso, puoi seguire la strada che hai suggerito, prova a buttarla giù.
Se invece non ti è chiaro il funzionamento di fork precisa il problema che incontri.
Ricordati che ogni processo filglio ha il proprio id. Nella directory /proc trovi tutti i processi in corso e puoi in ogni istante discriminare i processi attivi e gli zombi. Studiati il contenuto di proc (trovi un link all'eseguibile, le variabili di ambiente, la directory dell'eseguibile a molte altre cose). Attraverso l'analisi di proc potresti tenere conto dei figli attualmente in vita.
Se poi hai uno specifico dubbio chiedi pure.
ciao
sergio