ESET onlinehjälp

Sök Svenska
Välj ämne

Baklås

Ett baklås är när varje dator väntar på en resurs som tilldelats en annan process. I den här situationen körs inte processerna eftersom den resurs som krävs hålls av en annan process som också väntar på att en annan resurs ska släppas. Det är viktigt att förhindra ett baklås innan det kan inträffa. En baklås kan identifieras av resursschemaläggaren, vilket hjälper operativsystemet att hålla reda på alla resurser som allokerats till olika processer. Baklås kan uppstå om följande fyra villkor gäller samtidigt:

Ingen förebyggande åtgärd – en resurs kan endast frigöras frivilligt genom att processen håller den efter att processen har slutfört sin uppgift.

Ömsesidig exkludering – en speciell typ av binär semafor som används för att styra åtkomsten till den delade resursen. Det gör att nuvarande uppgifter med högre prioritet kan hållas blockerade under kortast möjliga tid.

Håll och vänta – i det här tillståndet måste processer stoppas från att hålla en eller flera resurser samtidigt som de väntar på en eller flera andra.

Cirkulär väntan – den inför en total beställning av alla resurstyper. Cirkulär väntan kräver även att varje process begär resurser i ökande uppräkningsordning.

 

Det finns tre sätt att hantera ett baklås:

Låt inte systemet hamna i ett baklåstillstånd.

Låt baklåset inträffa och vidta sedan förebyggande åtgärder för att hantera det när det inträffar.

Starta om systemet om ett baklås uppstår.