Recomendado, 2024

Escolha Do Editor

Diferença entre o multiprocessamento simétrico e assimétrico

Existem dois tipos de multiprocessamento, Multiprocessamento Simétrico e Multiprocessamento Assimétrico. O sistema de multiprocessamento possui mais de um processador e eles podem executar vários processos simultaneamente. Em Multiprocessamento Simétrico, os processadores compartilham a mesma memória. Em Multiprocessamento Assimétrico, existe um processador mestre que controla a estrutura de dados do sistema. A principal diferença entre o multiprocessamento simétrico e assimétrico é que no multiprocessamento simétrico todo o processador no sistema executa tarefas no sistema operacional. Mas, no Multiprocessamento assimétrico, somente o processador mestre executa a tarefa no sistema operacional.

Você pode diferenciar o Multiprocessador Simétrico e o Multiprocessador Assimétrico em alguns outros pontos que são discutidos no gráfico de comparação mostrado abaixo.

Gráfico de comparação

Base para ComparaçãoMultiprocessamento SimétricoMultiprocessamento Assimétrico
BasicCada processador executa as tarefas no sistema operacional.Apenas o processador mestre executa as tarefas do sistema operacional.
ProcessoO processador usa processos de uma fila pronta comum ou pode haver uma fila privada pronta para cada processador.O processador mestre atribui processos aos processadores escravos, ou eles têm alguns processos predefinidos.
ArquiteturaTodo processador em Multiprocessamento Simétrico possui a mesma arquitetura.Todo processador em Multiprocessamento Assimétrico pode ter arquitetura igual ou diferente.
ComunicaçãoTodos os processadores se comunicam com outro processador por uma memória compartilhada.Os processadores não precisam se comunicar, pois são controlados pelo processador mestre.
FalhaSe um processador falhar, a capacidade de computação do sistema será reduzida.Se um processador mestre falhar, um escravo é ligado ao processador mestre para continuar a execução. Se um processador escravo falhar, sua tarefa será alternada para outros processadores.
FacilidadeO Multiprocessador Simétrico é complexo, pois todos os processadores precisam ser sincronizados para manter o equilíbrio de carga.O multiprocessador assimétrico é simples, pois o processador mestre acessa a estrutura de dados.

Definição de multiprocessamento simétrico

O multiprocessamento simétrico é aquele em que todo o processador executa as tarefas no sistema operacional. Não tem relação mestre-escravo como multiprocessamento assimétrico. Todos os processadores aqui se comunicam usando a memória compartilhada .

Os processadores começam a executar os processos a partir da fila pronta comum. Cada processador também pode ter sua própria fila privada de processos prontos para ser executada. Deve ser tomado cuidado pelo planejador de que dois processadores não executem o mesmo processo.

O Multiprocessamento Simétrico possui balanceamento de carga adequado, melhor tolerância a falhas e também reduz a chance de gargalos na CPU. É complexo como a memória é compartilhada entre todos os processadores. Em Multiprocessamento Simétrico, uma falha do processador resulta em capacidade de computação reduzida .

Definição de Multiprocessamento Assimétrico

Multiprocessamento Assimétrico tem a relação mestre-escravo entre os processadores. Existe um processador mestre que controla o processador escravo restante. O processador mestre distribui processos para o processador escravo, ou eles podem ter alguma tarefa predefinida para executar.

O processador mestre controla a estrutura de dados . O agendamento de processos, processamento de I / O e outras atividades do sistema são controlados pelo processador mestre .

No caso de um processador mestre falhar, um processador entre o processador escravo é feito para que o processador mestre continue a execução. No caso, se um processador escravo falhar, o outro processador escravo assumirá seu trabalho. O multiprocessamento assimétrico é simples, pois existe apenas um processador que controla a estrutura de dados e todas as atividades no sistema.

Principais diferenças entre multiprocessamento simétrico e assimétrico

  1. O ponto mais distinguível entre o multiprocessamento simétrico e assimétrico é que as tarefas no sistema operacional são tratadas apenas pelo processador mestre em Multiprocessamento assimétrico. Por outro lado, todos os processadores em multiprocessamento simétrico executam as tarefas no sistema operacional.
  2. No multiprocessamento simétrico, cada processador pode ter sua própria fila particular de processos prontos ou pode obter processos de uma fila pronta comum. Mas, no multiprocessamento assimétrico, o processador mestre atribui processos aos processadores escravos.
  3. Todo o processador em Multiprocessamento Simétrico possui a mesma arquitetura. Mas a estrutura dos processadores em multiprocessadores assimétricos pode ser diferente.
  4. Processadores em multiprocessamento simétrico se comunicam entre si pela memória compartilhada. No entanto, os processadores do Multiprocessamento assimétrico não precisam se comunicar uns com os outros, pois são controlados pelo processador mestre.
  5. No caso, o processador mestre falha, um processador escravo é girado para o processador mestre para continuar a execução. Mas, se um processador em multiprocessamento simétrico falhar, a capacidade de computação do sistema é reduzida.
  6. O Multiprocessador Assimétrico é simples, pois somente o processador mestre acessa a estrutura de dados, enquanto o multiprocessador simétrico é complexo, pois todos os processadores precisam trabalhar em sincronia.

Conclusão:

Multiprocessadores aumentam a velocidade do sistema, já que é possível executar vários processos simultaneamente. O multiprocessamento assimétrico é simples, apenas um processador (mestre) pode acessar a estrutura de dados. O Multiprocessamento Simétrico é complexo, pois a estrutura de dados é compartilhada entre todos os processadores e todo o processador precisa trabalhar em sincronia.

Top