Forskellen Mellem Dødlås Og Sult

Indholdsfortegnelse:

Forskellen Mellem Dødlås Og Sult
Forskellen Mellem Dødlås Og Sult

Video: Forskellen Mellem Dødlås Og Sult

Video: Forskellen Mellem Dødlås Og Sult
Video: ПЕРВЫЕ ПОСЛЕВОЕННЫЕ ГОДЫ. ВОСТОЧНАЯ ПРУССИЯ. КАЛИНИНГРАД. ИСТОРИИ ПРОФЕССОРА. КОП ПО ВОЙНЕ 2024, November
Anonim

Deadlock vs sult

Den største forskel mellem dødvande og sult er årsagen og virkningen forholdet mellem dem; det er dødvande, der forårsager sult. En anden interessant forskel mellem dødvande og sult er, at dødvande er et problem, mens sult undertiden kan hjælpe med at komme ud af et dødvande. I computerverdenen vil der, når du skriver et computerprogram, være mere end en proces / tråd, der samtidigt kører den ene efter den anden for at opfylde den krævede service til programmet. Derfor skal programmøren være nødt til at sikre, at alle processer / tråde modtager eller får tilstrækkelig adgang til de ressourcer, de har brug for, for at have et retfærdigt system. Hvis ikke, vil der være et dødvande, og det vil føre til sult senere. Generelt indeholder et retfærdigt system ingen deadlocks eller sult. Dødlåse og sult forekommer hovedsageligt når mange tråde konkurrerer om begrænsede ressourcer.

Hvad er Deadlock?

En deadlock er en tilstand, der opstår, når to tråde eller processer venter på hinanden for at fuldføre opgaven. De lægger kun på, men stopper aldrig eller afslutter deres opgave. I datalogi kan deadlocks ses overalt. I en transaktionsdatabase, når to processer hver inden for sin egen transaktion opdaterer de samme to rækker information, men i den modsatte rækkefølge, vil det forårsage en blokering. I samtidig programmering kan der opstå en blokering, når to konkurrerende handlinger venter på hinanden for at fortsætte. I telekommunikationssystemer kan en blokering forekomme på grund af tab eller korruption af signaler.

I øjeblikket er dødvande et af hovedproblemerne i multiprocessing-systemer og parallel computing. Som en løsning implementeres et låsesystem kaldet processynkronisering til såvel software som hardware.

Forskellen mellem dødlås og sult
Forskellen mellem dødlås og sult

Hvad er sult?

Fra ordbogen for medicinsk videnskab er sult et resultat af alvorlig eller total mangel på næringsstoffer, der er nødvendige for at opretholde livet. På samme måde er sult et problem i datalogi, der opstår, når flere tråde eller processer venter på den samme ressource, der kaldes en blindlås.

For at komme ud af en blokering, skal en af processerne eller tråde give op eller rulle tilbage, så den anden tråd eller proces kan bruge ressourcen. Hvis dette løbende sker, og den samme proces eller tråd skal give op eller rulle tilbage hver gang, mens andre processer eller tråde skal bruge ressourcen, vil den valgte proces eller tråd, der rulles tilbage, gennemgå en situation kaldet sult. Derfor er sult en af løsningerne for at komme ud af et dødvande. Derfor kaldes sult undertiden for en slags husdyr. Når der er mange højt prioriterede processer eller tråde, vil en proces med lavere prioritet eller tråd altid sulte i en dødvande.

Der kan være mange sulter, såsom at sulte på ressourcer og sulte på CPU. Der er mange almindelige eksempler på sult. De er læsere-forfatteres problem og spisefilosofers problem, som er mere berømt. Der sidder fem tavse filosoffer ved et rundt bord med skåle spaghetti. Gafler placeres mellem hvert par tilstødende filosoffer. Hver filosof skal skiftevis tænke og spise. En filosof kan dog kun spise spaghetti, når han har både venstre og højre gafler.

Deadlock vs sult
Deadlock vs sult

“Dining Philosophers”

Hvad er forskellen mellem Deadlock og Hunger?

• Process:

• I dødvande venter de to tråde eller processer på hinanden, og begge fortsætter ikke fremad.

• I sult, når to eller flere tråde eller processer venter på den samme ressource, vil en rulle tilbage og lade de andre bruge ressourcen først, og derefter prøver den sultende tråd eller proces igen. Derfor vil alle tråde eller processer under alle omstændigheder gå videre.

• Rullende ryg:

• I en blokade vil både tråde / processer med høj prioritet såvel som tråde / processer med lav prioritet vente på hinanden uendeligt. Det stopper aldrig.

• Men i sult venter eller vender de tilbage med lav prioritet, men de med høj prioritet fortsætter.

• Venter eller låser:

• En blindlås er en cirkulær ventetid.

• En sult er en slags husdyr og hjælper undertiden med at komme ud af et dødvande.

• Deadlock og sult:

• Et dødvande forårsager sult, men sult forårsager ikke et dødvande.

• Årsager:

• En blokering vil forekomme på grund af gensidig udelukkelse, vent og vent, ingen indfrielse eller cirkulær ventetid.

• Sult opstår på grund af mangel på ressourcer, ukontrolleret styring af ressourcer og procesprioriteter.

Resumé:

Deadlock vs sult

Dødlås og sult er nogle af de problemer, der opstår på grund af dataløb og race betingelser, der opstår under programmering samt implementering af hardware. I en dødvande vil to tråde uendeligt vente på hinanden uden at udføre, mens en tråd i sult vil rulle tilbage og lade den anden tråde bruge ressourcerne. Et dødvande vil forårsage sult, mens sult vil hjælpe en tråd til at komme ud af et dødvande.

Billeder med tilladelse:

  1. Computer af Steve Jurvetson fra Menlo Park, USA (CC BY 2.0)
  2. “Dining Philosophers” af Bdesham (CC BY-SA 3.0)

Anbefalet: