Escolar Documentos
Profissional Documentos
Cultura Documentos
Paralelismo é sobre a execução paralela de tarefas, ou seja, mais de uma por vez (de forma
simultânea), a depender da quantidade de núcleos (cores) do processador. Quanto mais
núcleos, mais tarefas paralelas podem ser executadas. É uma forma de distribuir
processamento em mais de um núcleo. Possibilita que uma aplicação paralela seja executada
em qualquer processador de qualquer sistema.
Tratamento de falhas no software são mais complexas de se implementar, devem garantir que
no caso de uma falha no SO, a aplicação continue a ser executada normalmente sem que o
usuário perceba. Mais complexas de se implementar, devem garantir que, no caso de uma
falha no SO, por exemplo, a aplicação continue a ser executada normalmente, sem que o
usuário perceba RESPOSTA: Tratamento de falhas de software.
Entidades: Sensores (em uma rede de sensores), threads, objetos, componentes, serviços web,
entre outros.
Um CLUSTER está conectado por uma rede local e são configurados para trabalhar juntos como
uma única entidade. Consistem em um conjunto de estações de trabalho ou PCs semelhantes,
conectados por meio de uma rede local de alta velocidade. Além disso, cada nó executa o
mesmo sistema operacional.
UM GRID envolve a criação de uma federação de computadores, na qual cada sistema pode
pertencer a diferentes domínios administrativos, com variações em termos de hardware,
software e tecnologia de rede utilizada. Esses sistemas são conectados em uma infraestrutura
distribuída para formar um ambiente de processamento de alto desempenho. costumam ser
montados como federação de computadores, na qual cada sistema pode cair sob um domínio
administrativo diferente, [...] no que tange a hardware, software e tecnologia de rede
empregada
A primeira geração de sistemas distribuídos surgiu em 1970 até 1980 e foi uma resposta ao
surgimento das redes locais (Local Area Networks - LANs), foram projetados para fornecer uma
infraestrutura que permitisse o compartilhamento de serviços, como impressão, arquivos e
transferências de e-mail e arquivos, por meio dessas redes locais. o número de nós
(computadores) em uma rede local era limitado a um intervalo entre 10 e 100 nós.
Threads em nível de usuário: a criação e destruição de uma thread bem menos onerosa para os
recursos do sistema principalmente o processador, que só precisa ceder acesso a alguns de
seus registradores para armazenamento temporário de dados e operações que serão realizadas
pela CPU), do que para a criação e destruição de processos, já que as threads, diferentemente
dos processos, são controladas em nível das aplicações dos usuários.
Threads implementadas em nível do sistema: uma vantagem de sua utilização é que sua
implementação elimina a desvantagem apontada na implementação em nível de usuário, já
que a criação, destruição, sincronização, pausa, entre outras, de uma thread é realizada no
contexto de chamadas do SO (kernel). Por outro lado, essa mudança de controle da thread
pode ter um custo alto, uma vez que os recursos manipulados passam agora para a própria
thread, acarretando prejuízo no tocante ao desempenho do sistema, que como já foi discutido,
é um problema quando se lida com processos.
• Por se tratar de um sistema distribuído, os recursos em uma grid são acessados de forma
transparente pelos usuários.
• O principal objetivo dos sistemas em grid é atingir alto desempenho, conseguido a partir da
utilização das sobras da capacidade computacional dos vários sistemas computacionais que a
compõe.
• Diferentemente dos clusteres que são sistemas homogêneos (são formados por máquinas
iguais), sistemas em grid são sistemas heterogêneos (são formados por máquinas diferentes,
não havendo restrições de hardware, SO, redes, entre outros). Outro aspecto que merece
destaque nos sistemas distribuídos em grid é sua arquitetura, dividida em cinco camadas:
camada-base, camada de conectividade, camada de recursos, camada coletiva e camada de
aplicações,
• Camada coletiva: esta camada coordena os recursos distribuídos, manipulando o acesso aos
mesmos, fazendo o escalonamento de tarefas, a replicação de dados, entre outros.
• Camada de aplicação: nível mais alto, a camada de aplicação contém as aplicações que são
utilizadas no ambiente distribuído.