A holtpont és az éhezés közötti különbség az operációs rendszerben

Szerző: Laura McKinney
A Teremtés Dátuma: 3 Április 2021
Frissítés Dátuma: 23 Április 2024
Anonim
A holtpont és az éhezés közötti különbség az operációs rendszerben - Technológia
A holtpont és az éhezés közötti különbség az operációs rendszerben - Technológia

Tartalom


A holtpont és az éhezés egyaránt azok a feltételek, amelyekben az erőforrást igénylő folyamatok sokáig késik. Bár a holtpont és az éhezés sok szempontból különböznek egymástól. Holtpont egy olyan feltétel, amikor egyetlen folyamat sem halad tovább a végrehajtáshoz, és mindegyik olyan erőforrásokra vár, amelyeket a többi folyamat megszerez. Másrészt, be Éhezés, a magas prioritásokkal rendelkező folyamat folyamatosan használja az erőforrásokat, megakadályozva az alacsony prioritású folyamatot az erőforrások megszerzéséhez. Beszéljünk néhány további különbségről a patthelyzet és az éhezés között az alább bemutatott összehasonlító táblázat segítségével.


  1. Összehasonlító táblázat
  2. Meghatározás
  3. Főbb különbségek
  4. Következtetés

Összehasonlító táblázat

Az összehasonlítás alapjaHoltpontÉhezés
AlapvetőA holtpontban nem halad tovább folyamat, és elakadhat.Az éhezés az, ahol az alacsony prioritású folyamatok blokkolódnak, és a magas prioritású folyamatok folytatódnak.
Felmerülő állapotA kölcsönös kizárás előfordulása, tartsd meg és várd, nincs mentesség és körkörös várakozás egyszerre.A prioritások érvényesítése, az ellenőrizetlen erőforrás-gazdálkodás.
Másik névKörkörös várakozás.Lifelock.
ErőforrásokZárt helyzetben a kért erőforrásokat a többi folyamat blokkolja.Éhezéskor a kért erőforrásokat folyamatosan használja a magas prioritású folyamatok.
MegelőzésKerülje el a kölcsönös kizárást, tartsa meg és várjon, és kör alakban várjon, és lehetővé tegye a mentességet. Öregedés.


A holtpont meghatározása

A holtpont olyan helyzet, amikor a CPU több folyamata versenyez a CPU-n belül rendelkezésre álló véges erőforrásokért. Itt minden folyamat rendelkezik erőforrással, és várjon, amíg megszerez egy olyan erőforrást, amelyet egy másik folyamat tart. Az összes folyamat körforgásra vár az erőforrásokra. Az alábbi képen látható, hogy a P1 folyamat megszerezte az R2 erőforrást, amelyet a P2 folyamat kért, és a P1 folyamat az R1 erőforrást kéri, amelyet ismét az R2 tart. Tehát a P1 és P2 folyamat holtpontot képez.

A holtpont gyakori probléma a többfeldolgozó operációs rendszerekben, az elosztott rendszerekben és a párhuzamos számítástechnikai rendszerekben is. Négy feltételnek, amelyeknek egyidejűleg kell fordulniuk a patthelyzet állapotának emeléséhez, amelyek a következők: Kölcsönös kizárás, Tartás és várakozás, Nincs mentesség és Körkörös várakozás.

  • Kölcsönös kizárás: Egyszerre csak egy folyamat használhat erőforrást, ha más folyamat ugyanazt az erőforrást kéri, meg kell várni, amíg az erőforrást használó folyamat kiadja azt.
  • Tartsa és várjon: A folyamatnak erőforrást kell tartania, és várnia kell egy másik erőforrás megszerzését, amelyet egy másik folyamat tart.
  • Nincs mentesség: Az erőforrások tárolásának folyamata nem oldható meg. Az erőforrást tartó folyamatnak önkéntesen kell felszabadítania az erőforrást, amikor elvégezte a feladatát.
  • Körkörös várakozás: A folyamatnak körkörösen kell várnia az erőforrásokat. Tegyük fel, hogy három folyamatunk {P0, P1, P2}. A P0-nak meg kell várnia a P1 birtokában lévő erőforrást; P1-nek meg kell várnia, hogy megszerezze a P2-folyamat birtokában lévő erőforrást, és P2-nek meg kell várnia, hogy megszerezze a P0-nél birtokolt folyamatot.

Bár vannak olyan alkalmazások, amelyek felismerhetik azokat a programokat, amelyek holtpontra kerülhetnek. De az operációs rendszer soha nem felelős a holtpontok megakadályozásáért. A programozók felelőssége a patthelyzet nélküli programok kidolgozása. Ez megtehető úgy, hogy elkerüli a fenti feltételeket, amelyek a patthelyzet bekövetkezéséhez szükségesek

Az éhezés meghatározása

Az éhezés akkor határozható meg, amikor egy erőforrás-folyamatkérelmet és azt az erőforrást a többi folyamatos folyamatosan használta, akkor a kérelmező folyamat éhezéssel jár. Éhezéskor a végrehajtásra kész folyamat vár a CPU-tól az erőforrás allokálására. A folyamatnak azonban határozatlan ideig kell várnia, mivel a többi folyamatosan blokkolja a kért erőforrásokat.

Az éhezés problémája általában a prioritási ütemezési algoritmus. A prioritási ütemezési algoritmusban a magasabb prioritással rendelkező folyamat mindig elosztja az erőforrást, megakadályozva, hogy az alacsonyabb prioritású folyamat megkapja a kért erőforrást.

Öregedés megoldhatja az éhezés problémáját. Az öregedés fokozatosan növeli annak a folyamatnak a prioritását, amely már régóta vár az erőforrásokra. Az öregedés megakadályozza, hogy egy alacsony prioritású folyamat végtelenségig várjon egy erőforrásra.

  1. Holtpontban a folyamatok egyikét sem hajtják végre a végrehajtáshoz, minden folyamat blokkolódik, várva a másik folyamat által megszerzett erőforrásokra. Másrészt, az éhezés olyan körülmény, amikor a magasabb prioritással bíró folyamatoknak folyamatosan megszerzik az erőforrásokat azáltal, hogy megakadályozzák az alacsony prioritású folyamatokat az erőforrások megszerzésénél, ami az alacsony prioritású folyamatok határozatlan ideig történő blokkolását eredményezi.
  2. Holtpont akkor jelentkezik, ha négy feltétel teljesül Kölcsönös kizárás, tartsd és várj, nincs mentesség és körkörös várakozás egyszerre fordul elő. Az éhezés azonban a folyamat során fordul elő a prioritások érvényesültek miközben erőforrásokat allokál, vagy a rendszer ellenőrizetlen erőforrás-gazdálkodást hajt végre.
  3. A holtpontot gyakran neve hívja körkörös várakozás míg az éhezésnek nevezik Élő zár.
  4. A holtpontban az erőforrásokat a folyamat blokkolja, míg éhezésnél a folyamatokat folyamatosan használják a magas prioritással bíró folyamatok.
  5. A holtpont elkerülhető az olyan feltételek elkerülése révén, mint a kölcsönös kizárás, a tartás és várakozás, valamint a körkörös várakozás, és lehetővé téve a hosszú ideig erőforrásokat tároló folyamatok megelőzését. Másrészt az éhezés megakadályozható öregedés.

Következtetés:

A holtpont és a Starvation blokkolással késlelteti a folyamat végrehajtását. Egyrészt, ahol a patthelyzet a folyamatok éhezést okozhat, másrészt az éhezés a folyamatokat ki tudja vetni a patthelyzetből.