ESETi veebiabi

Otsing Eesti
Valige teema

Tupik

Tupik on olukord, kus iga arvutiprotsess ootab ressurssi, mis on määratud mõnele muule protsessile. Sellises olukorras ei saa ühtegi protsessi teostada, kuna vajalikku ressurssi hoiab kinni teine protsess, mis on samuti muu ressursi vabastamise ootel. Tupikut on oluline vältida enne selle esinemist. Ressursiajasti saab tuvastada tupiku esinemise ja see aitab operatsioonisüsteemil jälgida kõiki erinevatele protsessidele eraldatud ressursse. Tupik võib tekkida, kui järgmised neli tingimust toimuvad samaaegselt.

Ennetav tegevus puudub – ressursi saab vabastada vabatahtlikult ainult protsess, mis ressurssi kinni hoiab, pärast oma ülesande lõpuleviimist.

Vastastikune välistamine – binaarse semafori eritüüp, mida kasutatakse jagatud ressursile juurdepääsu kontrollimiseks. See võimaldab praeguste suurima tähtsusastmega ülesannete blokeerimist võimalikult lühikese aja jooksul.

Hoidmine ja ootamine – selle tingimuse korral tuleb protsesside ühe või mitme ressursi hoidmine peatada samal ajal ühe või mitme muu ressurssi ootamise ajal.

Ringikujuline ootamine – sellega rakendatakse kõigi ressursitüüpide täielik järjestus. Ringikujuline ootamine nõuab ka, et iga protsess taotleb ressursse loendi kasvavas järjekorras.

 

Tupiku käsitlemiseks on kolm järgmist võimalust.

Ärge laske süsteemi tupikoelkusse.

Laske tupikul tekkida, seejärel kõrvaldage see tekkimisel.

Tupiku tekkimisel taaskäivitage süsteem.