Forskel mellem multiprocessering og multithreading

Forfatter: Laura McKinney
Oprettelsesdato: 1 April 2021
Opdateringsdato: 13 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


Multiprocessing og Multithreading tilføjer begge ydelser til systemet. multiprocessing tilføjer flere antal eller CPU'er / processorer til systemet, hvilket øger systemets beregningshastighed. multithreading tillader en proces at oprette flere tråde, der øger systemets reaktionsevne. Jeg har fundet nogle flere forskelle mellem multiprocessering og multitræsning, som jeg har drøftet ved hjælp af sammenligningstabellen vist nedenfor.

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

Sammenligningstabel

Grundlag for sammenligningmultiprocessing multithreading
GrundlæggendeMultiprocessing tilføjer CPU'er til at øge computerkraften.Multithreading skaber flere tråde i en enkelt proces for at øge computerkraften.
UdførelseFlere processer udføres samtidigt.Flere tråde i en enkelt proces udføres samtidigt.
SkabelseOprettelse af en proces er tidskrævende og ressourcekrævende.Oprettelse af en tråd er økonomisk i både forstandstid og ressource.
KlassifikationMultiprocessering kan være symmetrisk eller asymmetrisk.Multitrådning klassificeres ikke.


Definition af multiprocessering

Et multiprocesseringssystem er et, der har mere end to processorer. CPU'er føjes til systemet for at øge systemets computerhastighed. Hver CPU har sit eget sæt af registre og hovedhukommelse. Bare fordi CPU'er er adskilte, kan det ske, at den ene CPU ikke må have noget at behandle og kan sidde inaktiv, og den anden kan være overbelastet med processerne. I sådanne tilfælde deles processerne og ressourcerne dynamisk mellem processorerne.

Multiprocessing kan klassificeres som symmetrisk multiprocessering og asymmetrisk multiprocessering. Ved symmetrisk multiprocessering er alle processorer frie til at køre enhver proces i et system. I asymmetrisk multiprocessering er der et master-slave-forhold mellem processorerne. Masterprocessoren er ansvarlig for at tildele processen til slaveprocessorer.


Hvis processoren har integreret hukommelseskontroller derefter tilføjelse af processor ville øge mængden af ​​adresserbar hukommelse i systemet. Multiprocessing kan ændre hukommelsesadgangsmodellen fra ensartet hukommelsesadgang til ikke-ensartet hukommelsesadgang. Den ensartede hukommelsesadgang beløber sig til samme tid for adgang til RAM fra enhver processor. På den anden side kræver ikke-ensartet hukommelsesadgang længere tid at få adgang til en del af hukommelsen end de andre dele.

Definition af multithreading

Multithreading er udførelsen af ​​flere tråde i en enkelt proces samtidigt inden for denne proces. Lad os først diskutere, hvad der er en tråd? EN tråd af en proces betyder et kodesegment af en proces, der har sin egen tråd-ID, programtæller, registrerer og stak og kan udføres uafhængigt. Men tråde, der hører til den samme proces, skal dele ejendele af denne proces som kode, data og systemressourcer. Oprettelse af separate processer for hver serviceanmodning bruger tid og udstødningssystemressourcer. I stedet for at pådrage sig dette overhead, er det mere effektivt at oprette tråde til en proces.

For at forstå multitrådekonceptet, lad os tage en eksempel af en tekstbehandler. En tekstbehandler, viser grafik, reagerer på tastetryk, og på samme tid fortsætter den med stavekontrol og grammatikkontrol. Du behøver ikke at åbne forskellige tekstbehandlere for at gøre dette samtidigt. Det sker ske i en enkelt tekstbehandler ved hjælp af flere tråde.

Lad os nu tage hensyn til fordelene ved multithreading. Multithreading øger lydhørhed som om en tråd i en proces er blokeret eller udfører den lange operation, fortsætter processen stadig. Den anden fordel ved multithreading er ressourcedeling da flere tråde i en proces deler samme kode og data inden for det samme adresserum.

Oprettelse af en tråd er økonomisk da den deler koden og dataene for den proces, som de tilhører. Så systemet behøver ikke at allokere ressourcer separat for hver tråd. Multithreading kan være øget på multiprocesseringsoperativsystem. Som multithreading på flere CPU'er stiger parallelitet.

  1. Den vigtigste forskel mellem multiprocessing og multithreading er, at multiprocessing giver et system mulighed for at tilføje mere end to CPU'er til systemet, mens multithreading lader en proces generere flere tråde for at øge et systems computers hastighed.
  2. Multiprocessing-system kører flere processer samtidig med, at multithreading-systemet udfører flere tråde af en proces samtidig.
  3. Oprettelse af en proces kan forbruge tid og endda udstødning systemressourcerne. Dog oprettes tråde er økonomisk som tråde, der hører til den samme proces, deler ejendele af denne proces.
  4. Multiprocessing kan klassificeres i symmetrisk multiprocessering og asymmetrisk multiprocessering der henviser til, at flertrådning ikke klassificeres yderligere.

Konklusion:

Fordelene ved multithreading kan gradvist øges i multiprocesseringsmiljø, da multithreading på et multiprocessing-system øger paralleliteten.