Semafori vs. Mutex

Kirjoittaja: Laura McKinney
Luomispäivä: 4 Huhtikuu 2021
Päivityspäivä: 7 Saattaa 2024
Anonim
What is difference between Semaphore and Mutex
Video: What is difference between Semaphore and Mutex

Sisältö

Ero semaforin ja mutexin välillä on, että semafori on merkinantomekanismi, kun taas mutex on lukitusmekanismi.


Käyttöjärjestelmä on tärkein käsite tietotekniikassa, käyttöjärjestelmässä kaksi pääkonseptia ovat semafori ja mutex. Semaforin ja muteksin välillä on paljon eroa. Jos puhumme pääerosta, niin semaforin ja mutexin tärkein ero on, että semafori on merkinantomekanismi, kun taas mutex on lukitusmekanismi.

Ero semaforin ja muteksin välillä esiintyy prosesseissa; semafori suorittaa odotus- () ja signaali () -operaation, tämän toiminnon tehtävänä on tietää, ovatko he hankkineet vai ovatko ne vapauttaneet resurssin. Toisaalta, jos puhutaan mutexistä, mutex on lukitusmekanismi.

Semafori on kokonaislukumuuttuja S; semafori on merkinantomekanismi. Käyttöjärjestelmässä tarvitaan synkronointityökalu, ja kyseinen työkalu käyttöjärjestelmässä tunnetaan semaforina. Semaforilla on kaksi päätoimintoa, jotka odottavat (), signaalia (). Semaforiarvoa muutetaan kahdella toiminnolla, jotka odottavat () ja signaalia (). Kun prosessi käyttää resurssia, semafori on odottamassa (), ja kun prosessi käytti resurssia, ja että resurssi on vapaa, semafori antaa signaalin (). Näitä toimintoja, jotka ovat odotus () ja signaali (), käytetään, koska vain yksi prosessi voi käyttää resurssia kerrallaan. Yhtä resurssia ei voida antaa kahdelle prosessille. Käyttöjärjestelmässä on kahta tyyppiä semaforia, jotka ovat binaarinen semafori ja laskeva semafori. Laskettaessa semaforia alustettu arvo on käytettävissä olevien resurssien lukumäärä. Kun prosessi käyttää resurssia, sen on odotettava () ja sen on odotettava sitä. Semaforiarvon laskemista pienennetään yksi kerrallaan. Kun prosessi käyttää resurssia, se vapauttaa kyseisen resurssin ja vapautussignaalin () niin, että sen on oltava vapaa toiselle prosessille. Kun resurssien määrä on 0, se tarkoittaa, että resursseja ei ole saatavana tulevaa prosessia varten. Binaarisessa semaforissa on kaksi arvoa, jotka ovat 0 ja 1. Kun prosessi käyttää binaarisen semaforin resurssiarvoa välillä 1 - 0 ja kun resurssi on käyttänyt resurssia, niin binaarisen semaforin arvo on välillä 1 - 0.


Mutex tunnetaan myös keskinäisen poissulkemisobjektina. Tiedämme, että vain yksi prosessi voi käyttää resurssia kerrallaan. Tästä syystä on olemassa lukitusjärjestelmä, ja tämä lukkojärjestelmä tunnetaan mutex. Mutex-lukitus annetaan prosessille, kun prosessi käyttää resurssia. Mutex-objektilla on yksilöivä nimi ja tunnus. Ohjelmassa, kun mutex-lukkoa tarvitaan, mutex-lukko kutsutaan nimellä ja tunnuksella. Jos näemme mutex-koodin, meillä on selkeä käsitys mutex-lukituksen toteutuksesta ja käytöstä.

Sisältö: Ero Semaforin ja Mutexin välillä

  • Vertailutaulukko
  • viestittää
  • muteksi
  • johtopäätös
  • Selittävä video

Vertailutaulukko

Perustaviestittäämuteksi
merkitysSemafori on merkinantomekanismiMutex on lukitusmekanismi.
ArvoSemafori on kokonaisluku.Mutex on esine.
OperaatioSemaforiodotus () ja signaali ().Mutexin toiminnot ovat lukitus ja lukitus
TyypitKaksi tyyppistä semaforia lasketaan semafori ja binaarinen semafori.Mutex-lukitusta ei ole.

viestittää

Semafori on kokonaislukumuuttuja S; semafori on merkinantomekanismi. Käyttöjärjestelmässä tarvitaan synkronointityökalu, ja kyseinen työkalu käyttöjärjestelmässä tunnetaan semaforina. Semaforilla on kaksi päätoimintoa, jotka odottavat (), signaalia (). Semaforiarvoa muutetaan kahdella toiminnolla, jotka odottavat () ja signaalia (). Kun prosessi käyttää resurssia, semafori on odottamassa (), ja kun prosessi käytti resurssia, ja että resurssi on vapaa, semafori antaa signaalin (). Näitä toimintoja, jotka ovat odotus () ja signaali (), käytetään, koska vain yksi prosessi voi käyttää resurssia kerrallaan.


Yhtä resurssia ei voida antaa kahdelle prosessille. Käyttöjärjestelmässä on kahta tyyppiä semaforia, jotka ovat binaarinen semafori ja laskeva semafori. Laskettaessa semaforia alustettu arvo on käytettävissä olevien resurssien lukumäärä. Kun prosessi käyttää resurssia, sen on odotettava () ja sen on odotettava sitä. Semaforiarvon laskemista pienennetään yksi kerrallaan. Kun prosessi käyttää resurssia, se vapauttaa kyseisen resurssin ja vapautussignaalin () niin, että sen on oltava vapaa toiselle prosessille. Kun resurssien määrä on 0, se tarkoittaa, että resursseja ei ole saatavana tulevaa prosessia varten. Binaarisessa semaforissa on kaksi arvoa, jotka ovat 0 ja 1. Kun prosessi käyttää binaarisen semaforin resurssiarvoa välillä 1 - 0 ja kun resurssi on käyttänyt resurssia, niin binaarisen semaforin arvo on välillä 1 - 0.

muteksi

Mutex tunnetaan myös keskinäisen poissulkemisobjektina. Tiedämme, että vain yksi prosessi voi käyttää resurssia kerrallaan. Tästä syystä on olemassa lukitusjärjestelmä, ja tämä lukkojärjestelmä tunnetaan mutex. Mutex-lukitus annetaan prosessille, kun prosessi käyttää resurssia. Mutex-objektilla on yksilöivä nimi ja tunnus. Ohjelmassa, kun mutex-lukkoa tarvitaan, mutex-lukko kutsutaan nimellä ja tunnuksella. Jos näemme mutex-koodin, meillä on selkeä käsitys mutex-lukituksen toteutuksesta ja käytöstä.

Avainero

  1. Semafori on merkinantomekanismi, kun taas Mutex on lukitus
  2. Semafori on kokonaisluku, kun taas Mutex on objekti.
  3. Semaforiodotus () ja signaali () operaatiot, kun taas mutex-toiminnot ovat lukitus ja lukitus.
  4. Kaksi tyyppistä semaforia lasketaan semaforista ja binaarisesta semaforista, kun taas mutex-tyyppejä ei ole

johtopäätös

Yllä olevassa artikkelissa näemme selvän eron semaforin ja mutexin välillä niiden asianmukaisessa toteutuksessa.

Selittävä video