Erinevus ummikseisu ja näljutamise vahel OS-is

Autor: Laura McKinney
Loomise Kuupäev: 3 Aprill 2021
Värskenduse Kuupäev: 23 Aprill 2024
Anonim
Erinevus ummikseisu ja näljutamise vahel OS-is - Tehnoloogia
Erinevus ummikseisu ja näljutamise vahel OS-is - Tehnoloogia

Sisu


Ummik ja nälg on mõlemad tingimused, kus ressursi taotlemise protsessid on pikka aega edasi lükatud. Kuigi ummikseis ja nälgimine erinevad üksteisest paljudes aspektides. Ummik on tingimus, kus ükski protsess ei käivitu täitmiseks ja igaüks ootab ressursse, mille on omandanud muud protsessid. Teisest küljest sisse Nälgimine, kasutab kõrgete prioriteetidega protsess pidevalt ressursse, takistades ressursside omandamisel madala prioriteediga protsessi. Allpool näidatud võrdlusdiagrammi abil arutame veel mõned erinevused ummikseisu ja nälgimise vahel.

  1. Võrdlusdiagramm
  2. Definitsioon
  3. Peamised erinevused
  4. Järeldus

Võrdlusdiagramm

Võrdluse alusUmmikNälgimine
PõhilineUmmik on koht, kus ükski protsess ei jätku ja blokeerub.Nälgimine blokeerib madala prioriteediga protsesse ja jätkub kõrge prioriteediga protsess.
Tekkiv seisundVastastikuse välistamise esinemine, hoidke ja oodake, eelistust ei tehta ja ringkiri ootavad samaaegselt.Prioriteetide jõustamine, ressursside kontrollimatu juhtimine.
Muu nimiÜmmargune ootus.Elutark.
RessursidUmmistuses blokeerivad taotletud ressursid muud protsessid.Nälgimise korral kasutavad taotletud ressursse pidevalt kõrge prioriteediga protsessid.
ÄrahoidmineVäldi vastastikust välistamist, hoidke ja oodake ning ümmargust ootamist ja lubage soodustusi. Vananemine.


Ummiku määratlus

Ummik on olukord, kus protsessori mitu protsessi konkureerivad protsessori piires saadaolevate ressursside lõpliku arvu pärast. Siin hoiab iga protsess ressurssi ja oodake ressursi omandamist, mida hoiab mõni muu protsess. Kõik protsessid ootavad ressursse ringikujuliselt. Alloleval pildil näete, et protsess P1 on omandanud ressursi R2, mida nõuab protsess P2, ja protsess P1 taotleb ressurssi R1, mida jällegi hoiab R2. Seega moodustavad protsessid P1 ja P2 ummikseisu.

Ummistus on tavaline probleem mitutöödeldavates operatsioonisüsteemides, hajutatud süsteemides ja ka paralleelsetes arvutisüsteemides. Ummiku seisundi parandamiseks peab samaaegselt ilmnema neli tingimust: vastastikune välistamine, hoidmine ja ootamine, eelistuste puudumine ja ümmargune ootamine.


  • Vastastikune välistamine: Ainult üks protsess korraga saab ressurssi kasutada, kui mõni muu protsess nõuab sama ressurssi, tuleb oodata, kuni ressurssi kasutav protsess selle vabastab.
  • Hoidke ja oodake: Protsess peab hoidma ressurssi ja ootama mõne muu protsessi valduses oleva ressursi omandamist.
  • Mingeid eelistusi: Ressursside hoidmise protsessi ei saa ennetada. Ressursi hoidmise protsess peab ressursi oma ülesande täitmise korral vabatahtlikult vabastama.
  • Ümmargune ootus: Protsess peab ootama ressursse ringikujuliselt. Oletame, et meil on kolm protsessi {P0, P1, P2}. P0 peab ootama P1 valduses olevat ressurssi; P1 peab ootama protsessi P2 valduses oleva ressursi omandamist ja P2 peab ootama, et omandada protsess, mida hoiab P0.

Kuigi mõned rakendused võivad tuvastada programme, mis võivad ummikseisu jääda. Kuid ummikseisu ennetamise eest ei vastuta kunagi opsüsteem. Ummistusvabade programmide kavandamine on programmeerijate kohustus. Seda saab teha, vältides ülaltoodud tingimusi, mis on ummikseisu tekkimiseks vajalikud

Nälgimise määratlus

Nälgimist saab määratleda kui siis, kui ressursi protsessitaotlust ja seda ressurssi on teised protsessid pidevalt kasutanud, seisab taotlev protsess nälga. Nälgimise ajal ootab protsess, mis on valmis täitmiseks, et protsessor eraldaks ressursi. Kuid protsess peab ootama lõputult, kuna muud protsessid blokeerivad pidevalt soovitud ressursse.

Nälgimisprobleemid tekivad üldiselt prioriteediplaani algoritm. Prioriteedigraafiku algoritmis eraldatakse ressurss alati kõrgema prioriteediga protsessile, takistades madalama prioriteediga protsessil taotletud ressursi saamist.

Vananemine suudab nälga lahendada. Vananemine suurendab järk-järgult selle protsessi prioriteeti, mis on ressursse kaua oodanud. Vananemine takistab madala prioriteediga protsessil ressurssi lõputult oodata.

  1. Ummikusse ei lähe ükski protsess täitmiseks, iga protsess blokeeritakse, oodates teise protsessi omandatud ressursse. Teisest küljest on nälgimine tingimus, kus suurema prioriteediga protsessidel lubatakse ressursse pidevalt hankida, takistades madala prioriteediga protsessidel ressursside hankimist, mille tulemuseks on madala prioriteediga protsesside piiramatu blokeerimine.
  2. Ummik tekib nelja tingimuse korral Vastastikune välistamine, hoidke ja oodake, eelistusi pole ja ümmargune ootamine toimub samaaegselt. Kuid nälgimine toimub protsessi ajal prioriteedid on jõustatud ressursside eraldamise ajal või on süsteemis ressursside kontrollimatu juhtimine.
  3. Ummikut nimetatakse sageli nime järgi ümmargune ootamine arvestades, et nälgimist nimetatakse Elatud lukk.
  4. Ummistuses blokeerivad ressursid protsess, samas kui nälgimisel kasutavad protsessid pidevalt kõrge prioriteediga protsesse.
  5. Ummistust saab vältida selliste tingimuste vältimisega nagu vastastikune välistamine, hoidmine ja ootamine ning ringikujuline ootamine ja pikaajalisi ressursse hoidvate protsesside ennetamine. Teisest küljest saab nälga vältida vananemine.

Järeldus:

Nii ummik kui ka nälgimine viivitavad protsessi blokeerimisega. Ühest küljest, kus ummik võib põhjustada protsesside nälga, ja teiselt poolt, kui nälgimine võib protsessid ummikseisust välja viia.