Précédent   Forum du club des développeurs et IT Pro > Général Développement > Programmation système > Linux
Linux Forum d'entraide sur la programmation Linux : shell, système, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 26/06/2012, 11h42   #1
kallelomar
Candidat au titre de Membre du Club
 
Homme omar kallel
Inscription : juillet 2011
Messages : 21
Détails du profil
Informations personnelles :
Nom : Homme omar kallel
Localisation : Tunisie

Informations forums :
Inscription : juillet 2011
Messages : 21
Points : 10
Points : 10
Par défaut variable sémaphore Linux

Bonjour,
j'ai développé un module Linux. Une variable sémaphore est déclarée dans ce module.Je veux que cette variable soit visible par d'autres modules et toute modification effectuée par un module sur la valeur de cette sémaphore soit visible aussi par d'autres modules.
Qui a une idée s'il vous plaît?
kallelomar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2012, 00h33   #2
Obsidian
Modérateur
 
Avatar de Obsidian
 
Homme
Chercheur d'emploi
Inscription : septembre 2007
Messages : 4 610
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 36
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Chercheur d'emploi
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2007
Messages : 4 610
Points : 11 068
Points : 11 068
Bonjour,
Plusieurs petites choses :
  • Le mot « sémaphore » est masculin. On dit UN sémaphore et pas une sémaphore ;
  • Qu'appelles-tu « sémaphore » dans le cas présent ? C'est une variable ordinaire qui va te servir de mutex ou c'est un vrai sémaphore SysV obtenu avec semget() ?
  • Qu'appelles-tu « module » ? C'est juste un programme à toi et qui va en accompagner d'autres où c'est un module du noyau *.ko ?

Pour répondre à ta question :
  • Soit tu utilises directement les sémaphores des IPC SysV, avec semget(), donc. Les autres programmes pourront acquérir un handle sur ce ou ces mêmes sémaphores. C'est à ça qu'ils servent ;
  • Soit tu utilises la mémoire partagée avec memget() et tu déclares ta variable dedans. C'est le même procédé ;
  • Soit tu utilises pthreads.
Obsidian est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 01/07/2012, 16h06   #3
ok.Idriss
Responsable Modération

 
Avatar de ok.Idriss
 
Homme Idriss Neumann
Consultant en SSII et auditeur au CNAM Paris (ingénieur SI)
Inscription : février 2009
Messages : 3 775
Détails du profil
Informations personnelles :
Nom : Homme Idriss Neumann
Âge : 22
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Consultant en SSII et auditeur au CNAM Paris (ingénieur SI)

Informations forums :
Inscription : février 2009
Messages : 3 775
Points : 12 116
Points : 12 116
Bonjour.

Citation:
Envoyé par Obsidian Voir le message
Soit tu utilises la mémoire partagée avec memget() et tu déclares ta variable dedans. C'est le même procédé ;
shmget plutôt non ?

Dans le cas échéant, il faudra tout de même mettre en place un système de verrous à l'aide des IPC sémaphores (semget et tout le tralala).

Cordialement,
Idriss
ok.Idriss est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 02/07/2012, 00h32   #4
Obsidian
Modérateur
 
Avatar de Obsidian
 
Homme
Chercheur d'emploi
Inscription : septembre 2007
Messages : 4 610
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 36
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Activité : Chercheur d'emploi
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : septembre 2007
Messages : 4 610
Points : 11 068
Points : 11 068
Citation:
Envoyé par ok.Idriss Voir le message
shmget plutôt non ?
Pff, il faut que j'arrête de poster si tard, moi.
Bien vu !
Obsidian est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 16h02.


 
 
 
 
Partenaires

Hébergement Web