Разлика између застоја и гладовања у оперативном систему

Оперативни систем је најосновнији софтвер који се покреће на рачунару. Одговоран је за управљање меморијом и процесима рачунара, као и за заштиту детаља хардвера од апликативних програма који га користе. Оперативни систем рачунара такође обезбеђује правичну расподелу ресурса корисницима и програмима, за разлику од једнаке дистрибуције између процеса. Систем поштеног заказивања омогућава једном процесу да користи ЦПУ, док други чека у реду. Као резултат, свака нит добија довољан приступ ограниченим ресурсима који спречавају два најчешћа стања која би у супротном одгодила процес: Застој и гладовање. Обоје су сродни концепти где процеси немају приступ ресурсима. Овај чланак истиче неке кључне тачке упоређивања ова два на разним фронтовима.

Шта је ћорсокак?

Застој је услов када је скуп нити блокиран јер сваки процес који држи ресурс покушава приступити неким другим ресурсима које држи други процес, што на крају спречава поштено заказивање система. Ситуација са застојем настаје када следећа четири услова буду тачна: Узајамно искључивање значи да само један процес може истовремено приступити ресурсима; Ниједан увјет за претпоставку не значи да ресурс може бити добровољно ослобођен само процесом који држи ресурс; Задржавање и чекање значи да процес који садржи ресурсе може затражити додатне ресурсе које поседују други процеси и; Кружно чекање значи да су два или више процеса заглављени у кружном ланцу чекајући да се сваки процес ослободи својих ресурса.

Шта је гладовање?

Гладовање је стање које настаје када процес уђе у период чекања на неодређено време, јер процес са ниским приоритетом никада не добија шансу за приступ ресурсу због сталног протока процеса високог приоритета који приступају истом извору. То је проблем управљања ресурсима јер је процес ускраћен приступ ресурсима који су му потребни и тиме гура процес у неограничен период чекања. То се дешава зато што се потребан ресурс никада не додељује процесу због чега процес гладује због ресурса, отуда и име. Најбољи начин за избегавање глади је употреба технике старења која постепено повећава приоритет процеса који су у периоду чекања дуже време да би се обезбедио правичан систем заказивања.

Разлика између застоја и гладовања у ОС-у

  1. Дефиниција ћорсокака и глади

И застој и гладовање су сродни концепти који спречавају правично заказивање система где су процеси блокирани у приступу ресурсима. Застој се, као што име сугерира, односи на стање у којем је скуп нити или процеса блокиран, јер сваки процес чека да добије ресурс који се држи у другом процесу, што резултира у ситуацији у којој се заустављају програми. С друге стране, гладовање покреће застој који узрокује замрзавање процеса, јер је процес с ниским приоритетом ускраћен приступ ресурсима који су додељени процесу високог приоритета.

  1. Стање

Застој се односи на специфично стање до којег долази када нит или процес пређе у период чекања, јер системски ресурс који је тражио држи други процес, који заузврат чека да други процес ослободи свој ресурс и тако створи застој. То је узроковано лошом искоришћеношћу ресурса. Глад је услов одлагања на неодређено време када је процес ниског приоритета ускраћен приступ ресурсима који су му потребни јер се ресурси додељују другом процесу високог приоритета. То је проблем управљања ресурсима који присиљава систем да ресурсе додељује само процесима високог приоритета.

  1. Карактеризација застоја и глади

Застој је крајњи облик гладовања који настаје када се истовремено појаве следећа четири стања: узајамно искључивање, без предпоставке, чекање и чекање и кружно чекање. Услов застој се јавља само у системима у којима су сва четири услова тачна. Глад се јавља на основу различитих услова, попут када нема довољно ресурса да се обилази и приоритети процеса почну да се смањују или када процеси почну давати ресурсе другим процесима без контроле. Ако процес са ниским приоритетом захтева ресурс резервиран за процесе са највишим приоритетом, процес гладује заувек. Глад се такође дешава када се ресурси распоређују произвољно, због чега процеси чекају дужи временски период.

  1. Превенција

Гладовање се може спречити коришћењем одговарајућег алгоритма заказивања са редоследом приоритета који у ствари користи и технику старења - технику заказивања која додаје фактор старења приоритету сваког захтева што значи да повећава ниво приоритета процеса са малим приоритетом који су чекали дуже време. Такође, пружање више ресурса програмима требало би избегавати континуирано загушивање ресурса. Да би се спречило да систем зађе у ћорсокак, процеси морају бити ускраћени за приступ једном или више ресурса, док истовремено чекају друге, а само једном процесу треба дозволити приступ ресурсу истовремено.

Застој вс гладовање: упоредни графикон

Резиме Деадлоцк ВС. Изгладњивање

И застој и гладовање повезани су концепти у вишепроцесорским оперативним системима или дистрибуираним системима који узрокују да се једна или више нити или процеса заглаве у чекању ресурса који су им потребни. Застој је ситуација која настаје када један или више процеса затражи приступ истом ресурсу што узрокује замрзавање процеса, док гладовање проузрокује застој који потискује процес у неодређено стање одлагања, јер је процесима ускраћен приступ ресурсима који посједују процес високог приоритета и треба га чекати заувек.