Ummiku, näljahäda, erinevuste, ennetamise ja ületamise määratlus

Ummiku, näljahäda, erinevuse, ennetamise, ületamise ja põhjuse määratlus: seisund, kus kaks või enam protsessi ootavad üksteist praegu kasutusel olevate ressursside vabastamiseks.

Ummik ja nälgimine

Kiirlugemisloendsaade
1.DEADLOCKi mõiste
1.1.Ummiku süsteemi mudel
1.2.Ressursside ummikseis
1.2.1.Ennetatav
1.2.2.Ei saa ennustada
1.3.Ummiku põhjus
1.4.Ummiku käsitlemine ja probleemid
1.4.1.Ummiku käitlemine
1.4.2.Ummiku probleemide ignoreerimine
2.Tuvastage ja vältige
2.1.Tuvastage ja parandage
2.2.Ummiku vältimine
3.Ummiku ennetamine
4.Mis on STARVATSIOON
5.Näljutamise omadused
6.Nälga vananemise ja RR ületamine
6.1.Näljast vananemise ületamine
6.2.Näljahäda RR ületamine
7.Erinevus tupikseisus ja nälgimises
7.1.Ummik
7.2.Nälgimine
8.Näide
8.1.Esimene näide
8.2.Teine näide
8.3.Jaga seda:
8.4.Seonduvad postitused:

Loe ka artikleid, mis võivad olla seotud: Infosüsteemide mõistmine


DEADLOCKi mõiste

Ummik on tingimus, mille korral kaks või enam protsessi ootavad üksteist praegu kasutusel olevate ressursside vabastamiseks. Kuna mitmed protsessid ootavad üksteist, pole nende protsesside töös edusamme. Ummik reaalses mõttes on ummikseis. Operatsioonisüsteemis viidatud ummikseis on protsessi ummikseis. Ummik on probleem, mis tekib tavaliselt siis, kui paljudel protsessidel on ühine ressurss, mida saab korraga muuta ainult üks protsess. Niisiis on ummikseis seisund, kus protsess enam ei tööta või protsesside vahel pole enam sidet.

instagram viewer


Näide ummikust:

  1. Protsess A kasutab CD-ROM-i.
  2. Protsess B kasutab skannerit.
  3. Protsess A nõuab skannerit (ilma CD-ROM-i eemaldamata) → ootab.
  4. Protsess B nõuab CD-ROM-i (ilma skanneri eemaldamiseta) → ootab.
  5. Ootan... ootan... DEADLOCK.

Ummiku süsteemi mudel

Ummiku tingimuste modelleerimiseks kujutage ette süsteemi, millel on:

  1. Protsesside kogum, P = {P1, P2,…, Pn}
  2. Erinevate ressursitüüpide komplekt, R = {R1, R2,…, Rm}
  3. Ressursil Ri on n identset osa (eksemplari) ja kumbagi neist kasutatakse.

Tavalises töömudelis kasutab protsess ressursse järgmises järjekorras:

  • saada päring
    Kui taotlust ei saa kohe rahuldada (nt kuna ressurssi kasutab teine ​​protsess), peab protsess ootama, kuni soovitud ressurss on saadaval.
  • Ressursside kasutamine (kasutamine)
    Protsessid võivad kasutada ressursse, näiteks printereid printimiseks, kettaseadmeid sisend- ja väljundtoimingute tegemiseks jne.
  • Ressursside vabastamine (uuesti)
    Kui protsess on ressursi kasutamise lõpetanud, tuleb see vabastada, et seda saaks kasutada mõni teine ​​protsess.
Ummiku töömudel

Ressursside ummikseis

Ummikud võivad tekkida siis, kui protsess pääseb objektile valesti juurde. Neid objekte nimetatakse ressurssideks. Ressursse on kahte tüüpi:


Ennetatav

Ressurss ütles ennetatav kui ressurssi saab võtta (vabastada) protsessist, mis seda kasutab, protsessile mingit mõju avaldamata. Seda ressurssi ei kulu ükski protsess. Kuid pärast protsessi lõppu tagastatakse need ressursid teiste protsesside jaoks, mis varem seda ressurssi ei saanud.


Näiteks protsessor, I / K kanal, ketas, semafor. Näide seda tüüpi ressursside rollist esinemises Ummik on näiteks protsess, kus kasutatakse kettaid A ja B, see juhtub ummikseis kui igal protsessil on juba üks ketas ja see nõuab teist ketast. Seda probleemi ei tunne mitte ainult programmeerijad, vaid keegi, kes kujundab opsüsteemi. Üldiselt kasutatakse meetodit, arvutades kõigepealt ressursid, mida kasutavad neid ressursse kasutavad protsessid. Teine näide, mis põhjustab ummikseis allikatest, mida saab korduvalt kasutada, on seotud põhimälu kasutavate protsesside arvuga. Näite võib näha järgmisest koodist:


Ennetatav

Pärast seda, kui protsessid P ja Q on päringufunktsiooni esmakordselt täitnud, on partiis saadaolevaid ressursse 50 (200-70-80). Nii et kui P käivitab taotleva funktsiooni uuesti nii palju kui 60, siis ei leia P ressurssi partiist 60, seega P ootab, kuni soovitud ressurss on täidetud. Samuti ootab Q-ga, kuni tema taotlus täidetakse, lõpuks juhtub ummikseis. Selle lahenduseks on virtuaalse mälu kasutamine.


Ei saa ennustada

Seda tüüpi ressursside korral ei saa ressurssi seda kandvast protsessist hankida, kuna see põhjustab arvutuslikke tõrkeid. Printerid on üks näide. Kui protsess kasutab millegi printimiseks printerit, ei saa seda printerit teisest protsessist midagi printida. Seda tüüpi ressursid võivad tavaliselt esineda tupikud. Näited on järgmised:


Ei saa ennustada

Kahest funktsioonist on need, mis toimivad ressursside vastuvõtmiseks ja andmiseks, kuid on olukordi, kus protsess ei saa ressursse loodud nii, et tekib plokk, kuna see juhtub ummikseis. Muidugi on see väga haruldane, arvestades, et tootmisel ja tarbimisel pole piire, kuid on selline olukord, mille tulemuseks on ummikseis. Selle tulemuseks on ummikseis Seda liiki on raske avastada. peale selle ummikseis seda toodab mõni väga haruldane kombinatsioon.


Ummiku põhjus

Pärast mõningate ülaltoodud illustratsioonide nägemist võime nüüd hakata ette kujutama, mis see on ummikseis. Tegelikult ummikseis see juhtub, kui tingimused ummikseis on täidetud. Põhjuseid on 4 ummikseis on järgmine:


  • a. Vastastikune välistamine
    Ressurssi saab kasutada ainult üks protsess ja teine ​​ressurssi kasutada sooviv protsess peab ootama, kuni ressurss vabastatakse või ükski protsess ressurssi ei kasuta seda.
  • b. Hoidke ja oodake
    Ressurssi kasutav protsess võib ressurssi uuesti taotleda, see tähendab, et see ootab, kuni taotletud ressurss seda ei tee mida muud protsessid kasutavad, võib see põhjustada ressursside nälga, sest protsess ei pruugi õigel ajal ressursse saada mis on vana.
  • c. Eelistust pole
    Protsessis olemasolevaid ressursse ei tohiks teised protsessid enesestmõistetavaks pidada. Nende ressursside saamiseks tuleb need kõigepealt vabastada protsessiga, mis neid hoiab, peale selle, et kogu protsess ootab ja lubab lubada ainult protsesse, millel on ressursse kõndima.
  • d. Ringkiri Oota
    Sellised tingimused nagu ahelad, st protsess nõuab ressurssi, mis on järgmise protsessi käes.

Ummiku käsitlemine ja probleemid

Ummiku käitlemine

Käsitsemiseks on mitu võimalust ummikseis, mida üldiselt on sellega tegelemiseks 4 viisi, nimelt:

  1. Eirake probleemi.
  2. Tuvastage ja parandage.
  3. Vältimine.
  4. Ärahoidmine.

Ummiku probleemide ignoreerimine

Tagamaks, et süsteem ei siseneks ummikseis, süsteem saab kasutada ennetust ummikseis või vältimine ummikseis. Vältimine ummikseis nõuab teavet selle kohta, milliseid ressursse protsess nõuab ja kui kaua seda kasutatakse. Selle teabe abil saab otsustada, kas protsess peaks ootama või mitte. See on tingitud ressursi olemasolust, olenemata sellest, kas seda kasutab mõni muu protsess või mitte.


Seda meetodit tuntakse paremini kui jaanalinnu algoritmi. Selles algoritmis on öeldud, et tegeleda Ummik on teeselda, et midagi pole valesti. Tundub, et see teeb midagi saatuslikku, kuid Unixi operatsioonisüsteem tuleb sellega toime Ummik sel viisil, mitte tuvastamata Ummik ja laseb sellel programmi automaatselt sulgeda, nii et nagu poleks midagi juhtunud. Nii et kui see juhtub Ummik, siis on tabel täis, nii et protsess, mis käivitab protsessi operaatori kaudu, peab ootama teatud aja ja proovima uuesti.


Loe ka artikleid, mis võivad olla seotud: Personalijuhtimine: määratlus, funktsioonid, eesmärgid, elemendid, lähenemine


Tuvastage ja vältige

Tuvastage ja parandage

Trikk on avastada, kui see juhtub Ummik Protsessi käigus tuvastatakse, milline süsteem on sellega seotud. Olles teadnud, millised süsteemid on seotud, hoitakse protsessi süsteemi parandamiseks ja uuesti töötamiseks. Kui süsteem ei taga ummikseis ilmneb ja seda ei toeta ka tuvastamine ummikseis ja ennetustöö, siis jõuame seisundini ummikseis mis võib mõjutada süsteemi jõudlust, kuna protsess ei saa ressursse kasutada, nii et ka teised protsessid on häiritud. Lõpuks süsteem seiskub ja tuleb taaskäivitada.


Asjad, mis juhtuvad kohaloleku tuvastamisel Ummik on:

  1. Ressursitaotlusi rahuldatakse nii kaua kui võimalik.
  2. Operatsioonisüsteem kontrollib tingimusi ringikujuline ootamine perioodiliselt.
  3. Olemasolemise kontroll Ummik Seda saab teha alati, kui on mõni ressurss, mida protsess kasutada soovib.
  4. Konkreetse algoritmiga kontrollimine.

Ummiku vältimine

Selle meetodi lähenemisviis on lubada ainult ressursitaotlusi, mis tõenäoliselt ummikuid ei põhjusta. Selle meetodi abil uuritakse protsessile juurdepääsu andmise mõju. Kui juurdepääsu võimaldamine pole ummikusse viimise jaoks võimalik, antakse taotleva protsessi jaoks ressursse. Kui see pole turvaline, peatatakse taotlusprotsess seni, kuni taotlust on ohutu täita. See tingimus ilmneb pärast seda, kui on vabastatud varem teises protsessis olnud ressurss.


Kavandatud ohutut seisundit nimetatakse edaspidi turvaliseks olekuks, samas kui riiki, kus taotletud ressurssi pole võimalik pakkuda, nimetatakse ebaturvaliseks olekuks.


  • a. Ohutu seisund (turvaline olek)
    Riigi saab kuulutada ohutuks riigiks, kui ummikseis puudub ja on võimalus rahuldada kõik ootel ressursitaotlused ilma ummikut tekitamata. Teatud korraldust järgides.
  • b. Ebaturvaline seisund (ohtlik riik)
    Olek kuulutatakse ebaturvaliseks olekuks, kui pole võimalik rahuldada kõiki praegu ootel olevaid taotlusi järjestikuste protsesside abil.
Vältimine

Enamikus süsteemides taotletakse ressursse ainult üks kord. Süsteem peab suutma ära tunda, et ressurss on ohutu või mitte (pole ummikus), pärast seda see eraldatakse.


Ummiku vältimise süsteemis tehakse seda tagades, et programmis oleks maksimaalselt taotlusi. Teisisõnu, see süsteem tagab eelnevalt, et süsteem on alati ohutu. Ükskõik, kas esitate esmase taotluse või taotlete täiendavaid ressursse, peab süsteem olema alati turvalises olekus.


Turvaline olek See olek tekib, kui süsteem saab teatud tingimustel eraldada ressursse igale protsessile ja ikkagi võib tekkida ummikseis. Turvaline riik ei ole ummikseisund, seega on ummikseis olek ohtlik, kuid mitte alati ei põhjusta ohtlik seisund ummikseisundit, kuid on võimalus, et see võib ka tekkida.


Ummiku ennetamine

Ennetusmeetodit peetakse ummikute vältimise seisukohast puhtaks lahenduseks. Kuid ennetamine toob kaasa ressursside halva kasutamise. Ennetamismeetodis kasutatakse lähenemist, kõrvaldades neli tingimust, mis võivad põhjustada täitmise ajal ummikuid. Coffman (1971)


Esimene eemaldatav tingimus on vastastikune välistamine, kui protsessile pole spetsiaalselt määratud ressursse, ei teki kunagi ummikut. Kahe või enama protsessi lubamine samale ressursile juurdepääsuks põhjustab aga kaose. Kasutatavad sammud on ressursside spoolimine, nimelt järjekorras olevate töökohtade järjekorda seadmine ja neid serveeritakse ükshaaval.


Mõned tekkida võivad probleemid on järgmised:

  1. Kõiki ei saa poolida, protsessitabelit ennast on võimatu poolida.
  2. Konkureerimine kettaruumis spoolimise eest võib viia ummikusse.

Seetõttu ei saa esimest tingimust jätta tegemata, nii et vastastikust tõrjutust ei saa tõesti ära jätta.


Teine võimalus ootel ja ootetingimuste kaotamisega näib paljutõotavam. Kui praegu ressurssi kasutaval protsessil saab takistada teise ressursi ootamist, siis saab takistada ummikseisu. Kasutatav samm on panna protsessid protsessi alguses küsima vajalikke ressursse, et neile vajalikke ressursse saaks eraldada. Kuid kui on ressursse, mida kasutatakse, ei saa protsess seda käivitada.


Võimalikud probleemid:

  1. Raske on teada, kui palju ressursse protsessi alguses vaja läheb.
  2. Ressursside kasutamine ei ole optimaalne, kui on ressursse, mida kasutatakse ainult mõnda aega ja mida ei kasutata, kuid mis kuuluvad siiski protsessile, mis on seda algusest peale taotlenud.

Kolmanda ennetava tingimuse kõrvaldamine osutub mitte paljulubavamaks kui teise tingimuse kõrvaldamine, sest kolmanda tingimuse kõrvaldamisega saab protsessi poolenisti peatada. See pole võimalik, sest lõpetatud protsessi tulemus pole hea.


Viimane viis on eemaldada neljas ringikujuline ootetingimus. On kahte lähenemisviisi, nimelt:

  1. Seadistage nii, et iga protsess saaks korraga kasutada ainult ühte ressurssi. Kui ta soovib teist ressurssi, tuleb omandis olev ressurss vabastada.
  2. Tehke ressursile juurdepääsevate protsesside nummerdamine. Protsessil on võimalik ressurssi igal ajal taotleda, kuid taotlused tuleb esitada järjekorras.

Võimalik probleem seadistamisel, et igal protsessil võib olla ainult üks protsess, pole veel kõik protsess nõuab ainult ühte ressurssi, keeruka protsessi jaoks võtab see korraga palju ressursse koos. Samal ajal seisab numeratsiooni puhul probleem selles, et puudub numeratsioon, mis rahuldaks kõiki osapooli.


Loe ka artikleid, mis võivad olla seotud: Analüüs - määratlus, näited, etapid, eesmärgid, eksperdid


Mis on STARVATSIOON

Praeguste ja tulevaste infosüsteemide väljatöötamine viib mitme programmeerimissüsteemini, mitmekordne töötlemine, paralleelne ja hajutatud, mis nõuab protsesside olemasolu, mis töötavad koos sama aeg


¨Nälgimine on seisund, mis tavaliselt tekib pärast ummikseis.

Protsessi puudumine ressursse (sest see juhtus ummikseis) ei saa kunagi ressursse vaja kogeda nälgimine (nälginud).


¨Nälgimine on seisund, mis tavaliselt tekib pärast ummikseis. Protsessi puudumine ressursse (sest see juhtus ummikseis) ei saa kunagi ressursse vaja kogeda nälgimine (nälginud). Nälgimine võib toimuda ajakava koostamise protsessides, mis kasutavad põhimõtet "kiireim lõpetatud protsess kõigepealt", näiteks lühima töö esimene (SJF) ja prioriteetide ajastamine.


Protsessi puudumine ressursse (sest see juhtus ummikseis) ei saa kunagi ressursse vaja kogeda nälgimine (nälginud). Näljast saab vananemise ja töötlemise ümmarguse Robini abil.


LÜLITAMISE AJAL

TÄHELEPANU

Protsessid, millel puuduvad ressursid (ummikute tõttu), ei saa kunagi vajalikke ressursse, nii et nad kogevad nälga (nälga)


TULEKU LUKUSTAMATA

TULEKU LUKUSTAMATA

See on siis, kui süsteemis on viga, nii et jaotuses on ebavõrdsus ressurss. Üks protsess saab alati ressursse, samas kui muud protsessid seda kunagi ei saa

Näljutamise omadused

Nälg võib tekkida ajastamisprotsessides, mis kasutavad põhimõtet "kõige kiiremini lõpule viidud protsess on esimene", näiteks lühim töö kõigepealt (SJF) ja prioriteetide ajastamine.


Loe ka artikleid, mis võivad olla seotud: Operatsiooniuuring - määratlus, etapid, mudel, määratlus, eesmärgid, näited


Nälga vananemise ja RR ületamine

Näljast vananemise ületamine

  • Olemasolevatele algprotsessidele antakse töötlemisjärjestus (N) valemiga N = (P + T) / P. Käivitatakse maksimaalne N ja muid protsesse suurendatakse nende protsesside järjekorras, nii et kui mõni teine ​​protsess siseneb, saab eelmine protsess ressursist osa ja seda saab teha.

  • Kui on mitu protsessi, milles on maksimaalselt N, siis nende protsesside seas nähakse aega, mis kulub selle lõpuleviimiseks. Kui see on ikka sama, siis vaadake saabumisaega.
Näljutamise vooskeem

Näljahäda RR ületamine

Näljast üle saamiseks on mitmeid viise, üks neist on vananemine, algprotsessid antakse järjekorras
(N) töötlemine valemiga N = (P + T) / P. Käivitatakse maksimaalne N ja muid protsesse suurendatakse nende protsesside järjekorras, nii et kui mõni teine ​​protsess siseneb, saab eelmine protsess ressursist osa ja seda saab teha.


Kui on mitu protsessi, milles on maksimaalselt N, siis nende protsesside seas nähakse aega, mis kulub selle lõpuleviimiseks. Kui see on ikka sama, siis vaadake saabumisaega.
Lisaks saab näljahädast ümmarguse Robini abil töötlemisega üle ka.


ümmargune robin, on protsess, mis pannakse järjekorda vastavalt saabumisprotsessile. Lahenduses ei viida protsess kohe lõpule, kui vajalik aeg ületab antud kvantaja.


Kvantiaeg ise on aeg, mis on antud protsessi lõpuleviimiseks. Kui protsess on jõudnud kvanttaimuni, tagastatakse ülejäänud protsess järjekorra taha ja ressursid viiakse järgmisse protsessi. Nii saavad kõik järjekorras olevad protsessid ressursse omakorda (ühelgi protsessil pole ressursside monopoli), et kõik protsessid saaksid lõpule viia.


  • Ring Robin on protsess, mis pannakse järjekorda vastavalt saabumisprotsessile. Lahenduses ei viida protsess kohe lõpule, kui vajalik aeg ületab antud kvantaja.

  • Kvantiaeg on aeg, mis on antud protsessi lõpuleviimiseks. Kui protsess on jõudnud kvanttaimuni, tagastatakse ülejäänud protsess järjekorra taha ja ressursid viiakse järgmisse protsessi. Nii saavad kõik järjekorraprotsessid ressursid omakorda (ühelgi protsessil pole ressursside monopoli), et kõik protsessid saaksid lõpule viia.

Loe ka artikleid, mis võivad olla seotud: Juhtimise infosüsteemid - määratlus, funktsioonid, eesmärgid, protsessid, võimalused, näited


Erinevus tupikseisus ja nälgimises

Ummik

  • Ummik on tingimus, kus protsesside kogum ei saa ressursside konkurentsi tõttu uuesti töötada.
  • Protsess on olekus ummikseis kui kõik protsessid on ooteseisundis ( ootejärjekord) sündmused, mida saab läbi viia ainult ootejärjekorras olevate protsessidega.

  • Tegelikult ummikseis Selle võib põhjustada neli asja:
  1. Protsess Vastastikune välistamine.
  2. Hoidmise ja ootamise protsess.
  3. Protsess eelisõigus.
  4. Ootamisprotsess tsükliga ummikseis teatud.

Nälgimine

  • ¨Nälgimine on seisund, mis tavaliselt tekib pärast ummikseis. Protsessi puudumine ressursse (sest see juhtus ummikseis) ei saa kunagi ressursse vaja kogeda nälgimine (nälginud).
  • Nälgimine võib toimuda ajakava koostamise protsessides, mis kasutavad põhimõtet "kiireim lõpetatud protsess kõigepealt", näiteks lühima töö esimene (SJF) ja prioriteetide ajastamine.
  • Näljast saab vananemise ja töötlemise ümmarguse Robini abil.

Näide

Esimene näide

Üldine hostinäide
  • Üks hüpikmenüü teadetest, mis kuvatakse Windowsi operatsioonisüsteemis näljahäda korral.
  • Selle hüpikmenüü märguande korral ei saa ekraan toimida vastavalt selle funktsioonile (ei saa programmi klõpsata ega käivitada). Win32-s tekkis viga või võib-olla kahjustus, kuna programmiressursside liiga palju käivitamiseks oli mäluressursside puudus.
  • Ülaltoodud märguannete hüpikmenüü nupp "Ära saada" põhjustab ekraani hetkeks külmumise ja automaatse värskendamise.

Teine näide

Õpilasel on 3 ülesannet ja ta tahab ka uut filmi vaadata. Õpilane seab vaatamise asemel esikohale ülesannete täitmise. Enne kolme ülesande täitmist andis teine ​​õppejõud talle uue ülesande. Järgmisel päeval oli assistendi ülesanne järgmisele praktikumile. Kui üks ülesanne on lõpetamata, on lektoril või assistendil juba teine ​​ülesanne. See kordub pidevalt, nii et õpilase soov uut filmi vaadata ei pruugi olla täidetud või mitte.