Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Creando procesos en C - Linux usando fork, exec, wait

Estas en el tema de Creando procesos en C - Linux usando fork, exec, wait en el foro de C/C++ en Foros del Web. hola a todos necesito vuestra ayuda tengo que hacer un programa con las llamadas al sistema fork execlp y wait q me cree tres procesos ...
  #1 (permalink)  
Antiguo 23/04/2007, 05:46
 
Fecha de Ingreso: abril-2007
Mensajes: 1
Antigüedad: 17 años
Puntos: 0
Creando procesos en C - Linux usando fork, exec, wait

hola a todos
necesito vuestra ayuda tengo que hacer un programa con las llamadas al sistema fork execlp y wait q me cree tres procesos y que esten permanentemente activos, es decir un bucle infinito que detecte que proceso se cerro y volverlo a activar.
tengo creado los 3 procesos de esta manera

int i;
pid_t pid[2];

for (i=0; i<=2; i++)
{
switch (pid[i]=fork())
{
case 0 : switch (i)
{
case 0: execlp("programa1", "", 0);
case 1: execlp("programa2", "", 0);
case 2: execlp("programa3", "", 0);
}
case -1: perror("Fallo creando proceso");
break;
}
}

Hasta aqui bien, me los crea y me los ejecuta con execlp ahora le he metio un bucle infinito for(;;) dentro de ese bucle infinito deberia esperar a que un hijo se caiga entonces hago otro fork y dependiendo del hijo que caiga ejecuto de nuevo el programa que se cayó.
Como podría implementar esta ultima parte ayudadme
Gracias un saludo
  #2 (permalink)  
Antiguo 27/04/2007, 07:54
Avatar de yournightmare86  
Fecha de Ingreso: abril-2006
Ubicación: Madrid
Mensajes: 875
Antigüedad: 18 años
Puntos: 9
Re: Creando procesos en C - Linux usando fork, exec, wait

Ya no recuerdo como va todo eso pero te dejo un link de un mini curso que me sirvió.
http://blog.txipinet.com/index.php/2...ra-gnu-linux-i
Saludos.
  #3 (permalink)  
Antiguo 28/04/2007, 14:39
Avatar de cris_maco  
Fecha de Ingreso: abril-2007
Ubicación: Salamanca
Mensajes: 254
Antigüedad: 17 años
Puntos: 0
Re: Creando procesos en C - Linux usando fork, exec, wait

supongo que si haces el wait sobre el pid que quieras sabras cuando acaba un hijo u otro y luego dependiendo de ese pid haz que ejecute una cosa u otra
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 15:10.