[Linux] Problème avec 3 processus en C !

Fermé
Salamandar2000 - 15 sept. 2009 à 21:44
 Romrom44 - 25 sept. 2009 à 14:27
Bonsoir !

Voila je suis en 2ème année de BTS Iris et je bloque complètement sur un problème ...

Voici la structure de mon code :


int main(void){
int status;
pid_t fils1,fils2;


fils1=fork(); // On créé le 1er processus fils


////////////// PROCESSUS FILS1 ///////////////

if (fils1 == 0) {

}

////////////// FIN DU PROCESSUS FILS1 ///////////////



else {


////////////// PROCESSUS FILS2 ///////////////

fils2=fork(); // On créé le 2ème fils

if (fils2 == 0) {

}

////////////// FIN DU PROCESSUS FILS2 ///////////////



////////////// PROCESSUS PERE ///////////////

else { // Ici, c'est le code du père
}

////////////// FIN DU PROCESSUS PERE ///////////////

}
return EXIT_SUCCESS;
}



Oui, mais voila : pour faire communiquer le processus père et le 1er fils, pas de problème, mais c'est pour faire communiquer le 1er fils avec le 2ème que sa bloque ! En effet, je ne parviens pas à récupérer dans une variable utilisable dans le bloc du 1er fils qui contienne l'adresse du 2ème fils, afin de pouvoir lui envoyer une commande KILL ! Pour résumer, je ne parviens pas à stocker quelque part la valeur du PID du 2ème fils.

Vous avez une idée ?
A voir également:

1 réponse

Bon alors, ça fait un bout de temps que j'ai pas utiliser les forks donc je suis surement un peu rouillé et je ne pourrai pas modifier ton code, et j'ai peut-être même pas compris le problème :P

As-tu utilisé des signaux ?
0