Un objet
d'exclusion mutuelle ou mutex est un objet créé pour une utilisation dans des
programmes informatiques. La fonction essentielle de mutex est de rendre
possible pour un thread de programme multiple de faire usage d'une ressource
unique. En général, la fonctionnalité des objets d'exclusion mutuelle est de
permettre cette utilisation d'une ressource unique en créant un environnement
où l'accès à la ressource est continuellement passé et-vient entre les
différents aspects du programme.
Le procédé d'activation et de créer
un mutex a lieu lorsque la demande de programme d'ordinateur est ouverte.
Essentiellement, le programme va créer le mutex et de le rapporter à une
ressource spécifique qui est nécessaire pour la fonction efficace du programme
libre. Comme les ressources est appelé, le système d'exploitation attribue un
nom unique pour le mutex et l'utiliser pour identifier le processus aussi
longtemps que le programme reste ouvert.
Une fois que le mutex est activé et
le nom de la session, un autre thread du programme qui nécessite cette
ressource peut avoir accès, même si la ressource est déjà en utilisation active
par un autre thread. En indiquant un besoin de la ressource, la fonction MUTEX
va commencer à alterner l'accès de la ressource dans les deux sens entre les
fils. Pour l'utilisateur final, ce processus est transparent. Pour toutes fins
pratiques, il semble que deux utilisateurs ou deux fils sont nous font de la
même ressource en même temps.
Bien que la vitesse de transfert de
l'accès est si rapide qu'il n'est même pas visible à l'utilisateur final, il
convient de noter que chaque fois qu'une ressource est en cours d'utilisation,
il est effectivement verrouillé à celui fil de la séquence. Un autre sujet
nécessitant l'utilisation de la ressource émettra une demande qui va entrer
dans une file d'attente et y rester jusqu'à ce que le premier thread a fini
avec l'utilisation active. À ce moment, la ressource est déverrouillée et la
fonction MUTEX permet au thread suivant dans la file d'attente d'accès actif.
Si un troisième fil est active et les besoins en ressources, MUTEX sera
également aligner ce fil dans la file d'attente et accorder l'accès sur une
base rotative.
Ecrit par: Malcolm Tatum
Edité par: Bronwyn Harris