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 :

Mémoire partagée probleme lors de shmat()


Sujet :

Linux

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 71
    Points
    71
    Par défaut Mémoire partagée probleme lors de shmat()
    hello tlm,

    j'ai un probleme lorsque je veux attaché une shared memory à un process, le terminal me dit :

    Erreur attach nombre_de: Identifier removed

    et je ne vois absolument pas ce qui est mauvais dans mon code si quelqu'un savait m'expliquer ou ce trouve mon probleme ce serait sympa.

    je laisse mon code ici :


    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
     
    #define PATH "key.lock"
     
    main(){
            key_t cle_shared;
            int shid;
            struct  nombre_de{
                    int reader;
                    int joueur;
            }*ma_struct;
     
            if(cle_shared=ftok(PATH,5)<0){
                    perror("Erreur Ftok");
                    exit(EXIT_FAILURE);
            }
     
            if(shid = shmget(cle_shared,sizeof(struct nombre_de),IPC_CREAT)<0){
                    perror("Erreur shmget");
                    exit(EXIT_FAILURE);
            }
            if((ma_struct = (struct nombre_de*)shmat(shid,NULL,0)) ==(void*)-1 ){
                    perror("Erreur attach nombre_de");
                    exit(EXIT_FAILURE);
            }
            ma_struct->reader = 53;
            ma_struct->joueur = 98;
     
            printf("la cle est: %d, le shid est %d\n",cle_shared,shid);

  2. #2
    Membre éprouvé
    Profil pro
    Eleveur de cornichons
    Inscrit en
    Juin 2002
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Eleveur de cornichons
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 074
    Points : 1 166
    Points
    1 166
    Par défaut
    T'aurais pas oublié des parenthèses de priorité ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(shid = shmget(cle_shared,sizeof(struct nombre_de),IPC_CREAT)<0){
    :

    Nas'

  3. #3
    Membre régulier
    Inscrit en
    Novembre 2005
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 110
    Points : 71
    Points
    71
    Par défaut
    mmm c'est bien possible now il me dit que je n'ai pas la permission pour l'attachée

    je dois utilisé shmctl()??? pour ca ou quoi?


    Je viens d'utilise shmctl() et meme sur la structure que shmid_ds que j'ai demandé je n'ai aucunne permission :s

    ce serait pas au moment du shmget que j'ai un probleme?

    bon j'ai pigé... on doit etre en root :s sudo powaaa

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    ecrit:
    if((shid = shmget(cle_shared,sizeof(struct nombre_de),0600|IPC_CREAT))<0){

    c'est à dire ajoute des parentheses et les droits

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

Discussions similaires

  1. [ADO] Probleme lors de l'execution d'une requete...
    Par NoisetteProd dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/06/2004, 12h43
  2. Réponses: 13
    Dernier message: 10/05/2004, 16h49
  3. [MYSQL] Probleme lors de la compilation
    Par Nasky dans le forum Autres éditeurs
    Réponses: 10
    Dernier message: 24/02/2004, 17h04
  4. probleme lors du passage de paramètre
    Par maxmj dans le forum ASP
    Réponses: 4
    Dernier message: 18/11/2003, 00h15
  5. problem lors de l'ecriture d'un fichier
    Par gemai dans le forum C
    Réponses: 20
    Dernier message: 29/08/2003, 15h01

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