Kľúčový rozdiel: Zablokovanie sa týka situácie, keď procesy sú uviaznuté v kruhovom čakaní na zdroje. Na druhej strane, hladovanie nastáva, keď proces čaká na zdroj na neurčito. Zablokovanie znamená hladovanie, ale hladovanie neznamená zablokovanie.
Jednoduchým príkladom je systém s dvoma páskovými jednotkami a dva procesy každý zaberá jednu páskovú jednotku a čaká na druhú ako požiadavku pokračovať ďalej.
Je dôležité spomenúť, že situácia uviaznutia, ak sú tieto štyri podmienky súčasné -
- Vzájomné vylúčenie - zdroj môže byť použitý iba v procese naraz
- Počkajte a čakajte - proces, ktorý zaberá aspoň jeden zdroj, musí získať ďalší zdroj, ktorý je obsadený iným procesom, a preto tento proces čaká, kým sa tento zdroj uvoľní
- Žiadna preempcia - zdroj je oslobodený iba procesom, ktorý ho obsadil po dokončení jeho úlohy.
- Cirkulárne čakanie - všetky procesy v súboroch čakajú na zdroj, ktorý je držaný inými procesmi, čo zahŕňa aj posledný proces v súprave.
Stáva sa to tým, že proces najhorších priorít nevers získa zdroj kvôli neustálemu toku procesov s vyššou prioritou, než je to, a preto môže proces čakať navždy. Riešením riešenia hladovania je zabezpečiť, aby nezávislý manažér spravoval prideľovanie zdrojov a zabezpečil, aby každý proces získal zdroj v určitom okamihu. Musia sa zabrániť náhodnému a nekontrolovanému výberu alebo konkurencii, aby sa zabránilo hladomoru. Zablokovanie znamená hladovanie, ale hladovanie neznamená zablokovanie.
Preto sa zablokovanie a hladovanie líšia od seba. Zablokovanie nastane, keď žiadny z procesov v súbore nie je schopný posunúť sa dopredu kvôli obsadeniu požadovaných zdrojov iným procesom. Na druhej strane, hladovanie nastáva, keď proces čaká na neurčitý čas na získanie potrebného zdroja.
Porovnanie medzi zablokovaním a hladuním:
deadlock | hladovania | |
definícia | Zablokovanie nastane, keď žiadny z procesov v súbore nie je schopný posunúť sa dopredu kvôli obsadeniu požadovaných zdrojov iným procesom | Hladenie nastane, keď proces čaká na neurčitý čas na získanie potrebného zdroja. |
Iné meno | Okružné čakanie | Životný zámok |
Vznikajúce podmienky | Tieto štyri podmienky sa vyskytujú súčasne - vzájomné vylúčenie, držanie a čakanie, bezprednost a cirkulárny vtip | Nekontrolované riadenie zdrojov Priority procesov sa striktne presadzujú Nedostatok zdrojov |
Techniky vyhýbania sa / prevencie |
|
|
pokrok | Žiadny proces nemôže dosiahnuť pokrok | Okrem procesu obete môžu procesy pokračovať alebo pokračovať |
koncovka | Vyžaduje externý zásah | Môže alebo nemusí vyžadovať externý zásah |