quindi dovrei fare un nipote e far far a lui quello che fa il figlio e quello che fa (adesso il padre) lo farà il figlio?Originariamente inviato da Habanero
se non ricordo male questo genere di problema si risolve in altro modo....
Il tuo processo shell se vuole lanciare un processo in background deve prima creare un figlio e questo a sua volta deve crearne un altro, quest'ultimo lancerà il tuo comando:
shell->figlio->nipote(comando)
dopo aver lanciato nipote(comando) il figlio deve terminare. Questo fa sì che nipote rimanga orfano. In questa situazione il nipote viene ereditato dal processo di sistema Init che si occuperà si fare le opportune wait. La shell ovviamente non dovrà fare nessuna wait.