Tengo un problema con comunicacion entre procesos.
La comunicacion en si esta perfecta (el problema de los filosofos comensqales), pero no logro lanzar hijos en modo background. La programacion esta hecha en c, pero bajo la plataforma de linux.
Estoy usando un fork para la creacion del hijo, y luego un execvp con un arreglo de parametros mas o menos asi:
char * arg[] = {"./filosofo", "1", "&", ""};
int pid;
if ((pid = fork()) == 0) {
execvp(arg[0], arg);
}
El & es para ejecucion en modo background, pero bajo shell, de todas maneras he probado con y sin el &, dando como resultado un hijo en <defunct> sin el & y nada si le coloco el &.
Si alguno me puede indicar como los puedo lanzar a los hijos (Debo conocer los pids dentro del programa que los lanza) en modo background desde un codigo en C...