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 :

systeme unix tubes + anneau


Sujet :

Linux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut systeme unix tubes + anneau
    Bonjour,
    j'ai un question le voila:
    -soit N processus Pi communiquant à l'aide de tubes. il devront former un anneau.
    -Combien de tubes sont nécessaires pour former un anneau unidirectionnel(l'information ne circule que dans un seul sens)?

    aidez moi SVP si vous connaissez la reponse ou un doc qui peux m'aider.


    Cordialement

  2. #2
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Si j'ai bien compris l'énoncé, la réponse est N.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut systeme unix tubes + anneau
    j'aimrais bien SVP que vous m'expliquez pour qoui N et dans le cas que l'anneau bidirectionnel (l'information circulera dans les deux sens).

    Je vous remercie pour votre reponse.

    cordialement

  4. #4
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      p1--->---p2           p1 --->--- p2
       |        |              ---<--- 
       |        |           ||         ||
       ^        v           ^v         ^v
       |        |           ||         ||
       |        |              --->---        
      p4---<---p3           p4 ---<--- p3

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut Programmation systeme en C sous unix
    Bonjour,
    Je voudrais que vous m'aide a ecrire le code C concernant le création de l'annea bidirectionnel (l'information circulera dans les deux sens)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <sys/types.h>
    #include <unistd.h>
     
    int main(void){
      int nbp = 12;  //nombre de processus en relation
      int  tube;
      int i;
      int fils;
      int in;
     int out
      int x = 0;
     
      for(i=0;i<nbp;i++){
        pipe(&tube[2*i]);
      }
     
     
     
      for(i=1;i<nbp;i++){
        fils = fork(); 
        in = tube[(2*i-2)%(2*nbp)]; 
        out = tube[(2*i+1)%(2*nbp)];
     
        if(fils==0){
          read(in,&x,sizeof(int));
          x += 1;
          write(out,&x,sizeof(int));
          sleep(2);
          exit(0);
     
        }
      }
     
     
      in = tube[(2*nbp)-2]; 
      out = tube[1];
      write(out,&x,sizeof(int));
      printf("je suis dans le pere\n");
      read(in,&x,sizeof(int));
      printf("x devient %i\n",x);
     
     
     
      exit(0);
    }

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut systeme unix tubes + anneau
    je te remercie nicolas.sitbon
    Cordialement

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 73
    Points : 44
    Points
    44
    Par défaut systeme unix tubes + anneau
    Bonjour,
    je voudrais que vous m'aidez a ecrire le code C permettant de faire circuler un jeton entre les différents processus de l'anneau.
    Le jeton est un simple entier, il est initialisé à 0 avant le parcours et incrémenté par chaque processus fils.
    C'est le père qui initie le parcours puis, après récupération du jeton, affiche la valeur de celui-ci(correspond alors au nombre de fils).

    Je vous remercie

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Prog Creation N fils (anneau) en Systeme Unix
    Par yu2009 dans le forum Débuter
    Réponses: 1
    Dernier message: 11/06/2009, 13h12
  2. Recuperation base oracle 8 sur un systeme UNIX
    Par Laye dans le forum Oracle
    Réponses: 7
    Dernier message: 06/12/2006, 11h02
  3. [Systeme][unix]récupérer une variable
    Par mavina dans le forum API standards et tierces
    Réponses: 20
    Dernier message: 19/07/2006, 14h08
  4. Réponses: 4
    Dernier message: 21/12/2005, 15h36
  5. Est il possible de faire planter un système Unix
    Par Patrick PETIT dans le forum Administration système
    Réponses: 15
    Dernier message: 15/06/2004, 15h16

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