Di solito è del tutto fattibile registrare i processi figlio ogni volta che ne avvii uno. opportunamente, al processo genitore viene passato il valore pid del processo figlio come valore di ritorno della chiamata fork che lo crea.
Come dice la pagina man:
pid_t fork(void);
Sarebbe utile se potessi dirci perché pensi che non sia fattibile.
Trovo strano il tuo commento secondo cui non è possibile registrare la creazione di processi, ma se davvero non puoi (probabilmente perché non sai quanti ne verranno creati e non vuoi dover mantenere realloc
ing memory), quindi probabilmente aprirei tutti i file che corrispondono al glob /proc/[1-9]*/status
e cerca la riga che dice PPid: <num>
dove <num>
era il mio ID processo.