Mon propos est justement, qu’un mutex est un sémaphore, mais un sémaphore avec une seule ressource et donc un sous ensemble des possibilité d’usage d’un sémaphore.
Sémantiquement et dans les API, un mutex n'est pas un sémaphore. Même si au niveau de l'implémentation il y a du code commun pour gérer les processus en attente.
Un mutex assure l'acquisition/libération par le même processus d'une ressource unique.
Pas forcément dans un seul processus. On peut utiliser un mutex pour protéger une mémoire partagée entre deux processus.
Tout à fait. Quand je dis le même processus, c'est dans le sens que c'est le processus qui a alloué qui doit faire la libération, ce n'est pas une obligation avec un sémaphore.
On produit quoi et on consomme quoi ?
Un rajout là dessus, un (ou plusieurs) sémaphore peut aussi être utilisé conjointement à un mutex dans le cadre de synchronisations complexes, où on l'utilise pour gérer un nombre de processus en attente d'un état particulier.
Votez les 30 juin et 7 juillet, en connaissance de cause. http://www.pointal.net/VotesDeputesRN
[^] # Re: Hum
Posté par lolop (site web personnel) . En réponse au journal Les sémaphores. Évalué à 3.
Sémantiquement et dans les API, un mutex n'est pas un sémaphore. Même si au niveau de l'implémentation il y a du code commun pour gérer les processus en attente.
Tout à fait. Quand je dis le même processus, c'est dans le sens que c'est le processus qui a alloué qui doit faire la libération, ce n'est pas une obligation avec un sémaphore.
Un rajout là dessus, un (ou plusieurs) sémaphore peut aussi être utilisé conjointement à un mutex dans le cadre de synchronisations complexes, où on l'utilise pour gérer un nombre de processus en attente d'un état particulier.
Votez les 30 juin et 7 juillet, en connaissance de cause. http://www.pointal.net/VotesDeputesRN