Aanbevolen, 2024

Editor'S Choice

Verschil tussen symmetrische en asymmetrische multiprocessing

Er zijn twee soorten multiprocessing, symmetrische multiprocessing en asymmetrische multiprocessing. Multiprocessing-systeem heeft meer dan één processor en ze kunnen tegelijkertijd meerdere processen uitvoeren. In Symmetric Multiprocessing delen processors hetzelfde geheugen. In Asymmetric Multiprocessing is er een master-processor die de datastructuur van het systeem bestuurt. Het belangrijkste verschil tussen Symmetrische en Asymmetrische Multiprocessing is dat bij Symmetrische Multiprocessing alle processors in het systeem taken in OS uitvoeren. Maar in Asymmetric Multiprocessing voert alleen de hoofdprocessor de taak uit in OS.

U kunt Symmetrische Multiprocessor en Asymmetrische Multiprocessor onderscheiden op een aantal andere punten die worden besproken in de onderstaande vergelijkingsgrafiek.

Vergelijkingstabel

Basis voor vergelijkingSymmetrische multiprocessingAsymmetrische multiprocessing
basis-Elke processor voert de taken uit in Besturingssysteem.Alleen Master-processor voert de taken van het besturingssysteem uit.
WerkwijzeDe processor haalt processen uit een gemeenschappelijke wachtrij, of er is een persoonlijke wachtrij voor elke processor.Masterprocessor wijst processen toe aan de slaafprocessors, of ze hebben een aantal vooraf gedefinieerde processen.
architectuurAlle processors in Symmetric Multiprocessing hebben dezelfde architectuur.Alle processoren in Asymmetrische multiprocessing kunnen dezelfde of verschillende architectuur hebben.
CommunicatieAlle processors communiceren met een andere processor via een gedeeld geheugen.Processors hoeven niet te communiceren omdat ze worden bestuurd door de hoofdprocessor.
MislukkingAls een processor uitvalt, neemt de rekencapaciteit van het systeem af.Als een hoofdprocessor faalt, wordt een slave naar de hoofdprocessor gedraaid om de uitvoering voort te zetten. Als een slave-processor uitvalt, wordt zijn taak overgeschakeld naar andere processors.
GemakSymmetric Multiprocessor is complex omdat alle processors moeten worden gesynchroniseerd om de load-balans te behouden.Asymmetrische multiprocessor is eenvoudig omdat de hoofdprocessor toegang heeft tot de gegevensstructuur.

Definitie van symmetrische multiprocessing

Symmetrische Multiprocessing is er een waarin de processor de taken uitvoert in het besturingssysteem. Het heeft geen master-slave- relatie zoals asymmetrische multiprocessing. Alle processors hier communiceren via het gedeelde geheugen .

De processors beginnen met het uitvoeren van de processen vanuit de gewone wachtrij. Elke processor kan ook zijn eigen wachtrij van klaargemaakte processen hebben om uitgevoerd te worden. Er moet door de planner voor worden gezorgd dat geen twee processors hetzelfde proces uitvoeren.

Symmetrische Multiprocessing heeft een juiste taakverdeling, betere fouttolerantie en vermindert ook de kans op een CPU- bottleneck . Het is complex omdat het geheugen wordt gedeeld door alle processors. Bij Symmetrische Multiprocess resulteert een processorstoring in verminderde computercapaciteit .

Definitie van asymmetrische multiprocessing

Asymmetrische multiprocessing heeft de master-slave- relatie tussen de processors. Er is één hoofdprocessor die de resterende slave-processor bestuurt. De hoofdprocessor voorziet processen om de processor te verslaan of ze kunnen een vooraf gedefinieerde taak uitvoeren.

De hoofdprocessor bestuurt de gegevensstructuur . De planning van processen, I / O- verwerking en andere systeemactiviteiten worden bestuurd door de hoofdprocessor .

In het geval dat een hoofdprocessor faalt, wordt één processor uit de slave-processor de hoofdprocessor gemaakt om de uitvoering voort te zetten. In het geval dat een slave-processor uitvalt, neemt de andere slave-processor zijn taak over. Asymmetrische multiprocessing is eenvoudig omdat er slechts één processor is die de datastructuur en alle activiteiten in het systeem bestuurt.

Belangrijkste verschillen tussen symmetrische en asymmetrische multiprocessing

  1. Het meest opvallende punt tussen symmetrische en asymmetrische multiprocessing is dat de taken in OS alleen worden behandeld door de hoofdprocessor in Asymmetrische multiprocessing. Aan de andere kant voeren alle processors in symmetrische multiprocessing de taken uit in OS.
  2. Bij symmetrische multiprocessing kan elke processor zijn eigen privéwachtrij van kant-en-klare processen hebben, of kunnen processen worden overgenomen uit een gemeenschappelijke wachtrij. Maar bij asymmetrische multiprocessing wijst de hoofdprocessor processen toe aan de slaafprocessors.
  3. Alle processors in Symmetric Multiprocessing hebben dezelfde architectuur. Maar de structuur van processors in asymmetrische multiprocessor kan verschillen.
  4. Processoren in symmetrische multiprocessing communiceren met elkaar door het gedeelde geheugen. De processors in Asymmetrische multiprocessing hoeven echter niet met elkaar te communiceren omdat ze worden bestuurd door de hoofdprocessor.
  5. In het geval dat de hoofdprocessor faalt, wordt een slaafprocessor naar de hoofdprocessor gedraaid om de uitvoering voort te zetten. Maar als een processor in symmetrische multiprocessing faalt, wordt de rekencapaciteit van het systeem verminderd.
  6. Asymmetrische multiprocessor is eenvoudig omdat alleen de hoofdprocessor toegang heeft tot de gegevensstructuur, terwijl de symmetrische multiprocessor complex is omdat alle processors synchroon moeten werken.

Conclusie:

Multiprocessors verhogen de snelheid van het systeem, omdat men meerdere processen tegelijkertijd kan uitvoeren. Asymmetrische multiprocessing is eenvoudig, slechts één processor (master) heeft toegang tot de datastructuur. Hoewel symmetrische multiprocessing complex is omdat de gegevensstructuur wordt gedeeld tussen alle processors en de processor synchroon moet werken.

Top