Sistemas Distribuídos - Computação Distribuída e Paralela

20.718 visualizações

Publicada em

Publicada em: Tecnologia
0 comentários
5 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
20.718
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
683
Comentários
0
Gostaram
5
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Sistemas Distribuídos - Computação Distribuída e Paralela

  1. 1. Sistemas Distribuídos e Paralelos Prof. Adriano Teixeira de Souza
  2. 2.  Poder de processamento das máquinas vem crescendo rapidamente Grande parte das máquinas interligada por redes de computadores Sistemas e aplicações estão cada vez mais complexos ◦ Funcionalidade, Interfaceamento gráfico, Comunicação, ... ◦ Maior carga, Maior número de usuários, ... ◦ Exigências de otimizar tempo de resposta, incrementar a confiabilidade ... Prof. Adriano Teixeira de Souza
  3. 3. ?
  4. 4.  Consiste em executar simultaneamente várias partes de uma mesma aplicação Tornou-se possível a partir do desenvolvimento de sistemas operacionais multi-tarefa, multi-thread e paralelos Aplicações são executadas paralelamente: ◦ Em um mesmo processador ◦ Em uma máquina multiprocessada ◦ Em um grupo de máquinas interligadas que se ◦ comporta como uma só máquina Prof. Adriano Teixeira de Souza
  5. 5.  O que é? ◦ Consiste em executar aplicações cooperantes em máquinas diferentes ◦ Tornou-se possível a partir da popularização das redes de computadores Prof. Adriano Teixeira de Souza
  6. 6. Prof. Adriano Teixeira de Souza
  7. 7.  A Computação Distribuída fornece toda a infra-estrutura necessária para a construção e operação efetiva de aplicações distribuídas Engloba todos os produtos necessários para permitir que essas aplicações sejam construídas e possam ser executadas em um ambiente de rede heterogêneo, ou em um ambiente centralizado Prof. Adriano Teixeira de Souza
  8. 8.  Acoplamento ◦ Sistemas paralelos são fortemente acoplados: compartilham hardware ou se comunicam através de um barramento de alta velocidade ◦ Sistemas distribuídos são fracamente acoplados Previsibilidade ◦ O comportamento de sistemas paralelos é mais previsível ◦ sistemas distribuídos são mais imprevisíveis devido ao uso da rede e a falhas Prof. Adriano Teixeira de Souza
  9. 9.  Influência do Tempo ◦ Sistemas distribuídos são bastante influenciados pelo tempo de comunicação pela rede ◦ não há uma referência de tempo global geral ◦ Em sistemas paralelos o tempo de troca de mensagens pode ser desconsiderado Controle ◦ em sistemas paralelos se tem o controle de todos os recursos computacionais ◦ os sistemas distribuídos tendem a empregar também recursos de terceiros Prof. Adriano Teixeira de Souza
  10. 10.  Um SD deve prover: ◦ sincronização de processos ◦ gerenciamento da comunicação interprocessos ◦ tratamento de deadlocks ◦ tratamento de outras situações não encontradas em sistemas centralizados Prof. Adriano Teixeira de Souza
  11. 11.  Usam melhor o poder de processamento Apresentam um melhor desempenho Permitem compartilhar dados e recursos Podem apresentar maior confiabilidade Permitem reutilizar serviços já disponíveis Atendem um maior número de usuários Balanceamento de carga Escalabilidade Prof. Adriano Teixeira de Souza
  12. 12. Prof. Adriano Teixeira de Souza
  13. 13.  Desenvolver, gerenciar e manter o sistema. Controlar o acesso concorrente a dados e a recursos compartilhados. Evitar que falhas de máquinas ou da rede comprometam o funcionamento do sistema. Garantir a segurança do sistema e o sigilo dos dados trocados entre máquinas Lidar com a heterogeneidade do ambiente ... Prof. Adriano Teixeira de Souza
  14. 14.  SO de Rede ◦ Provê ambiente no qual os usuários estão cientes da multiplicidade das máquinas, acessando-as remotamente ◦ Login remoto  SSH ◦ Transferência remota de arquivos  FTP ◦ Obriga que usuário mude de paradigma  Conjunto de comandos específico no FTP  Conjunto de comandos adequado do comando remoto no SSH Prof. Adriano Teixeira de Souza
  15. 15.  SO Distribuído ◦ Provê ambiente transparente, gerenciado pelo SO ◦ Migração de Dados  Duas abordagens  „FTP automático, com processamento local de uma cópia completa  Andrew File System  Distribuir, manipulando pequenas porções  NFS da Sun  SMB da Microsoft Prof. Adriano Teixeira de Souza
  16. 16.  SO Distribuído ◦ Migração de Computação  RPC  Troca de Mensagens ◦ Migração de Processos  Balanceamento de Carga  Aumento na velocidade de execução -> minimizar turnaround time  Preferência de hardware  Preferência de software  Acesso a dados Prof. Adriano Teixeira de Souza
  17. 17.  Aplicações que são funcionalmente separadas em processos distintos rodando em computadores diferentes sobre uma rede Os processos interoperam para resolver um problema computacional comum Consistem de interface de usuário, dados do usuário e os processos em diferentes computadores Prof. Adriano Teixeira de Souza
  18. 18. Máquina 1 Máquina Aplicação Aplicação N Apliacação Serviço Serviço Aplicação Middleware para Programação Distribuída Sistema Operacional Sistema Operacional Hardware Hardware Prof. Adriano Teixeira de Souza
  19. 19.  Middleware é um software que permite elementos de aplicações interoperarem através de redes Mesmo com as diferenças nos protocolos de comunicação, arquiteturas de sistemas, sistemas operacionais, bases de dados e outro serviços de aplicação Prof. Adriano Teixeira de Souza
  20. 20.  provê um modo para obter dados de um lugar (..) para outro lugar (..) deve mascarar as diferenças existentes entre SOs, plataformas de Hardware e protocolos de rede deve ocultar a complexidade do processo de transporte da rede, do desenvolvedor da aplicação Prof. Adriano Teixeira de Souza
  21. 21.  Fornecedores estão oferecendo serviços de sistemas distribuídos que têm interfaces de programação padronizadas e protocolos tais serviços são chamados serviços de middleware, porque se situam “no meio”, num nível acima ao SO e ao software de rede e abaixo das aplicações específicas Prof. Adriano Teixeira de Souza
  22. 22.  Estratégias diferentes que permitem a comunicação entre aplicações distribuídas ◦ Sockets ◦ RPC - Remote Procedure Call ◦ RMI (Remote Method Invocation) ◦ CORBA (Commom Object Request Broker Architecture) ◦ Web Services Prof. Adriano Teixeira de Souza
  23. 23.  Client-Server Model ◦ Modelo tradicional e dominante a partir dos anos 80 ◦ Enfoque na LAN Web-Based Distributed Computing Model ◦ Enfoque na Internet ◦ Processos ◦ Threads ◦ Objetos Distribuídos ◦ Agentes Prof. Adriano Teixeira de Souza
  24. 24.  Web-based Client-Server Computing ◦ proxy computing  Dados e programa são mandados do cliente para o servidor processar ◦ code shipping  O cliente faz uma requisição ao servidor que envia o programa para ser executado com dados locais do cliente  Ex: Applets rodando no browser ◦ remote computing  O cliente envia os dados para serem processados no servidor ◦ agent-based computing  three-tier model Prof. Adriano Teixeira de Souza
  25. 25.  Um SO multitarefa permite simular o paralelismo em um único processador, alternando a execução de processos Um processador com núcleo múltiplo permite paralelismo real entre processos, executando múltiplas instruções por ciclo Prof. Adriano Teixeira de Souza
  26. 26.  Uma Placa-Mãe Multiprocessador permite que cada processador execute um processo Prof. Adriano Teixeira de Souza
  27. 27.  Tyan S2696Prof. Adriano Teixeira de Souza
  28. 28.  Cluster é o nome dado a um sistema montado com mais de um computador, cujo objetivo é fazer com que todo o processamento da aplicação seja distribuído aos computadores, mas de forma que pareça com que eles sejam um computador só. Com isso, é possível realizar processamentos que até então somente computadores de alta performance seriam capazes de fazer. Prof. Adriano Teixeira de Souza
  29. 29.  Um Cluster é uma solução de baixo custo para processamento de alto desempenho Prof. Adriano Teixeira de Souza
  30. 30. Prof. Adriano Teixeira de Souza
  31. 31. Prof. Adriano Teixeira de Souza
  32. 32.  COULOURIS, George; DOLLIMORE, Jean, KINDBERG, Tim. “Distributed Systems: Concepts and Design”. 3 ed. Addison Wesley, 2001. JIA, Weijia; ZHOU, Wanlei. “Distributed Network Systems – from concepts to implementations”. Boston: Springer, 2005. SILBERSCHATZ, Abraham; GALVIN, Peter; GAGNE, Greg. “Sistemas Operacionais: Conceitos e Aplicações”. Rio de Janeiro: Campus, 2000. Prof. Adriano Teixeira de Souza

×