Forskel mellem multiprocessering og multithreading

Nøgleforskel - Multiprocessing vs Multithreading
 

Flere processer kører ad gangen i et computersystem… Operativsystemet tildeler ressourcer til processerne, og det er nødvendigt at øge CPU-udnyttelsen. Multiprocessing og multithreading kan påvirke systemets ydelse. Det vigtigste forskel mellem multiprocessering og multithreading er det, i multiprocessing kører flere processer samtidigt ved hjælp af to eller flere processorer, mens der i multithreading kører flere tråde i en proces samtidigt. Denne artikel diskuterer forskellen mellem multiprocessering og multithreading.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er multiprocessering
3. Hvad er multithreading
4. Ligheder mellem multiprocessering og multithreading
5. Sammenligning side ved side - Multiprocessing vs multithreading i tabelform
6. Resume

Hvad er multiprocessering?

Multiprocessing er at køre flere processer ved hjælp af to eller flere processorer samtidigt. Der er forskellige typer multiprocesseringsmekanismer. De er symmetrisk multiprocessering og asymmetrisk multiprocessering.

Figur 01: Symmetrisk multiprocessering

I Symmetrisk multiprocessering, hver processor har deres egen cache, og alle processorer er tilsluttet ved hjælp af en delt bus. Da der er en delt hukommelse, deler alle processorer det samme hukommelsesadresseplads. En begrænsning af denne metode er, når antallet af processorer øges, det kan komme langsomt med adgang til hovedhukommelsen. Processorer kan frit køre enhver proces på systemet.

I Asymmetrisk multiprocessering, processorer udfører i henhold til master-slave-arkitektur. Master processor tildeler processer til slaveprocessorer.

Hvad er multithreading?

Flere processer kører på et computersystem på samme tid. En proces er et program i udførelse. At arbejde i MS Word kan betragtes som en proces. Når du bruger MS Word, kontrolleres grammatikken og stavemåden. Det er en underproces eller en delopgave. På den måde er hovedprocessen opdelt i underprocesser. Disse underprocesser er enheder af processen, og de er kendt som tråde. Derfor ligner en proces en opgave, og en tråd er en enhed af en proces.

En tråd består af programtælleren, trådtælleren, registersættet, tråd-ID og stak. Oprettelse af processer til hver opgave er ikke en effektiv metode. Derfor er en proces opdelt i flere tråde. Disse flere tråde kører på processen på samme tid. Dette koncept kaldes 'Multi-threading'.

Figur 02: Multetrådproces

Der er nogle fordele ved multitrådning. Hver tråd i en proces deler den samme kode, data og ressourcer. Det er ikke nødvendigt at allokere ressourcer til hver tråd separat, så brug af tråde er økonomisk. Hvis en tråd mislykkes, vil det ikke påvirke processen. Tråde er lette og forbruger den mindste mængde ressourcer sammenlignet med en proces.

Hvad er lighederne mellem multiprocessering og multithreading?

  • Begge metoder kan øge CPU-udnyttelsen.
  • Begge metoder kan øge beregningshastigheden.

Hvad er forskellen mellem multiprocessering og multithreading?

Multiprocessing vs Multithreading

Multiprocessing er at udføre flere processer ved hjælp af to eller flere processer samtidigt for at forbedre systemets ydelse. Multithreading er at udføre flere tråde i en proces samtidig for at forbedre systemets ydelse.
 Udførelse
I Multiprocessing kører flere processer samtidigt. I multithreading kører flere tråde i en enkelt proces samtidigt.
Ressourcekrav
Multiprocessing kræver flere ressourcer. Multithreading kræver ikke mange ressourcer; derfor er det mere økonomisk.

Resumé - Multiprocessing vs Multithreading 

Multiprocessing og multithreading kan påvirke computerens ydelse. Forskellen mellem Multiprocessing og Multithreading er, at i multiprocessing kører flere processer samtidigt ved hjælp af to eller flere processorer, og i multithreading kører flere tråde i en enkelt proces samtidigt. For at øge hastigheden og CPU-udnyttelsen kan multi-threading implementeres på multiprocessorer.

Download PDF-versionen af ​​Multiprocessing vs Multithreading

Du kan downloade PDF-version af denne artikel og bruge den til offline-formål som pr. Citatnotat. Download PDF-version her Forskel mellem multiprocessering og multithreading

Reference:

1. "Asymmetrisk multiprocessering." Wikipedia, Wikimedia Foundation, 14. december 2017. Tilgængelig her 
2. "Symmetrisk multiprocessering." Wikipedia, Wikimedia Foundation, 11. december 2017. Tilgængelig her
3.Point, selvstudier. “Operativsystem - Multi-Threading.”, Tutorials Point, 15. august 2017. Findes her  
4. "Forskel mellem multiprocessering og multithreading." YouTube, YouTube, 5. september 2016. Tilgængelig her

Billede høflighed:

1.'Multithreaded process'By I, Cburnett, (CC BY-SA 3.0) via Commons Wikimedia