Você está na página 1de 28

Introduo a Sistemas Distribudos

Mdulo 1
[C1,T1.1,T1.2,T1.3,T1.4] (40 p.)

Referncia Bsica


[C] Distributed Systems: Concepts and Design. G. Coulouris, J. Dollimore, T. Kindberg. Addison-Wesley, 1994. ISBN 0-201-62433-8. (Captulos 4 e 5) [T] Distributed Operating Systems. A. S. Tanenbaum. Prentice-Hall, 1995. ISBN 0-13-219908-4. (Sees 2.4 e 2.5)

Contedo
     

Caracterizao de SD Exemplos de SD Objetivos de SD Conceitos de hardware em SD Conceitos de software em SD Histrico

Definio de SD


"Um sistema distribudo uma coleo de computadores autnomos conectados por uma rede e equipados com um sistema de software distribudo." [C] "Um sistema distribudo uma coleo de computadores independentes que aparenta ao usurio ser um computador nico." [T]

Outra definio de SD


"Voc sabe que tem um sistema distribudo quando a falha de um computador do qual voc nunca ouviu falar faz com que voc pare completamente de trabalhar." [Leslie Lamport]

Avanos tecnolgicos


Inveno 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).

Estado da arte


relativamente fcil agrupar um grande nmero de CPUs, conectando-as por uma rede de alta velocidade. O software para sistemas distribudos completamente diferente do software para sistemas centralizados e est apenas comeando a se desenvolver.

Exemplos de SD


Uma rede de estaes de trabalho em uma universidade ou companhia Uma rede de computadores em uma fbrica Um grande banco com muitas agncias, cada qual com um computadores e caixas automticas

Exemplos de SD (continuao)


 

Sistema de reserva de passagens areas Sistema de controle de estoque, vendas e entregas numa cadeia de lojas Servios da Internet: Netnews, WWW Sistemas de acesso a recursos de multimdia e de conferncia

Vantagens de SD sobre SC
 

  

Melhor relao custo/benefcio Capacidade de processamento alm dos limites prticos de SC (velocidade da luz, aquecimento) Maior domnio de aplicaes Maior confiabilidade e disponibilidade Crescimento gradativo da capacidade de processamento

Vantagens de SD sobre PCs independentes




 

Compartilhamento de dados comuns entre usurios Compartilhamento de recursos de hardware e software Comunicao entre pessoas Flexibilidade na distribuio de tarefas de acordo com as aplicaes

Desvantagens de SD
 

Falta de software adequado Falhas e saturao da rede de comunicao podem eliminar as vantagens de SD Segurana pode ser comprometida: fcil acesso a dados e recursos reservados

Hardware em SD
Fort copl t o

omputadores distribudos e paralelos

Fr c c l

ultiprocessadores (memria compartil ada) Barramento Sequent, ncore aveamento Ultracomputer,

ulticomputadores (memrias separadas) Barramento sta es em uma aveamento Hypercube, Transputer

Software bsico em SD
Acoplamento Acoplamento de hardware de software Sistemas operacionais de rede Sistemas distribudos autnticos Sistemas timesharing para multiprocessadores Fraco Fraco

Fraco

Fort

Fort

Fort

Sistemas operacionais de rede




Estaes de trabalho conectadas por uma LAN Cada estao tem seu prprio sistema operacional Ferramentas para login remoto e cpia de arquivos entre estaes Servidores de arquivos e ferramentas para causar aparncia de arquivo local

Sistemas distribudos autnticos




A rede toda tem aparncia de ser um nico sistema timesharing: virtual uniprocessor, single-system image Mecanismo global para comunicao entre processos Gerenciamento de processos homogneo Sistema de arquivos homogneo

Sistemas timesharing para multiprocessadores




Fila nica de processos prontos para execuo: melhor distribuio de carga CPUs especializadas em: executar processos, controlar perifricos, executar sistema operacional (gerenciar a memria global) Sistema de arquivos comporta-se de maneira semelhante a um SC

Comparao de SW para SD
SO de rede Parece um SC Mesmo SO Cpias de SO Comunicao Protocolos comuns Fila nica de execuo No No N Arquivos compartilhados Sim No SO distribudo Sim Sim N Mensagens Sim No SO para multiproc. Sim Sim 1 Memria compartilhada No Sim

Caractersticas bsicas de SD
   

 

Compartilhamento de recursos Extensibilidade (openness) Concorrncia Escalabilidade (crescimento gradativo suave) Tolerncia a falhas Transparncia

Compartilhamento de recursos


Componentes de hardware: discos, impressoras, ... Componentes de software: arquivos, bancos de dados, ... Modelos bsicos:
Modelo cliente-servidor Modelo baseado em objetos

Extensibilidade


Extenses de hardware: perifricos, memria, interfaces de comunicao, ... Extenses de software: funes de SO, protocolos de comunicao, ... Interfaces chaves so pblicas (system calls) Mecanismo uniforme de comunicao entre processos

Concorrncia


Mais de um processo em execuo a cada instante:


Atividades separadas de usurios Independncia de recursos Localizao de processos servidores em computadores distintos

Acesso concorrente a recursos compartilhados requer sincronizao

Escalabilidade


Quantidade de trabalho envolvido no processamento de qualquer requisio de acesso a um recurso compartilhado independe do tamanho da rede Tcnicas: replicao, caching, servidores mltiplos

Tolerncia a falhas


Falhas de hardware e software (em CPUs e redes): programas param ou produzem resultados errados Abordagens:
Redundncia de hardware (Ex: banco de dados replicado em diversos servidores) Recuperao por software: manter dados permanentes sempre consistentes

Transparncia


Esconder do usurio e do programador de aplicaes a separao de componenentes em um sistema distribudo, tal que este seja visto como um sistema centralizado Formas de transparncia: acesso, localizao, concorrncia, replicao, falha, migrao, desempenho e escala

Transparncia de acesso
Operaes de acesso a objetos de informao so idnticas para objetos locais e remotos Exemplo: Operao de envio de uma mensagem eletrnica especificando o destinatrio atravs de seu endereo Internet

Transparncia de localizao
Acesso a um objeto ocorre sem que seja necessrio o conhecimento de sua localizao Exemplo: Operao de envio de uma mensagem eletrnica especificando o destinatrio atravs de seu endereo Internet

Outras formas de transparncia




 

Concorrncia: processos operam concorrentemente usando objetos de informao comuns sem interferncia entre eles. Replicao: vrias instncias de um objeto de informao so usadas sem requerer o conhecimento das rplicas pelos usurios e aplicaes. Falha: mascaramento de falhas de hardware e software. Migrao: movimento de objetos de informao dentro do sistema no afeta a operao de usurios e aplicaes. Desempenho: reconfigurao do sistema para melhorar desempenho conforme a carga varia. Escala: o sistema e as aplicaes podem expandir em escala sem requerer modificaes na estrutura do sistema ou nos algoritmos das aplicaes.