IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

[Débutante]problème de synchronisation entre processus


Sujet :

Linux

  1. #1
    Membre à l'essai
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 15
    Points
    15
    Par défaut [Débutante]problème de synchronisation entre processus
    Bonjour,
    J'ai un petit problème de synchronisation qui est le suivant:
    Je dois synchroniser 7 processus comme suit

    1. Exécuter p1
    2. exécuter en parallèle P2 et P3 après la fin de p1
    3.Exécuter P4
    4.P5, P6 et P7 en parallèle

    Le problème c'est qu'on n'a que SIGUSR1 et SIGUSR2, et moi j'ai besoin de 7signaux.

    S'il vous plait quelqu'un pourrait il m'aider à trouver une solution.
    Puis je utiliser d'autres signaux pour ça tel que SIGABRT?? puis je définir des signaux SIGUSR3,..??

    merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 432
    Points : 593
    Points
    593
    Par défaut
    Il doivent tous être créé en même temps ? T'as le droit d'utiliser la fonction wait ?

  3. #3
    Membre à l'essai
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    ils doivent être exécuté dans l'ordre indiqué précédemment pas tous en même temps mais jusqu'à 3 en parallèle

  4. #4
    Membre à l'essai
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    Oui, j'ai le droit d'utiliser la fonction wait

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    432
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 432
    Points : 593
    Points
    593
    Par défaut
    Ben déjà tu peux utilisé la fonction wait pour séparer chaque une des 4 étapes.

    Création de P1
    wait
    Création de P2 et P3
    wait
    etc

    Du coup je sais pas à quoi peuvent servir les signaux ^^.

  6. #6
    Membre à l'essai
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    16
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 16
    Points : 15
    Points
    15
    Par défaut
    j'ajoute les signaux pour lancer en parallèle trois processus

  7. #7
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 685
    Points : 30 974
    Points
    30 974
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par asie86 Voir le message
    Bonjour,
    J'ai un petit problème de synchronisation qui est le suivant:
    Je dois synchroniser 7 processus comme suit

    1. Exécuter p1
    2. exécuter en parallèle P2 et P3 après la fin de p1
    3.Exécuter P4
    4.P5, P6 et P7 en parallèle

    Le problème c'est qu'on n'a que SIGUSR1 et SIGUSR2, et moi j'ai besoin de 7signaux.
    Pas forcément. Tu peux très bien envoyer le même signal à 2 processus différents. Si chacun d'eux a créé son handler particulier (la fonction qui est appelée lorsqu'on reçoit un signal) les processus auront des actions distinctes bien que ce soit le même signal envoyé.

    Citation Envoyé par asie86 Voir le message
    S'il vous plait quelqu'un pourrait il m'aider à trouver une solution.
    Puis je utiliser d'autres signaux pour ça tel que SIGABRT?? puis je définir des signaux SIGUSR3,..??
    T'as le droit d'utiliser tous les signaux dont t'as envie à l'exception du SIGKILL. Sauf que les signaux SIGUSR1 et SIGUSR2 te sont dédiés. Alors que les autres signaux peuvent aussi parfois être envoyés par le système. Donc si tu programmes ton processus à réagir au SIGABRT et que le SIGABRT est envoyé par le noyau Linux, ton programme réagira alors que ce n'est pas forcément ce que tu souhaites.

    Par ailleurs t'as pas possibilité de définir d'autres signaux que ceux prévus à l'origine.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  8. #8
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    Citation Envoyé par asie86 Voir le message
    j'ajoute les signaux pour lancer en parallèle trois processus
    Comment ça ? Les signaux ne servent à rien pour ce que tu cherches à faire.

Discussions similaires

  1. problème de synchronisation entre 2 listes (s:select) !
    Par adilensa dans le forum Struts 2
    Réponses: 3
    Dernier message: 16/05/2009, 20h22
  2. Problème de synchronisation de processus
    Par titou624 dans le forum POSIX
    Réponses: 3
    Dernier message: 08/01/2009, 00h40
  3. Réponses: 5
    Dernier message: 04/01/2009, 17h40
  4. Problème de synchronisation entre un DataGridView et un tableAdapter
    Par PtiteDéveloppeuse dans le forum VB.NET
    Réponses: 1
    Dernier message: 09/11/2007, 16h19
  5. [Conception]Problème de synchronisation entre tables sous access
    Par romain404 dans le forum Modélisation
    Réponses: 4
    Dernier message: 15/04/2007, 20h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo