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

C++ Discussion :

[IPC & ITC] Semaphore Vs Mutex


Sujet :

C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair� Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Par d�faut [IPC & ITC] Semaphore Vs Mutex
    Hello

    je me demandais dans le cadre d'une ITC (inter thread communication) les avantages a utiliser un semaphore plustot qu un mutex ou vive et versa.

    Evideamment je parle d'avantage en temps d'execution car les fonctionalit� des deux mechanismes me sont connus.

  2. #2
    Membre �m�rite
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 064
    D�tails du profil
    Informations personnelles :
    �ge : 40
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 064
    Par d�faut
    Bon, en admettant qu'on parle bien d'un syst�me Linux:
    - les s�maphores agissent au niveau du syst�me, n'importe quel processus peut s'en servir si il a les droits sur le fichier (� part pour les s�maphores non nomm�s)
    - les mutex agissent pour un seul processus

    Pour ce qui est des performances, je m'en suis jamais souci�. Mais d'un autre cot� si on consid�re qu'un mutex c'est comme un s�maphore mais avec moins de fonctionnalit�s �a peut difficilement �tre plus lent � moins d'avoir �t� cod� avec les pieds.
    Apr�s, les vrais gros avantages des mutex c'est avant tout la portabilit� (n'esp�re pas trouver des IPC style linux sous windows) et la simplicit�.

  3. #3
    Membre �clair� Avatar de ZaaN
    Inscrit en
    Novembre 2005
    Messages
    819
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 819
    Par d�faut
    Citation Envoy� par zais_ethael
    Mais d'un autre cot� si on consid�re qu'un mutex c'est comme un s�maphore mais avec moins de fonctionnalit�s �a peut difficilement �tre plus lent � moins d'avoir �t� cod� avec les pieds.
    Pas d'accord, je pense que les semaphores, bien qu utiliser dans le cadre d'un processus, pourrait induire un switching context...

  4. #4
    Membre chevronn�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Par d�faut
    A verifier,

    Les thread partageant le meme espace memoire, une communication est bien plus simple qu entre process. donc le mutex semble plus indique.

    Il me semble par ailleurs que les mutex sont lies a une instruction assembleur "compare-exchange". Le mecanisme parait encore donc plus simple.

    Quand au switching de contexte, que ce soit entre thread ou process il devra avoir lieu. En revanche le fait de rester dans le meme thread pourrait eventuellement faire gagner un peu sur le cache memoire.

  5. #5
    Expert confirm�
    Homme Profil pro
    Ing�nieur d�veloppement logiciels
    Inscrit en
    D�cembre 2003
    Messages
    3 549
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

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

    Informations forums :
    Inscription : D�cembre 2003
    Messages : 3 549
    Par d�faut
    Moi je dirais plut�t que les s�maphores sont plus rapides...
    Tout simplement parce que c'est de plus haut niveau.

    Il me semble par ailleurs que les mutex sont lies a une instruction assembleur "compare-exchange".
    N'importe quoi. Ce serait plut�t "test and set".

  6. #6
    Membre chevronn�
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    366
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 366
    Par d�faut
    Citation Envoy� par loufoque
    N'importe quoi. Ce serait plut�t "test and set".

    je veux bien croire que c est n importe quoi (comme je le dis dans mon preambule " averifier") , en revanche je vois pas bien la difference, entre

    -compare - exchange

    -test and set

Discussions similaires

  1. semaphore et mutex
    Par kimcharlene dans le forum Algorithmes et structures de donn�es
    R�ponses: 3
    Dernier message: 16/09/2009, 13h55
  2. semaphore ou mutex
    Par ikuzar dans le forum D�buter
    R�ponses: 8
    Dernier message: 16/08/2009, 22h46
  3. [D7][IPC]Section critique ou Mutex ?
    Par jbat dans le forum Delphi
    R�ponses: 5
    Dernier message: 28/06/2007, 21h49
  4. Semaphore et Mutex et performance
    Par Lsong dans le forum SDL
    R�ponses: 29
    Dernier message: 10/04/2007, 13h12
  5. kesako: hook, semaphore, mutex
    Par gronaze dans le forum Linux
    R�ponses: 1
    Dernier message: 15/02/2007, 17h17

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