Huis Ontwikkeling Wat is een semafoor? - definitie van techopedia

Wat is een semafoor? - definitie van techopedia

Inhoudsopgave:

Anonim

Definitie - Wat betekent Semaphore?

Een semafoor is een synchronisatieobject dat de toegang door meerdere processen tot een gemeenschappelijke bron in een parallelle programmeeromgeving regelt. Semaphores worden veel gebruikt om de toegang tot bestanden en gedeeld geheugen te beheren. De drie basisfuncties die aan semaforen zijn gekoppeld, zijn ingesteld, controleer en wacht tot het is gewist om het opnieuw in te stellen. |


Semaphores worden gebruikt om problemen met benchmark-synchronisatie aan te pakken.


Het concept semafoor is bedacht door de Nederlandse computerwetenschapper Edsger Dijkstra.

Techopedia legt Semaphore uit

Semaforen zijn niet-negatieve gehele getallen die de bewerkingen semaphore-> P () en semaphore-> V () ondersteunen. P is een atomaire bewerking die wacht tot een semafoor positief is en deze vervolgens met één verlaagt, terwijl V een atomaire bewerking is die een semafoor met één verhoogt, wat inhoudt dat deze een wachtende P activeert. Test en set geassocieerd met semafoor zijn routines geïmplementeerd in hardware om kritieke secties op een lager niveau te coördineren.


Semaphores worden normaal geïmplementeerd met behulp van bestandsdescriptors. Semafoor creaties zijn niet atomair. Als twee processen tegelijkertijd een semafoor proberen te maken, initialiseren en gebruiken, wordt een race-conditie gecreëerd. Semaphores worden gemaakt en geïnitialiseerd op een positieve waarde om de beschikbaarheid van een te gebruiken bron aan te geven. Semaphores kunnen worden geïmplementeerd via interrupts of met behulp van testsetbewerkingen.


Elke semafoor onderhoudt sets vergunningen. Het beperkt het aantal threads dat toegang heeft tot de bronnen. Semaforen met slechts één vergunning en geïnitialiseerd op één dienen als wederzijdse uitsluitingssloten. Ze worden zo genoemd omdat ze slechts twee staten hebben: vergunning beschikbaar of nulvergunning beschikbaar. Dit omsluit de eigenschap zodat een slot kan worden vrijgegeven door een andere thread dan de eigenaar, wat helpt bij het herstellen van een impasse. Semaforen worden gebruikt voor wederzijdse uitsluitingen waarbij de semafoor een beginwaarde van één heeft en P () en V () voor en na de kritieke secties worden aangeroepen.

Wat is een semafoor? - definitie van techopedia