Programmation système

Kaoutar.T Messages postés 17 Statut Membre -  
Twinuts Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je suis bloqué sur cet exercice j'aimerais bien m'aider .
Ecrire un programme qui crée un processus fils. Le père affichera à l'écran "ping"
alors que le fils affichera "pong", et ce de manière alternative. Pour cela vous
utiliserez les signaux "SIGUSR1" et "SIGUSR2" et vous regarderez le problème de
l'arrêt du processus.
j'ai pas pu intégré SIGUSR1 et SIGUSR2 dans mon code!
void pere(){
printf("ping");
fils();
return;
}
void fils(){
printf("pong");
pere();
return;
}
int main(){
pid_t pid;

if(pid=fork()!=0)
           pere();
return 0;
}

2 réponses

  1. Twinuts Messages postés 27 Date d'inscription   Statut Membre Dernière intervention   2
     
    Salut,

    Normalement le père tout comme le fils doivent écouter les signaux SIGUSR1 et SIGUSR2 puis envoyer l'un l'autre le bon signal.

    Exemple si le père écoute SIGUSR1 il enverra un signal au fils sur SIGUSR2 et le fils qui écoute SIGUSR2 répondra sur SIGUSR1

    Pour écouter les signaux:
    http://manpagesfr.free.fr/man/man2/sigaction.2.html

    Pour envoyer des signaux:
    http://manpagesfr.free.fr/man/man2/kill.2.html

    0