No contexto da organização de sistemas de computadores, I....
I. o ciclo busca-decodificação-execução pode ser executado, também, por um interpretador de software que roda em um nível mais baixo.
II. computadores paralelos incluem processadores matriciais, nos quais a mesma operação é efetuada sobre múltiplos conjuntos de dados ao mesmo tempo.
III. computadores paralelos incluem multiprocessadores, nos quais várias CPUs compartilham uma memória em comum.
IV. computadores paralelos podem ser formados por multicomputadores, cada um com sua própria memória, mas se comunicando por transmissão de mensagens.
Está correto o que afirma em
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: E - I, II, III e IV.
A questão em pauta aborda diversos conceitos da arquitetura de computadores, especialmente em relação à organização de sistemas de computação e a paralelização de processos computacionais. Para resolver esta questão, é necessário compreender os seguintes temas:
- Ciclo de instrução: O ciclo busca-decodificação-execução é fundamental no funcionamento de um processador, onde ele busca uma instrução na memória, decodifica-a para entender o que deve ser feito e executa a ação necessária. Um interpretador de software também pode implementar um ciclo similar em um nível de abstração mais alto.
- Computação paralela: Esta é uma área que busca melhorar o desempenho de sistemas computacionais através da execução simultânea de operações. Existem diferentes formas de se organizar sistemas que operam em paralelo, cada uma com características próprias.
Os pontos enumerados no enunciado da questão são todos verdadeiros:
- Interpretadores de software podem de fato simular o ciclo de instrução de um processador, permitindo que programas sejam executados em um ambiente controlado por software.
- Computadores matriciais realizam a mesma operação em múltiplos conjuntos de dados simultaneamente, utilizando uma arquitetura que permite processamento de dados em paralelo.
- Multiprocessadores são sistemas que contêm várias CPUs, as quais podem executar processos em paralelo e compartilham uma memória comum, facilitando a comunicação e a gestão de dados entre eles.
- Multicomputadores consistem em múltiplas unidades de computação autônomas, cada uma com sua própria memória. Eles se comunicam por meio de troca de mensagens, permitindo a paralelização de tarefas sem compartilhamento direto de memória.
Portanto, a alternativa correta é a E, já que ela afirma corretamente que todos os itens apresentados descrevem conceitos corretos sobre a organização e o funcionamento de sistemas computacionais paralelos.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
II. computadores paralelos incluem processadores matriciais, nos quais a mesma operação é efetuada sobre múltiplos conjuntos de dados ao mesmo tempo. (Um exemplo de processador matricial moderno são as GPUs. Algumas como as da NVidea possuem linguamgens próprias (CUDA) para transformar a GPU em uma GPGPU - General Pourpose Grapycal Processing Unit)
III. computadores paralelos incluem multiprocessadores, nos quais várias CPUs compartilham uma memória em comum. (Basta lembrar dos SMPs - Symmetric multiprocessors)
IV. computadores paralelos podem ser formados por multicomputadores, cada um com sua própria memória, mas se comunicando por transmissão de mensagens.(Um exemplo são os Cluster)
Mais baixo em relação a que?o ciclo busca-decodificação-execução pode ser executado, também, por um interpretador de software que roda em um nível mais baixo
- Se for em relação à execução "tradicional" do ciclo busca-decodificação-execução, está errada. Microprogramação é um nível mais alto.
- Se for em relação aos interpretadores de software "tradicionais", está certa.
Justificando as 2 ultimas alternativas: Na área de processamento paralelo existem dois paradigmas principais de programação, Memória Compartilhada(fortemente acoplados) e Troca de Mensagens(fracamente acomplados).
E existem 4 arquiteturas: SISD, MISD, SIMD e MIMD, sendo esta última mais usada e dividida em:
- Multiprocessadores, com memória compartilhada;
- Multicomputadores, com memória distribuida.
O modelo de programação em memória compartilhada é direcionado para arquiteturas nas quais múltiplos processadores compartilham um único espaço de memória. A comunicação entre os processadores ocorre através da leitura(STORE) e escrita(LOAD) nesses dados compartilhados.
Um outro modelo de processamento paralelo é direcionado para arquiteturas de troca de mensagens. Nesse modelo, processadores não compartilham memória. Ao invés disso, eles enviam(SEND) e recebem(RECEAVE) mensagens através da rede de interconexão. Todos os dados são privados e a única forma de um processador obter uma informação que não está na sua memória local é requisitando-a ao processador que a possui.
Existe ainda a possibilidade de usar um modelo híbrido de comunicação com troca de informações por memória compartilhada dentro do nó SMP e troca de informações por mensagens entre os nós.
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo