#include #include #include #include int main() { pid_t pid; int r; if((pid=fork())<0){ perror("fork"); exit(1); } else if(pid==0) //Es codigo del proceso hijo sleep(30); //hijo solo duerme else //codigo padre { //envía una señal a su nuevo hijo printf("Enviado SIGCHLD a %d \n",pid); if (kill(pid,SIGCHLD) < 0) //envia señal { perror("kill:SIGCHLP"); exit(1); //hubo error } else printf("El proceso %d : Aun Existe \n",pid); printf("Eliminando proceso %d \n",pid); //manda una señal de terminación al hijo if(kill(pid,SIGTERM)<0) perror("Kill SIGTERM"); waitpid(pid,NULL-10); } exit(0); }