Differenza tra multiprocesso simmetrico e asimmetrico

Autore: Laura McKinney
Data Della Creazione: 2 Aprile 2021
Data Di Aggiornamento: 5 Maggio 2024
Anonim
Cervello maschile e femminile: quali differenze?
Video: Cervello maschile e femminile: quali differenze?

Contenuto


Esistono due tipi di multiprocessing, Multiprocessing simmetrico e Multiprocessing asimmetrico. Il sistema multiprocessore ha più di un processore e possono eseguire più processi contemporaneamente. In Multiprocessing simmetrico, i processori condividono la stessa memoria. In Multiprocessing asimmetrico esiste un processore principale che controlla la struttura dei dati del sistema. La differenza principale tra Multiprocessing simmetrico e asimmetrico è quella in Multiprocessing simmetrico tutto il processore nel sistema esegue attività nel sistema operativo. Ma in Multiprocessing asimmetrico solo il processore principale esegue l'attività nel sistema operativo.

È possibile differenziare il multiprocessore simmetrico e il multiprocessore asimmetrico su alcuni altri punti di cui sono discussi nella tabella di confronto mostrata di seguito.

  1. Tabella di comparazione
  2. Definizione
  3. Differenze chiave
  4. Conclusione

Tabella di comparazione

Base per il confrontoMultiprocessing simmetricoMultiprocessing asimmetrico
Di baseOgni processore esegue le attività nel sistema operativo.Solo il processore Master esegue le attività del sistema operativo.
ProcessiIl processore prende i processi da una coda pronta comune, oppure potrebbe esserci una coda pronta privata per ciascun processore.Il processore principale assegna i processi ai processori slave o hanno alcuni processi predefiniti.
ArchitetturaTutti i processori in Multiprocessing simmetrico hanno la stessa architettura.Tutti i processori in multiprocesso asimmetrico possono avere un'architettura uguale o diversa.
ComunicazioneTutti i processori comunicano con un altro processore tramite una memoria condivisa.I processori non devono comunicare poiché sono controllati dal processore principale.
FallimentoSe un processore si guasta, la capacità di elaborazione del sistema si riduce.Se un processore principale si guasta, uno slave viene trasformato nel processore principale per continuare l'esecuzione. Se un processore slave si guasta, il suo compito viene commutato su altri processori.
facilitàIl multiprocessore simmetrico è complesso in quanto tutti i processori devono essere sincronizzati per mantenere il bilanciamento del carico.Il multiprocessore asimmetrico è semplice poiché il processore principale accede alla struttura dei dati.


Definizione di Multiprocessing simmetrico

Multiprocessing simmetrico è uno in cui tutti i processori eseguono le attività nel sistema operativo. Esso ha nessun padrone-schiavo relazione come multiprocessing asimmetrico. Tutti i processori qui, comunicano usando il memoria condivisa.

I processori iniziano a eseguire i processi dalla coda pronta comune. Ogni processore può anche avere una propria coda privata di processi pronti per essere eseguito. Deve essere curato dal scheduler che due processori non eseguono lo stesso processo.

Il multiprocessing simmetrico è corretto bilancio del carico, meglio tolleranza ai guasti e riduce anche la possibilità di CPU collo di bottiglia. È complesso poiché la memoria è condivisa tra tutti i processori. In Multiprocessing simmetrico, si verifica un errore del processore ridotta capacità di calcolo.


Definizione di Multiprocessing asimmetrico

Multiprocessing asimmetrico ha il master-slave relazione tra i processori. Esiste un processore master che controlla il processore slave rimanente. Il processore master assegna i processi al processore slave o potrebbero avere alcune attività predefinite da eseguire.

Il processore principale controlla il struttura dati. Il programmazione di processi, I / O l'elaborazione e le altre attività del sistema sono controllate dal processore principale.

In caso di guasto di un processore principale, un processore tra il processore slave viene trasformato in processore principale per continuare l'esecuzione. Nel caso in cui un processore slave si guasti, l'altro processore slave assume il suo lavoro. Il multiprocesso asimmetrico è semplice poiché esiste un solo processore che controlla la struttura dei dati e tutte le attività nel sistema.

  1. Il punto più distinguibile tra multiprocessing simmetrico e asimmetrico è che le attività nel sistema operativo sono gestite solo dal processore principale in Multiprocessing asimmetrico. D'altra parte, tutti i processori in multiprocessing simmetrico eseguono le attività nel sistema operativo.
  2. Nel multiprocessing simmetrico, ogni processore può avere una propria coda privata di processi pronti oppure può prendere processi da una coda pronta comune. Ma, nel multiprocessing asimmetrico, il processore master assegna i processi ai processori slave.
  3. Tutto il processore in Multiprocessing simmetrico ha la stessa architettura. Ma la struttura dei processori nel multiprocessore asimmetrico può differire.
  4. I processori in multiprocessing simmetrico comunicano tra loro tramite la memoria condivisa. Tuttavia, i processori in Multiprocessing asimmetrico non devono comunicare tra loro poiché sono controllati dal processore principale.
  5. Nel caso in cui il processore principale non riesca, un processore slave viene trasformato in processore principale per continuare l'esecuzione. Ma, se un processore in multiprocessing simmetrico fallisce, la capacità di calcolo del sistema si riduce.
  6. Il multiprocessore asimmetrico è semplice poiché solo il processore principale accede alla struttura dei dati, mentre il multiprocessore simmetrico è complesso in quanto tutti i processori devono lavorare in sincronizzazione.

Conclusione:

I multiprocessori aumentano la velocità del sistema, poiché è possibile eseguire più processi contemporaneamente. Il multiprocessing asimmetrico è semplice, solo un processore (master) può accedere alla struttura dei dati. Mentre il multiprocessing simmetrico è complesso in quanto la struttura dei dati è condivisa tra tutti i processori e tutto il processore deve funzionare in sincronia.