Mutex i Semàfor

Mutex sembla una clau d’habitació. L’únic que té la clau de corda és l’únic que té accés a la sala. La persona amb accés haurà de donar la clau a la següent persona de la cua. Per tant, el mutex només es pot extreure a través del fil que rep.

El mutex s'utilitza normalment per serialitzar l'accés a una secció de "codi reestrant" que no pot ser executat per diversos fils alhora. A la secció només es pot utilitzar un fil. Això obliga els altres fils a esperar. Abans d’entrar la corda, haureu d’esperar fins que es tregui la part.

Utilitzant la mateixa comparació a Mutex, els semàfors són el nombre de tecles similars que permeten accedir a habitacions amb panys similars. El cost del càlcul d’un semàfor o semàfor depèn del nombre de persones que entren o surten de la sala. Si hi ha 5 habitacions i totes estan ocupades, el nombre de semàfors és zero. Si dos surten de l’habitació, el càlcul és de dos i les dues següents es donen dues claus.

Tot i això, els semàfors es poden senyalitzar simultàniament per qualsevol procés o procés i són adequats per a aplicacions que necessiten sincronització. No obstant això, els semàfors s'utilitzen per limitar eficaçment el nombre d'usuaris en paral·lel a una font comuna en funció del nombre màxim de semàfors.

Així, en general, les mutacions poden ser considerades com a semàfors.

L’escurçament i el creixement del semàfor depèn de si els subjectes demanen l’accés a una font comuna o abandonen la secció.

En teoria, els semàfors mutex i (binari) són semànticament similars. La implementació de la mutació es pot fer mitjançant semàfors, i també és així al revés. Tanmateix, a la pràctica poden ser lleugerament diferents.

Les mutacions estan destinades a ser utilitzades exclusivament per a l’exclusió mútua, i els semàfors binaris estan destinats a utilitzar-se per a l’exclusió mútua i els informes d’esdeveniments. Tot i que són molt similars quant a implementació i semàntica general, s’utilitzen de manera diferent.

Resum:

1. El mutex s'utilitza habitualment per serialitzar l'accés a una font comuna, mentre que el semàfor proporciona accés múltiples al mateix temps.

2. La mutació és una semàfora, una d’elles. 3. Mutex dóna accés només a un fil, mentre que els semàfors es poden senyalitzar simultàniament per qualsevol procés o procés.

4. Els semàfors són més adequats per a la sincronització i sovint s’utilitzen per informar i compartir esdeveniments, mentre que el mutex només s’utilitza per a l’exclusió mútua.

Referències