Forskellen mellem multitasking og multithreading i OS

Forfatter: Laura McKinney
Oprettelsesdato: 1 April 2021
Opdateringsdato: 9 Kan 2024
Anonim
Types of Operating Systems(Batch, Multiprogramming, Time Sharing, Multiprocessing, Real Time)
Video.: Types of Operating Systems(Batch, Multiprogramming, Time Sharing, Multiprocessing, Real Time)

Indhold


I denne artikel diskuterer vi forskellene mellem multitasking og multithreading. Folk bliver generelt forvirrede mellem disse udtryk. På den ene side, Multitasking er en logisk udvidelse til multiprogrammering, og på den anden side multithreading er trådbaseret multitasking. Den grundlæggende forskel mellem multitasking og multithreading er den Multitasking gør det muligt for CPU at udføre flere opgaver (program, proces, opgave, tråde) samtidig, mens multithreading gør det muligt for flere tråde i den samme proces at udføre samtidigt. Lad os diskutere forskellene mellem multitasking og multithreading ved hjælp af sammenligningstabellen vist nedenfor.

  1. Sammenligningstabel
  2. Definition
  3. Vigtige forskelle
  4. Konklusion

Sammenligningstabel

Grundlag for sammenligningMultitaskingmultithreading
Grundlæggende Multitasking lader CPU til at udføre flere opgaver på samme tid.Multithreading lader CPU til at udføre flere tråde i en proces samtidig.
switchingI multitasking skifter CPU ofte mellem programmer.I multithreading skifter CPU ofte mellem trådene.
Hukommelse og ressourceI multitasking skal systemet allokere separat hukommelse og ressourcer til hvert program, som CPU udfører.I multithreading-systemet skal allokeres hukommelse til en proces, flere tråde i denne proces deler den samme hukommelse og ressourcer, der er allokeret til processen.


Definition af multitasking

Multitasking er, når en enkelt CPU udfører flere opgaver (program, proces, opgave, tråde) på samme tid. For at udføre multitasking skifter CPU'en mellem disse opgaver meget hyppigt så brugeren kan interagere med hvert program samtidig.

I et operativsystem med flere opgaver kan flere brugere del systemet samtidigt. Som vi så, skifter CPU'en hurtigt mellem opgaverne, så det kræver lidt tid at skifte fra en bruger til den næste bruger. Dette sætter indtryk på en bruger, at hele computersystemet er dedikeret til ham.

Når flere brugere deler et multitasking-operativsystem, CPU planlægning og multiprogramsystem gør det muligt for hver bruger at have mindst en lille del af multitasking OS og lade hver bruger have mindst et program i hukommelsen til udførelse.


Definition af multithreading

Multithreading adskiller sig fra multitasking i en forstand, at multitasking tillader flere opgaver på samme tid, hvorimod Multithreading tillader flere tråde i en enkelt opgave (program, proces), der skal behandles af CPU på samme tid.

Før vi studerer multithreading, lad os tale om hvad er en tråd? EN tråd er en grundlæggende udførelsesenhed, der har sin egen programtæller, registersæt, stak men den deler koden, dataene og filen for den proces, som den tilhører. En proces kan have flere tråde samtidigt, og CPU-switches blandt disse tråde, der så ofte gør indtryk på brugeren, at alle tråde kører samtidig, og dette kaldes multithreading.

Multithreading øger lydhørhed af systemet, hvis den ene tråd i applikationen ikke svarer, den anden ville svare i den forstand, at brugeren ikke behøver at sidde inaktiv. Multithreading tillader ressourcedeling da tråde, der hører til den samme proces, kan dele kode og data om processen, og det tillader en proces at have flere tråde på samme tid aktive i samme adresserum.

Oprettelse af en anden proces er dyrere, da systemet skal allokere forskellige hukommelse og ressourcer til hver proces, men det er let at oprette tråde, da det ikke kræver tildeling af separat hukommelse og ressourcer til tråde i den samme proces.

  1. Den grundlæggende forskel mellem multitasking og multithreading er den i multitasking, tillader systemet at udføre flere programmer og opgaver på samme tid, mens, i multithreading, udfører systemet flere tråde af de samme eller forskellige processer på samme tid.
  2. I multitasking CPU skal kontakt mellem flere programmer så det ser ud til, at flere programmer kører samtidig. På andre hænder i multithreading CPU skal kontakt mellem flere tråde for at få det til at se, at alle tråde kører samtidig.
  3. Multitasking tildeles separat hukommelse og ressourcer for hver proces / program, hvorimod i flertrådstråde, der hører til den samme proces deler den samme hukommelse og ressourcer som processen.

Konklusion:

Multitasking ligner multiprogrammering, mens multithreading er trådbaseret multitasking. Multithreading er mindre kostbart end multitaskings, da tråde er lette at oprette derefter en proces.