MILANO 9 ottobre 2013 Spazio Oberdan. Femminilealplurale.it è:
Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Transcript of Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
![Page 1: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/1.jpg)
Sistemas Distribuídos
Carlos Oberdan Rolim
Ciência da ComputaçãoSistemas de Informação
![Page 2: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/2.jpg)
Introdução a
sistemas distribuídos
[C1,T1.1,T1.2,T1.3,T1.4] (40 p.)
![Page 3: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/3.jpg)
Referência Básica
[C] Distributed Systems: Concepts and Design. G. Coulouris, J. Dollimore, T. Kindberg. Addison-Wesley, 1994. ISBN 0-201-62433-8. (Capítulos 4 e 5)
[T] Distributed Operating Systems. A. S. Tanenbaum. Prentice-Hall, 1995. ISBN 0-13-219908-4. (Seções 2.4 e 2.5)
![Page 4: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/4.jpg)
Conteúdo
Caracterização de SD
Exemplos de SD
Objetivos de SD
Conceitos de hardware em SD
Conceitos de software em SD
Histórico
![Page 5: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/5.jpg)
Sistemas distribuídos
Necessidade de realizar tarefas com maior intensidade. Opções:
Trabalhar mais
Trabalhar de uma maneira mais eficiente
Pedir ajuda
![Page 6: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/6.jpg)
Definição de SD
"Um sistema distribuído é uma coleção de computadores autônomos conectados por uma rede e equipados com um sistema de software distribuído." [C]
"Um sistema distribuído é uma coleção de computadores independentes que aparenta ao usuário ser um computador único." [T]
Você sabe que tem um sistema distribuído quando a falha de um computador do qual você nunca ouviu falar faz com que você pare completamente de trabalhar." [Leslie Lamport]
![Page 7: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/7.jpg)
Definição de SD
Sistemas distribuídos se diferenciam dos demais computadores pelo acoplamento fraco entre os processadores, ou seja, os computadores não tem acesso a uma memória comum. Toda a interação deve ser realizada por troca de mensagens através de canais de comunicação
![Page 8: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/8.jpg)
Definição de SD
![Page 9: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/9.jpg)
sem memória compartilhadasem relógio globaltroca de mensagens
modelosmodelo físico
modelo lógico
nodos e rede
processadorrelógio localmemória local volátilarmazenamento não volátilinterface de redesoftware
Processos e canais
Definição de SD
![Page 10: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/10.jpg)
Definição de SD
![Page 11: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/11.jpg)
Avanços tecnológicos
Invenção de redes de computadores de alta velocidade (anos 70):
Rede local (Local Area Network - LAN)
Rede global (Wide Area Network - WAN)
Desenvolvimento de microprocessadores potentes (anos 80).
![Page 12: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/12.jpg)
Estado da arte
É relativamente fácil agrupar um grande número de CPUs, conectando-as por uma rede de alta velocidade.
O software para sistemas distribuídos é completamente diferente do software para sistemas centralizados e está apenas começando a se desenvolver.
![Page 13: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/13.jpg)
Exemplos de SD
Uma rede de estações de trabalho em uma universidade ou companhia
Uma rede de computadores em uma fábrica
Um grande banco com muitas agências, cada qual com um computadores e caixas automáticas
![Page 14: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/14.jpg)
Exemplos de SD (continuação)
Sistema de reserva de passagens aéreas
Sistema de controle de estoque, vendas e entregas numa cadeia de lojas
Serviços da Internet: Netnews, WWW
Sistemas de acesso a recursos de multimídia e de conferência
![Page 15: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/15.jpg)
Vantagens de SD sobre SC
Melhor relação custo/benefício
Capacidade de processamento além dos limites práticos de SC (velocidade da luz, aquecimento)
Maior domínio de aplicações
Maior confiabilidade e disponibilidade
Crescimento gradativo da capacidade de processamento
![Page 16: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/16.jpg)
Vantagens de SD sobre PCs independentes
Compartilhamento de dados comuns entre usuários
Compartilhamento de recursos de hardware e software
Comunicação entre pessoas
Flexibilidade na distribuição de tarefas de acordo com as aplicações
![Page 17: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/17.jpg)
Desvantagens de SD
Falta de software adequado
Falhas e saturação da rede de comunicação podem eliminar as vantagens de SD
Segurança pode ser comprometida: fácil acesso a dados e recursos reservados
![Page 18: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/18.jpg)
Hardware em SD
F ra ca m e n teA cop la do
F o r te m e n teA cop la do
S e qu en t,E n co re
B ar ram en to
U ltracom p ute r,R P 3
C h av ea m e n to
M u ltip ro cessa d ores(m e m ó ria com pa rti lha da)
E s taçõ ese m um a L A N
B arram en to
H ype rcub e ,T ran sp u te r
C h av ea m e n to
M u lticom p u ta d ores(m em ó r ia s sep a ra da s)
C o m p uta do resd istr ibu ído s e p ara le los
![Page 19: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/19.jpg)
Software básico em SD
Acoplamentode hardware
Acoplamentode software
Sistemas operacionais derede
Fraco Fraco
Sistemas distribuídos«autênticos»
Fraco Forte
Sistemas timesharingpara multiprocessadores
Forte Forte
![Page 20: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/20.jpg)
Sistemas operacionais de rede
Estações de trabalho conectadas por uma LAN
Cada estação tem seu próprio sistema operacional
Ferramentas para login remoto e cópia de arquivos entre estações
Servidores de arquivos e ferramentas para causar aparência de arquivo local
![Page 21: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/21.jpg)
Sistemas distribuídos autênticos
A rede toda tem aparência de ser um único sistema timesharing: virtual uniprocessor, single-system image
Mecanismo global para comunicação entre processos
Gerenciamento de processos homogêneo
Sistema de arquivos homogêneo
![Page 22: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/22.jpg)
Sistemas timesharing para multiprocessadores
Fila única de processos prontos para execução: melhor distribuição de carga
CPUs especializadas em: executar processos, controlar periféricos, executar sistema operacional (gerenciar a memória global)
Sistema de arquivos comporta-se de maneira semelhante a um SC
![Page 23: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/23.jpg)
Comparação de SW para SD
SO de rede SOdistribuído
SO paramultiproc.
Parece um SC Não Sim Sim
Mesmo SO Não Sim Sim
Cópias de SO N N 1
Comunicação Arquivoscompartilhados
Mensagens Memóriacompartilhada
Protocoloscomuns
Sim Sim Não
Fila única deexecução
Não Não Sim
![Page 24: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/24.jpg)
Características básicas de SD
Compartilhamento de recursos
Extensibilidade (openness)
Concorrência
Escalabilidade (crescimento gradativo suave)
Tolerância a falhas
Transparência
![Page 25: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/25.jpg)
Compartilhamento de recursos
Componentes de hardware: discos, impressoras, ...
Componentes de software: arquivos, bancos de dados, ...
Modelos básicos:
Modelo cliente-servidor
Modelo baseado em objetos
![Page 26: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/26.jpg)
Extensibilidade
Extensões de hardware: periféricos, memória, interfaces de comunicação, ...
Extensões de software: funções de SO, protocolos de comunicação, ...
Interfaces chaves são públicas (system calls)
Mecanismo uniforme de comunicação entre processos
![Page 27: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/27.jpg)
Concorrência
Mais de um processo em execução a cada instante:
Atividades separadas de usuários
Independência de recursos
Localização de processos servidores em computadores distintos
Acesso concorrente a recursos compartilhados requer sincronização
![Page 28: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/28.jpg)
Escalabilidade
Quantidade de trabalho envolvido no processamento de qualquer requisição de acesso a um recurso compartilhado independe do tamanho da rede
Técnicas: replicação, caching, servidores múltiplos
![Page 29: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/29.jpg)
Tolerância a falhas
Falhas de hardware e software (em CPUs e redes): programas param ou produzem resultados errados
Abordagens:
Redundância de hardware (Ex: banco de dados replicado em diversos servidores)
Recuperação por software: manter dados permanentes sempre consistentes
![Page 30: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/30.jpg)
Transparência
Esconder do usuário e do programador de aplicações a separação de componenentes em um sistema distribuído, tal que este seja visto como um sistema centralizado
Formas de transparência: acesso, localização, concorrência, replicação, falha, migração, desempenho e escala
![Page 31: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/31.jpg)
Transparência de acesso
Operações de acesso a objetos deinformação são idênticas para objetoslocais e remotos
Exemplo:Operação de envio de uma mensagemeletrônica especificando o destinatárioatravés de seu endereço Internet
![Page 32: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/32.jpg)
Transparência de localização
Acesso a um objeto ocorre sem que sejanecessário o conhecimento de sualocalização
Exemplo:Operação de envio de uma mensagemeletrônica especificando o destinatárioatravés de seu endereço Internet
![Page 33: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/33.jpg)
Outras formas de transparência
Concorrência: processos operam concorrentemente usando objetos de informação comuns sem interferência entre eles.
Replicação: várias instâncias de um objeto de informação são usadas sem requerer o conhecimento das réplicas pelos usuários e aplicações.
Falha: mascaramento de falhas de hardware e software.
![Page 34: Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.](https://reader035.fdocument.pub/reader035/viewer/2022062700/552fc12a497959413d8cdbfa/html5/thumbnails/34.jpg)
Outras formas de transparência (Continuação)
Migração: movimento de objetos de informação dentro do sistema não afeta a operação de usuários e aplicações.
Desempenho: reconfiguração do sistema para melhorar desempenho conforme a carga varia.
Escala: o sistema e as aplicações podem expandir em escala sem requerer modificações na estrutura do sistema ou nos algoritmos das aplicações.