Erinevus Ummikseisus Ja Nälgimises

Sisukord:

Erinevus Ummikseisus Ja Nälgimises
Erinevus Ummikseisus Ja Nälgimises

Video: Erinevus Ummikseisus Ja Nälgimises

Video: Erinevus Ummikseisus Ja Nälgimises
Video: Парковки. Как испортить город кучей асфальта. 2024, November
Anonim

Ummik vs nälgimine

Peamine erinevus ummikseisus ja nälgimises on põhjus-tagajärg seos nende vahel; nälga põhjustab ummikseis. Veel üks huvitav erinevus ummikseisu ja nälgimise vahel on see, et ummikseis on probleem, samas kui nälgimine võib mõnikord aidata ummikust välja tulla. Arvutimaailmas on arvutiprogrammi kirjutamisel mitu protsessi / lõime, mis töötavad samaaegselt üksteise järel, et täita programmile vajalikku teenust. Seetõttu peaks programmeerija õiglase süsteemi tagamiseks tagama, et kõik protsessid / lõimed saavad või saavad piisavalt juurdepääsu vajalikele ressurssidele. Kui ei, siis on ummikseis ja see viib hiljem nälga. Üldiselt ei sisalda õiglane süsteem ummikuid ega nälga. Ummikud ja nälgimine tekivad peamiselt siis, kui paljud teemad konkureerivad piiratud ressursside pärast.

Mis on ummikseis?

Ummik on seisund, mis tekib siis, kui kaks lõime või protsessi ootavad üksteise ülesande täitmist. Nad panevad ainult toru, kuid ei peatu ega lõpeta oma ülesannet. Arvutiteaduses võib ummikuid näha kõikjal. Tehingute andmebaasis põhjustab ummikseis, kui kaks protsessi oma tehingu raames värskendavad sama informatsioonirida, kuid vastupidises järjekorras. Samaaegsel programmeerimisel võib tekkida ummikseis, kui kaks konkureerivat tegevust ootavad üksteise edasiliikumist. Telekommunikatsioonisüsteemides võib signaalide kadumise või rikkumise tõttu tekkida ummikseis.

Praegu on ummikseis üks peamisi probleeme mitmetöötlussüsteemides ja paralleelarvutites. Lahendusena rakendatakse lukustussüsteemi, mida nimetatakse protsesside sünkroniseerimiseks nii tarkvara kui ka riistvara jaoks.

Erinevus ummikseisus ja nälgimises
Erinevus ummikseisus ja nälgimises

Mis on nälgimine?

Arstiteaduse sõnaraamatust tuleneb nälgimine elu säilitamiseks vajalike toitainete tõsise või täieliku puuduse tagajärjel. Samamoodi on arvutiteaduses nälgimine probleem, mis tekib siis, kui mitu lõime või protsessi ootavad sama ressurssi, mida nimetatakse ummikusse.

Ummikseisust väljumiseks peaks üks protsessidest või lõimudest loobuma või tagasi rulluma, et teine lõim või protsess saaks ressurssi kasutada. Kui seda pidevalt juhtub ja sama protsess või niit peab iga kord loobuma või tagasi kerima, lastes samal ajal teistel protsessidel või lõimedel ressurssi kasutada, siis läbib tagasi keritud valitud protsess või niit olukorra, mida nimetatakse nälgimiseks. Seetõttu on ummikseisust pääsemiseks üks lahendusi nälgimine. Seetõttu nimetatakse nälga mõnikord omamoodi elavaks. Kui on palju kõrge prioriteediga protsesse või lõime, siis madalama prioriteediga protsess või lõim nälgib alati ummikus.

Nälga võib olla palju, näiteks ressursside nälgimine ja protsessori nälgimine. Näljutamise kohta on palju levinud näiteid. Nad on lugejate-kirjutajate probleem ja söögifilosoofide probleem, mis on kuulsam. Spagetikaussidega ümarlaua taga istub viis vaikivat filosoofi. Kahvlid asetatakse iga külgneva filosoofipaari vahele. Iga filosoof peab vaheldumisi mõtlema ja sööma. Spagette võib filosoof süüa aga ainult siis, kui tal on nii vasakut kui ka paremat kahvlit.

Ummik vs nälgimine
Ummik vs nälgimine

“Söövad filosoofid”

Mis vahe on ummikus ja näljas?

• Protsess:

• Ummikseisus ootavad kaks lõime või protsessi teineteist ja mõlemad ei liigu edasi.

• Näljas, kui kaks või enam lõime või protsessi ootavad sama ressurssi, rullub üks tagasi ja laseb teistel ressurssi kõigepealt kasutada ning järgmisena proovib näljutav lõng või protsess uuesti. Seetõttu jätkavad kõik lõimed või protsessid igal juhul edasi.

• Tagasipööramine:

• Ummikseisus ootavad nii kõrge prioriteediga lõimed / protsessid kui ka madala prioriteediga lõimed / protsessid üksteist lõpmatult. See ei lõpe kunagi.

• Kuid näljahädas madala prioriteediga inimesed ootavad või veerevad tagasi, kuid prioriteetsed jätkavad.

• Ootel või lukus:

• Ummik on ringikujuline ootamine.

• Nälgimine on omamoodi elatis ja aitab mõnikord ummikust välja tulla.

• Ummik ja nälg:

• Ummik põhjustab nälga, kuid nälg ei põhjusta ummikut.

• Põhjused:

• ummikseis tekib vastastikuse tõrjutuse, ooteloleku ja ootamise, eelisõiguse puudumise või ringikujulise ootamise tõttu.

• Nälgimine toimub ressursside nappuse, ressursside kontrollimatu haldamise ja protsessi prioriteetide tõttu.

Kokkuvõte:

Ummik vs nälg

Ummik ja nälgimine on mõned probleemid, mis tekivad nii programmeerimisel kui ka riistvara juurutamisel tekkivate andmesõitude ja võistlustingimuste tõttu. Ummikseisus ootavad kaks lõime üksteist lõpmatult ilma käivitamiseta, samal ajal kui näljas rullub üks niit tagasi ja laseb teisel lõimal ressursse kasutada. Ummik põhjustab nälga, nälgimine aga aitab niidil ummikseisust välja tulla.

Pildid viisakalt:

  1. Steve Jurvetsoni arvuti USA Menlo Parkist (CC BY 2.0)
  2. Bdeshami “Söögifilosoofid” (CC BY-SA 3.0)

Soovitatav: