Ferramentas do usuário

Ferramentas do site


m:multiprocessamento

Visão Geral.

O multiprocessamento é o uso de mais de uma unidade central de processamento (CPU) dentro de um mesmo sistema computacional. A definição do termo pode variar, normalmente devido a forma como se define um “processador” em uma dada situação.

No contexto de um sistema operacional, o multiprocessamento também pode se referir a execução de várias tarefas simultaneamente dentro do sistema, com cada processo ocorrendo em um uma CPU diferente. Pode ser visto como o oposto de “multitarefa”, que é a alocação de tempo entre diferentes processos para uma mesma unidade de processamento. Não necessariamente significa que um mesmo processo pode ocupar múltiplas CPUs, como no caso do “processamento paralelo”.

Simetria dos Processadores.

Um sistema multiprocessador pode ser simétrico (SMP) ou assimétrico (ASMP), dependendo das especificações de sistema operacional e de hardware. Em um sistema simétrico, todas as CPUs são tratadas da mesma maneira, portanto todos os processadores se comunicam com outro processador por uma memória compartilhada, tendo acesso total a todos os dispositivos de entrada e saída. Por isso, são mais complexos de projetar, e, consequentemente, mais caros.

Se existem diferenças na alocação de memória, forma do acesso de memória ou diferenças de hardware entre as unidades de processamento, o sistema é chamado de assimétrico. No mesmo, as tarefas são feitas pelo processador mestre, não havendo a comunicação entre os processadores. Por isso, são utilizados para atribuir tarefas à CPU com base na prioridade e na importância da conclusão das mesmas. Como resultado, eles serão mais fáceis de projetar além de mais baratos. Existem várias formas de sistema assimétrico, como a arquitetura de acesso não uniforme a memória (NUMA) ou clustered multiprocessing (multiprocessamento agrupado).

História.

Os primeiros sistemas com múltiplos processadores surgiram nos anos 60, visando diminuir o tempo de processamento de dados complexos e diminuir o custo de produção. Neste começo, seu acesso era restrito apenas às universidades e ao governo. Foi cerca de duas décadas depois, nos anos 80, que grandes empresas começaram a adotar amplamente multiprocessadores devido a queda nos preços. Atualmente, a maioria dos sistemas operacionais suportam multi processamento.

Grandes Nomes.

Ada Lovelace

Foi uma matemática inglesa, comumente considerada como a primeira programadora. Seus trabalhos em sobre o proposto computador mecânico de uso geral de Charles Babbage foram de grande importância para computação em geral e, posteriormente, seriam os primeiros a inspirar o conceito de multiprocessamento.

Charles Babbage

Considerado por alguns como “pai do computador”, Charles Babbage foi um matemático, filósofo e engenheiro mecânico. Ele foi responsável pela criação do primeiro conceito de um computador digital programável. Este seria base para os trabalhos de Ada que por vez inspirariam o multiprocessamento.

Aplicações.

A subdivisão de tarefas entre múltiplas CPUs através do multiprocessamento permite um enorme ganho de eficiência em um dado sistema computacional. Isso não somente permite a realização de trabalhos mais computacionalmente pesados como também que o usuário realize mais trabalhos simultâneos sem comprometer a performance de sua máquina, devido ao balanceamento de carga;

Além disso, com mais de um processador, caso haja falha de hardware em algum os demais processadores mantem os sistemas em funcionamento, aumentando, dessa forma, a confiabilidade da infraestrutura. Outra característica importante dos multiprocessadores é que ele é escalável, ou seja, basta adicionar novos processadores conforme a demanda de processamento, ao invés de trocar o sistema computacional por outro, diminuindo os custos. Sendo assim uma peça importante para a realização da nossa computação atual.

Desafios.

Principais desafios para o multiprocessamento:

  • Alto custo em comparação com sistemas mais simples.
  • Necessidade de sistemas operacionais complicados.
  • Alto demanda de memória para processamento.

Impacto Social.

Os sistemas de multiprocessamento são responsáveis pela criação de toda uma nova metodologia de programação e arquitetura de hardware, que viabiliza um uso muito mais eficiente das máquinas computacionais e torna possível grandes avanços no ramo da computação. Diversas aplicações, desde jogos digitais até machine learning(aprendizagem_de_maquina), dependem de um alto poder de processamento, e para isso o multiprocessamento é essencial.

Referencias:

Wikipedia | Multiprocessamento
https://pt.wikipedia.org/wiki/Multiprocessamento Acesso em: 29 de Agos. 2022

Wikipedia | Multiprocessing
https://en.wikipedia.org/wiki/Multiprocessing Acesso em: 29 de Agos. 2022

Wikipedia | Charles Babbage
https://en.wikipedia.org/wiki/Charles_Babbage Acesso em: 29 de Agos. 2022

Wikipedia | Ada Lovelace
https://en.wikipedia.org/wiki/Ada_Lovelace Acesso em: 29 de Agos. 2022

Tutorials Point | Multiprocessor
https://www.tutorialspoint.com/Multiprocessor Acesso em: 29 de Agos. 2022

AcervoLima | diferença entre multiprocessamento assimétrico e simétrico
https://acervolima.com/diferenca-entre-multiprocessamento-assimetrico-e-simetrico/

Prof. Fernando de Siqueira | Sistemas Operacionais
https://sites.google.com/site/proffernandosiqueiraso/aulas/12-estudo-de-caso-unix-vs-windows

m/multiprocessamento.txt · Última modificação: 2022/09/05 10:22 por Luize Cunha Duarte