Multiprocessamento: em que consiste, tipos, requisitos, vantagens - Ciência - 2023
science
Contente
- O que é multiprocessamento?
- Diferença entre multiprocessamento e multiprogramação
- Requisitos
- Suporte para processador
- Suporte da placa-mãe
- Suporte para sistema operacional
- Tipos de multiprocessamento
- Multiprocessamento simétrico
- Multiprocessamento assimétrico
- Vantagem
- Maior produtividade
- Maior confiabilidade
- Economizando dinheiro
- Desvantagens
- Custo de compra mais alto
- Sistema operacional complexo
- É necessária grande quantidade de memória
- Referências
o multiprocessamento, aplicado à computação, é uma forma de operação de um computador onde existe fisicamente mais de um processador. O objetivo é estar disposto a executar diferentes partes de um programa ao mesmo tempo.
Essas múltiplas unidades de processamento central (CPUs) estão em comunicação próxima, compartilhando o barramento, a memória e outros dispositivos periféricos do computador. Como vários processadores estão disponíveis, vários processos podem ser executados ao mesmo tempo.
O multiprocessamento se refere mais ao número de unidades de CPU do que ao número de processos executados simultaneamente. Se o hardware fornece mais de um processador, isso é multiprocessamento. É a capacidade do sistema de aproveitar o poder de computação de vários processadores.
O sistema de multiprocessamento é muito útil quando você deseja ter uma velocidade alta o suficiente para processar um grande conjunto de dados. Esses sistemas são usados principalmente em aplicações como previsão do tempo, controle de satélite, etc.
Esse tipo de sistema de multiprocessamento apareceu pela primeira vez em grandes computadores ou mainframes, antes de reduzir seu custo para garantir sua inclusão em computadores pessoais.
O que é multiprocessamento?
Com o suporte de um sistema de multiprocessamento, diversos processos podem ser executados em paralelo.
Suponha que os processos Pr1, Pr2, Pr3 e Pr4 estejam esperando para serem executados. Em um sistema de processador único, um processo será executado primeiro, depois o próximo, o outro e assim por diante.
No entanto, com o multiprocessamento, cada processo pode ser definido para uma CPU específica para processamento.
Se for um processador dual-core, com dois processadores, dois processos podem ser executados simultaneamente e, portanto, serão duas vezes mais rápidos. Da mesma forma, um processador quad-core será quatro vezes mais rápido do que um único processador.
Como uma função específica é atribuída para ser executada por cada processador, eles serão capazes de executar seu trabalho, entregar o conjunto de instruções ao próximo processador e começar a trabalhar em um novo conjunto de instruções.
Por exemplo, um processador maior pode usar processadores “escravos” para realizar várias tarefas de limpeza, como gerenciamento de memória.
Da mesma forma, diferentes processadores podem ser usados para gerenciar comunicações de dados, armazenamento de memória ou funções aritméticas.
Diferença entre multiprocessamento e multiprogramação
Um sistema é multiprocessado por ter mais de um processador fisicamente, e pode ser multiprogramado quando tem vários processos rodando simultaneamente.
Portanto, a diferença entre multiprocessamento e multiprocessamento é que o multiprocessamento executa vários processos ao mesmo tempo em vários processadores, enquanto o multiprocessamento mantém vários programas na memória principal e os executa simultaneamente por meio de uma única CPU.
Ou seja, o multiprocessamento ocorre por meio do processamento paralelo, enquanto a multiprogramação ocorre quando uma única CPU muda de um processo para outro.
Requisitos
Para usar o sistema de multiprocessamento de forma eficaz, o sistema de computador deve ter o seguinte:
Suporte para processador
Você deve ter um conjunto de processadores com a capacidade de usá-los em um sistema de multiprocessamento.
Suporte da placa-mãe
Uma placa-mãe capaz de conter e lidar com vários processadores. Isso significa soquetes ou slots adicionais para chips adicionados.
Suporte para sistema operacional
Toda a tarefa de multiprocessamento é gerenciada pelo sistema operacional, que atribui as diferentes tarefas a serem realizadas pelos vários processadores do sistema.
Os aplicativos projetados para serem usados em multiprocessamento são chamados de costurados, o que significa que são divididos em rotinas menores que podem ser executadas independentemente.
Isso permite que o sistema operacional permita que esses threads sejam executados em mais de um processador simultaneamente, resultando em multiprocessamento e melhor desempenho.
Tipos de multiprocessamento
Multiprocessamento simétrico
Nesse tipo de multiprocessamento, todos os processadores possuem uma relação mútua no mesmo nível de igualdade, ou seja, não existe relação mestre-escravo entre eles.
Todos os processadores se comunicam entre si, pois cada um contém uma cópia do mesmo sistema operacional.
Um exemplo de sistema de multiprocessamento simétrico é a versão Encore do Unix para o computador Multimax.
Multiprocessamento assimétrico
Neste tipo de multiprocessamento existe um processador mestre que dá instruções a todos os demais processadores, atribuindo a cada um uma tarefa previamente definida. Esta é a opção mais econômica, mantendo uma relação mestre-escravo entre os processadores.
Este tipo de multiprocessamento só existia até que os multiprocessadores simétricos fossem introduzidos.
Vantagem
Maior produtividade
Com o multiprocessamento, você terá mais tarefas concluídas em um período de tempo muito menor.
Se vários processadores trabalham juntos, o desempenho do sistema aumenta, aumentando o número de processos executados por unidade de tempo.
Maior confiabilidade
Quando um processador falha, o multiprocessamento torna-se mais confiável, porque nesta situação o sistema ficará lento, mas não travará. Essa capacidade de continuar trabalhando apesar da falha é conhecida como degradação normal.
Por exemplo, se algum processador falhar em um total de cinco, o trabalho não falhará, mas os quatro processadores restantes compartilharão o trabalho do processador com falha. Portanto, o sistema funcionará 20% mais lento, em vez de travar completamente.
Economizando dinheiro
Esses sistemas podem gerar economia de dinheiro a longo prazo em relação aos sistemas de processador único, porque os processadores podem compartilhar fontes de alimentação, dispositivos periféricos e outros dispositivos.
Se houver vários processos que compartilham dados, é melhor programá-los em sistemas de multiprocessamento para compartilhar os dados, em vez de ter diferentes sistemas de computador com várias cópias desses dados.
Desvantagens
Custo de compra mais alto
Embora os sistemas de multiprocessamento sejam mais baratos no longo prazo do que usar vários sistemas de computador, eles ainda são muito caros.
É muito mais barato comprar um sistema simples com um único processador do que um sistema multiprocessador.
Sistema operacional complexo
Um sistema operacional mais complexo é necessário em sistemas de multiprocessamento.
Isso se deve ao fato de que por ter vários processadores que compartilham memória, dispositivos, etc. a distribuição de recursos aos processos é mais complicada do que se houvesse apenas um processador.
É necessária grande quantidade de memória
Todos os processadores no sistema de multiprocessamento compartilham a memória principal. Portanto, um pool de memória muito maior é necessário em comparação com sistemas de processador único.
Referências
- Dinesh Thakur (2019). Definição Sistema Operacional Multiprocessador. Notas de Ecomputer retiradas de: ecomputernotes.com.
- Ponto de tutoriais (2019). Diferença entre multitarefa, multithreading e multiprocessamento. Retirado de: tutorialspoint.dev.
- Encyclopaedia Britannica (2019). Multiprocessamento. Retirado de: britannica.com.
- Techopedia (2019). Multiprocessador. Retirado de: roofpedia.com.
- Kristi Castro (2018). Sistemas Multiprocessadores. Ponto de tutoriais. Retirado de: tutorialspoint.com.