Semàfor vs. Mutex

Autora: Laura McKinney
Data De La Creació: 4 Abril 2021
Data D’Actualització: 10 Ser Possible 2024
Anonim
Semàfor vs. Mutex - Un Altre
Semàfor vs. Mutex - Un Altre

Content

La diferència entre el semàfor i el mutex és que el semàfor és un mecanisme de senyalització mentre que el mutex és el mecanisme de bloqueig.


El sistema operatiu és el concepte més important en informàtica, en el sistema operatiu, dos conceptes principals són el semàfor i el mutex. Hi ha molta diferència entre un semàfor i un mutex. Si parlem de la diferència principal, llavors la diferència principal entre el semàfor i el mutex és que el semàfor és un mecanisme de senyalització mentre que el mutex és el mecanisme de bloqueig.

La diferència entre el semàfor i el mutex es presenta en els processos; el semàfor realitza l'operació wait () i signal (), aquesta funció és responsable de saber si han adquirit o han alliberat el recurs. D'altra banda, si parlem de mutex, el mutex és el mecanisme de bloqueig.

El semàfor és una variable S entera; El semàfor és un mecanisme de senyalització. En un sistema operatiu, cal una eina de sincronització, i aquesta eina del sistema operatiu es coneix com a semàfor. Hi ha dues funcions principals del semàfor que estan en espera (), senyal (). El valor del semàfor es canvia amb dues funcions que estan en espera () i el senyal (). Quan un procés utilitza un recurs, el semàfor està en espera (), i quan el procés utilitza el recurs i aquest recurs és gratuït, el semàfor dóna el senyal (). Aquestes funcions que són wait () i senyal (), s'utilitzen perquè només un procés pot utilitzar el recurs alhora. No es pot donar un recurs a dos processos. Hi ha dos tipus de semàfor al sistema operatiu que són el semàfor binari i el recompte del semàfor. Al comptar el semàfor, el valor inicialitzat és el nombre de recursos disponibles. Quan un procés està utilitzant un recurs, s’enfronta a wait () i ha d’esperar a aquest recurs. Comptar el valor del semàfor es decrementa un per un. Quan un procés utilitza un recurs, allibera aquest recurs i deixa el senyal () de manera que ha de ser gratuït per a un altre procés. Quan el nombre de recursos és 0, vol dir que no hi ha cap recurs disponible per al procés que ve. Hi ha dos valors en el semàfor binari que són 0 i 1. Quan el procés està utilitzant un valor de recurs del semàfor binari és d’1 a 0 i quan un recurs ha utilitzat el recurs, el valor del semàfor binari a 1 a 0.


El mutex també es coneix com a objecte d’exclusió mútua. Sabem que només un procés pot utilitzar un recurs alhora. Aquesta és la raó per la qual existeix un sistema de tancament i es coneix aquest sistema de pany com a mutex. El mutex lock es dóna a un procés quan aquest procés utilitza un recurs. L’objecte Mutex té un nom i un ID únics. En un programa sempre que hi hagi necessitat de bloqueig de mutex, el nom i l'ID es truca al mutex lock. Si veiem el codi de mutex, tindrem una clara comprensió de la implementació i l’ús del mutex lock.

Contingut: Diferència entre Semàfor i Mutex

  • Gràfic de comparació
  • Semàfor
  • Mutex
  • Conclusió
  • Vídeo explicatiu

Gràfic de comparació

BasesSemàforMutex
SignificatEl semàfor és un mecanisme de senyalitzacióEl mutex és un mecanisme de bloqueig.
ValorEl semàfor és un nombre enter.Un mutex és un objecte.
FuncionamentOperacions de semàfor espera () i senyal ().Les operacions de mutex es bloquegen i es desbloquegen
TipusDos tipus de semàfor són el semàfor i el semàfor binari.No hi ha cap tipus de bloqueig mutex.

Semàfor

El semàfor és una variable S entera; El semàfor és un mecanisme de senyalització. En un sistema operatiu, cal una eina de sincronització, i aquesta eina del sistema operatiu es coneix com a semàfor. Hi ha dues funcions principals del semàfor que estan en espera (), senyal (). El valor del semàfor es canvia amb dues funcions que estan en espera () i el senyal (). Quan un procés utilitza un recurs, el semàfor està en espera (), i quan el procés utilitza el recurs i aquest recurs és gratuït, el semàfor dóna el senyal (). Aquestes funcions que són un wait () i un senyal (), es fan servir perquè només un procés pot utilitzar el recurs alhora.


No es pot donar un recurs a dos processos. Hi ha dos tipus de semàfor al sistema operatiu que són el semàfor binari i el recompte del semàfor. Al comptar el semàfor, el valor inicialitzat és el nombre de recursos disponibles. Quan un procés està utilitzant un recurs, s’enfronta a wait () i ha d’esperar a aquest recurs. Comptar el valor del semàfor es decrementa un per un. Quan un procés utilitza un recurs, allibera aquest recurs i deixa el senyal () de manera que ha de ser gratuït per a un altre procés. Quan el nombre de recursos és 0, vol dir que no hi ha cap recurs disponible per al procés que ve. Hi ha dos valors en el semàfor binari que són 0 i 1. Quan el procés està utilitzant un valor de recurs del semàfor binari és d’1 a 0 i quan un recurs ha utilitzat el recurs, el valor del semàfor binari a 1 a 0.

Mutex

El mutex també es coneix com a objecte d’exclusió mútua. Sabem que només un procés pot utilitzar un recurs alhora. Aquesta és la raó per la qual existeix un sistema de tancament i es coneix aquest sistema de pany com a mutex. El mutex lock es dóna a un procés quan aquest procés utilitza un recurs. L’objecte Mutex té un nom i un ID únics. En un programa sempre que hi hagi necessitat de bloqueig de mutex, el nom i l'ID es truca al mutex lock. Si veiem el codi de mutex, tindrem una clara comprensió de la implementació i l’ús del mutex lock.

Diferència de clau

  1. El semàfor és un mecanisme de senyalització mentre que Mutex és el bloqueig
  2. El semàfor és un nombre enter, mentre que Mutex és un objecte.
  3. Les operacions del semàfor espera () i del senyal (), mentre que les operacions del mutex es bloquegen i es desbloquegen.
  4. Dos tipus de semàfors compten el semàfor i el semàfor binari mentre que no hi ha cap tipus de mutex

Conclusió

En aquest article anterior veiem la clara diferència entre el semàfor i el mutex amb la seva correcta implementació.

Vídeo explicatiu