Semaphore vs. Mutex

Autor: Laura McKinney
Datum Stvaranja: 4 Travanj 2021
Datum Ažuriranja: 10 Svibanj 2024
Anonim
What is difference between Semaphore and Mutex
Video: What is difference between Semaphore and Mutex

Sadržaj

Razlika između semafora i mutexa je u tome što je semafor signalni mehanizam, dok je mutex mehanizam za zaključavanje.


Operativni sustav najvažniji je koncept informatike, u operacijskom sustavu dva glavna koncepta su semafor i mutex. Između semafora i muteksa postoji velika razlika. Ako govorimo o glavnoj razlici, tada je glavna razlika između semafora i muteksa ta što je semafor signalni mehanizam dok je mutex mehanizam zaključavanja.

Razlika između semafora i muteksa dolazi u procesima; semafor obavlja operaciju čekanja () i signala (), ova je funkcija odgovorna za saznanje jesu li stekli resurse ili su ih oslobodili. S druge strane, ako govorimo o muteksu, muteks je mehanizam za zaključavanje.

Semafor je cjelobrojna varijabla S; semafor je signalni mehanizam. U operativnom sustavu postoji potreba za alatom za sinkronizaciju, a taj je alat u operativnom sustavu poznat kao semafor. Postoje dvije glavne funkcije semafora koji čekaju (), signal (). Vrijednost semafora se mijenja s dvije funkcije koje čekaju () i signal (). Kada neki proces koristi resurs, semafor je na čekanju (), a kada je proces upotrijebio taj resurs, a taj je izvor slobodan, tada semafor daje signal (). Ove funkcije koje se čekaju () i signal (), koriste se jer samo jedan proces može istovremeno koristiti resurs. Jedan se resurs ne može dati u dva procesa. U operativnom sustavu postoje dvije vrste semafora koji su binarni semafor i brojanje semafora. U brojanju semafora inicijalizirana vrijednost je broj raspoloživih resursa. Kada neki proces koristi resurs, on se suočava s wait () i mora čekati taj resurs. Vrijednost brojanja semafora smanjuje se jedna po jedna. Kada neki proces koristi resurs, on ga oslobađa i oslobađa signal () tako da mora biti slobodan za drugi proces. Kad je broj resursa 0, to znači da za sljedeći proces nije dostupan resurs. U binarnom semaforu postoje dvije vrijednosti koje su 0 i 1. Kada postupak koristi vrijednost resursa binarnog semafora je od 1 do 0, a kada resurs koristi resurs, tada je vrijednost binarnog semafora 1 do 0.


Muteks je također poznat kao objekt međusobnog isključivanja. Znamo da samo jedan proces može istovremeno koristiti resurs. To je razlog što postoji sustav zaključavanja, a taj sustav brave poznat je kao mutex. Mutex zaključavanje daje se procesu kada se taj proces koristi resursom. Mutex objekt ima jedinstveno ime i ID. U programu kad god je potrebno zaključavanje mutexa, mutex se zaključava imenom i ID-om. Ako vidimo kod mutexa, imat ćemo jasno razumijevanje implementacije i uporabe mutex zaključavanja.

Sadržaj: Razlika između Semaphora i Mutexa

  • Usporedni grafikon
  • Semafor
  • mutex
  • Zaključak
  • Objašnjeni video

Usporedni grafikon

osnovaSemaformutex
ZnačenjeSemafor je signalni mehanizamMuteks je mehanizam za zaključavanje.
VrijednostSemafor je cijeli broj.Muteks je objekt.
operacijaOperacije semafora čekaju () i signal ().Operacije mutexa su zaključavanje i otključavanje
vrsteDvije vrste semafora broje semafor i binarni semafor.Ne postoje vrste zaključavanja mutexa.

Semafor

Semafor je cjelobrojna varijabla S; semafor je signalni mehanizam. U operativnom sustavu postoji potreba za alatom za sinkronizaciju, a taj je alat u operativnom sustavu poznat kao semafor. Postoje dvije glavne funkcije semafora koji čekaju (), signal (). Vrijednost semafora se mijenja s dvije funkcije koje čekaju () i signal (). Kada neki proces koristi resurs, semafor je na čekanju (), a kada je proces upotrijebio taj resurs, a taj je izvor slobodan, tada semafor daje signal (). Ove funkcije koje su čekanje () i signal (), koriste se jer samo jedan proces može istovremeno koristiti resurs.


Jedan se resurs ne može dati u dva procesa. U operativnom sustavu postoje dvije vrste semafora koji su binarni semafor i brojanje semafora. U brojanju semafora inicializirana vrijednost je broj raspoloživih resursa. Kada neki proces koristi resurs, on se suočava s wait () i mora čekati taj resurs. Vrijednost brojanja semafora smanjuje se jedna po jedna. Kada neki proces koristi resurs, on ga oslobađa i oslobađa signal () tako da mora biti slobodan za drugi proces. Kad je broj resursa 0, to znači da za sljedeći proces nije dostupan resurs. U binarnom semaforu postoje dvije vrijednosti koje su 0 i 1. Kada postupak koristi vrijednost resursa binarnog semafora je od 1 do 0, a kada resurs koristi resurs, tada je vrijednost binarnog semafora 1 do 0.

mutex

Muteks je također poznat kao objekt međusobnog isključivanja. Znamo da samo jedan proces može istovremeno koristiti resurs. To je razlog što postoji sustav zaključavanja, a taj sustav brave poznat je kao mutex. Mutex zaključavanje daje se procesu kada se taj proces koristi resursom. Mutex objekt ima jedinstveno ime i ID. U programu kad god je potrebno zaključavanje mutexa, mutex se zaključava imenom i ID-om. Ako vidimo kod mutexa, imat ćemo jasno razumijevanje implementacije i uporabe mutex zaključavanja.

Ključna razlika

  1. Semafor je signalni mehanizam dok je Mutex zaključavanje
  2. Semafor je cijeli broj dok je Mutex objekt.
  3. Operacije semafora čekaju () i signal (), dok operacije muteksa su zaključani i otključani.
  4. Dvije vrste semafora broje semafor i binarni semafor dok ne postoje vrste muteksa

Zaključak

U ovom članku iznad vidimo jasnu razliku između semafora i muteksa njihovim pravilnim provođenjem.

Objašnjeni video