Wederzijdse uitsluiting (Mutex)

Schrijver: Lewis Jackson
Datum Van Creatie: 8 Kunnen 2021
Updatedatum: 15 Kunnen 2024
Anonim
L-3.4: Critical Section Problem |  Mutual Exclusion, Progress and Bounded Waiting | Operating System
Video: L-3.4: Critical Section Problem | Mutual Exclusion, Progress and Bounded Waiting | Operating System

Inhoud

Definitie - Wat betekent wederzijdse uitsluiting (Mutex)?

Een wederzijdse uitsluiting (mutex) is een programmaobject dat gelijktijdige toegang tot een gedeelde bron voorkomt. Dit concept wordt gebruikt in gelijktijdig programmeren met een kritieke sectie, een stuk code waarin processen of threads toegang krijgen tot een gedeelde bron. Slechts één thread bezit de mutex tegelijk, dus wordt een mutex met een unieke naam gemaakt wanneer een programma wordt gestart. Wanneer een thread een resource bevat, moet deze de mutex van andere threads vergrendelen om gelijktijdige toegang tot de resource te voorkomen. Bij het vrijgeven van de bron ontgrendelt de thread de mutex.


Een inleiding tot Microsoft Azure en de Microsoft Cloud | In deze handleiding leert u wat cloud computing inhoudt en hoe Microsoft Azure u kan helpen bij het migreren en runnen van uw bedrijf vanuit de cloud.

Techopedia verklaart wederzijdse uitsluiting (Mutex)

Mutex komt in beeld wanneer twee threads tegelijkertijd op dezelfde gegevens werken. Het fungeert als een slot en is het meest basale synchronisatieprogramma. Wanneer een thread probeert een mutex te verkrijgen, krijgt deze de mutex als deze beschikbaar is, anders wordt de thread in de slaapstand gezet. Wederzijdse uitsluiting vermindert latentie en wachttijd met wachtrijen en con-schakelaars. Mutex kan worden afgedwongen op zowel hardware- als softwareniveau.

Het uitschakelen van interrupts voor het kleinste aantal instructies is de beste manier om mutex op kernelniveau af te dwingen en corruptie van gedeelde gegevensstructuren te voorkomen. Als meerdere processoren hetzelfde geheugen delen, wordt een vlag ingesteld om de resource-acquisitie op basis van beschikbaarheid in en uit te schakelen. Het drukke-wachtmechanisme zorgt voor mutex in de softwaregebieden. Dit is voorzien van algoritmen zoals het Dekkers-algoritme, het zwart-witte bakkerij-algoritme, het Szymanskis-algoritme, het Petersons-algoritme en het Lamports-bakkerijalgoritme.


Onderling exclusieve lezers en lees / schrijf codes van de mutex-klasse kunnen worden gedefinieerd voor een efficiënte implementatie van mutex.