Nøkkelforskjell : Deadlock refererer til situasjonen når prosesser sitter fast i sirkulær venter på ressursene. På den annen side oppstår sult når en prosess venter på en ressurs på ubestemt tid. Dødelegg innebærer sult, men sult betyr ikke at det er død.
Et enkelt eksempel på det er et system med to båndstasjoner, og to prosesser tar hver en båndstasjon og venter på den andre som kravet om å fortsette videre.
Det er viktig å nevne at situasjonen for dødsfall okkuperer hvis disse fire forholdene holder seg til rette samtidig -
- Gensidig utestenging - en ressurs kan kun brukes av en prosess om gangen
- Hold og vent - en prosess som innebærer minst én ressurs trenger å skaffe seg en ekstra ressurs som er opptatt av en annen prosess, og derfor venter denne prosessen på at ressursen skal slippes ut
- Ingen forutsetning - ressurs er frigjort av kun prosessen som har okkupert det, etter at oppgaven er fullført.
- Sirkulær vente - alle prosessene i settene venter på en ressurs som holdes av andre prosesser, som inkluderer selv den siste prosessen i settet.
Det skjer som en prosess med verre prioritet nevers får ressursen på grunn av en konstant flyt av prosesser med bedre prioritet enn det, og derfor må prosessen måtte vente for alltid. Løsningen for å håndtere sult er å sørge for at en uavhengig leder skal administrere ressursallokeringene, slik at hver prosess får ressursen på et eller annet tidspunkt. Tilfeldige og ukontrollerte valg eller konkurranse må unngås for å forhindre sult. Dødsfall innebærer sult, men sult betyr ikke at det er død.
Derfor adskiller seg dødsfall og sult fra hverandre. Deadlock oppstår når ingen av prosessene i settet er i stand til å gå videre på grunn av belegget av de nødvendige ressursene ved en annen prosess. På den annen side oppstår sult når en prosess venter på ubestemt tid for å få den ressursen det krever.
Sammenligning mellom dødsfall og sult:
vranglås | Sult | |
Definisjon | Deadlock oppstår når ingen av prosessene i settet er i stand til å gå videre på grunn av belegget av de nødvendige ressursene ved en annen prosess | Sulten oppstår når en prosess venter på ubestemt tid for å få den ressursen det krever. |
Andre navn | Sirkulær venter | Levde lås |
Arising forhold | Disse fire forholdene oppstår samtidig - gjensidig utelukkelse, hold og vent, ikke-forløsning og sirkulær vidd | Ukontrollert ressursforvaltning Prosessprioriteter blir strenge håndhevelser Mangel på ressurser |
Unngåelse / forebyggende teknikker |
|
|
Framgang | Ingen prosess kan gjøre fremgang | Bortsett fra offerprosessen kan andre prosesser gå videre eller fortsette |
ending | Krever ekstern inngrep | Kan eller ikke krever ekstern inngrep |