Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2015, 16:22
aleixen
 
Fecha de Ingreso: abril-2015
Mensajes: 13
Antigüedad: 9 años
Puntos: 0
Segmentation fault (core dumped)

Buenas gente, tengo el siguiente código::

Código:
int main()
{

	 int pid;


	 pid = fork();

	 if(pid==-1){


 		perror("No se ha podido crear el proceso hijo\n");

	}

	if(pid==0){

		printf("Soy el hijo\n");
		
		FILE* archRutina = fopen("datosDeEntrada.txt","r");
		 FILE* archTemporal = fopen("archivoTemporal.txt","w");

      	        dup2(fileno(archRutina),STDIN_FILENO);
                dup2(fileno(archTemporal),STDOUT_FILENO);

		 system("/home/utnso/workspace/EjemplosC/Debug/./EjemplosC ");

		fclose(archRutina);
		fclose(archTemporal);
	}

	else{ // Cuando es distinto de cero es el padre

		printf("Soy el padre\n");
		wait(NULL);
                printf("Mi proceso hijo ya ha terminado.\n");
	}

	return 0;
}
Mi intencion es crear un proceso hijo que ejecute un programa, y hacer que el proceso padre termine despues de su hijo, por eso mismo uso el wait, al ejecutarlo tira el segmentation fault, lo debugguie y aun asi sigo sin entender porque no funciona, alguien me da una mano con esto?