Slide 1 - sistema de informacao

Propaganda
Sistemas Distribuídos
OBJETIVO
O que é uma
Aplicação Distribuída?
 Uma aplicação que executa
simultaneamente em várias máquinas
 Um grupo de processos que executa em
máquinas distintas e trabalha de forma
coordenada e cooperativa para realizar uma
determinada tarefa
aplicação
centralizada
aplicação
distribuída
...
máquina 1
máquina 1
máquina 2
máquina n
Sistema Distribuído
 conjunto de nós de processamento
 independentes
 heterogêneos
 características e objetivos distintos
 interligados (rede de comunicação)
 interagem e cooperam
Porquê?
 Distribuição Geográfica (organizações
físicas distribuídas)
 Extensibilidade, modularidade
 Partilha de recursos
 Maior disponibilidade (replicação)
 Maior desempenho (carga
computacional distribuída)
Condicionantes da Evolução
 Tecnologia




Redes de computadores
Computadores pessoais
Sistemas abertos
Arquitetura de Computadores
 Requisitos
 Utilizadores finais
 Programadores
 Gestores
Evolução das Redes de
Computadores
 Terminais ligados ao mainframe
 Interligação dos sistemas centrais
 Oferta de comunicação de dados
pelos operadores públicos




 X.25; RDIS; ATM
Redes locais
Internet
Wireless
Interligação de TODOS os dispositivos
onde quer que estejam + distribuição
= Computação ubíqua
Evolução dos Computadores
Pessoais
 Equipamentos simples e autónomos
 Baixo custo
 Interface atraente e intuitiva
 Mercado dominado pela Wintel:
Windows + Intel + Office
 Miríade de aplicações mas… para que
servem exatamente os computadores
Evolução da Arquitetura de
Computadores
 Grande aumento da:
 potência de cálculo, memória, e disco
 Utilização de componentes de h/w standard
 Multiprocessamento económico e eficaz
 Alguma uniformização do s/w de sistema
 SO: Windows, Unix, IBM MVS
 BD’s: Oracle, Informix,Sybase, SQL-Server,
DB2
 Redução de equipamentos centrais: downsizing
custo e dimensão, modularidade e
extensibilidade dos servidores
Consequências da Evolução
Tecnológica
 Grande disponibilidade da tecnologia
(clientes, servidores, e interligações)
 Distribuição da tecnologia pelo mundo
 Grande descoordenação e
heterogeneidade
 Sistema compatíveis com a
distribuição e modo de vida
Requisitos dos Utilizadores
 Transparência
 Partilha de informação
 Melhoria de comunicação entre
pessoas
 Segurança e proteção
 Fiabilidade e disponibilidade
Requisitos dos
programadores
 Interfaces normalizadas
 Ambientes de programação
independentes das características do
hardware e das redes
 Controle sobre o desempenho,
fiabilidade, disponibilidade, segurança
Requisitos dos Gestores
 Investimento reduzido
 Modularidade e extensibilidade na
evolução do sistema
 proteção do investimento anterior
 Adequação às equipas técnicas
 Otimização da gestão dos recursos
 Desempenho, disponibilidade,
fiabilidade, segurança
Modelos de Sistema de RV
Multi-Usuário
Acesso ao Mundo Virtual
Distribuído
Funcionamento Geral
 A estrutura de um sistema distribuído pode ser
visualizada em camadas. A camada mais interna
corresponde ao hardware, que suporta todas as
outras camadas do software. Em seguida vem o
núcleo, que é a primeira camada de software a
envolver o hardware, sobre esse núcleo (kernel)
situa-se o sistema operacional propriamente dito, que
fornece o suporte necessário à execução de
programas. E, em seguida, tem-se a camada mais
externa, correspondente ao nível de aplicação.
Funcionamento Geral
 Em um sistema distribuído, a existência de
computadores autônomos é transparente (não visível)
para o usuário, que não percebe a existência de
múltiplos processadores.
 Um sistema distribuído é um caso especial de rede,
cujo software lhe fornece maior grau de coesão e
transparência. Desta forma, a distinção entre uma
rede e um sistema distribuído está no software
(especialmente no sistema operacional) não no
hardware.
Funcionamento Geral
 Os sistemas distribuídos permitem que uma aplicação
seja dividida em diferentes partes, que se comunicam
através de linhas de comunicação, e cada parte
podendo ser processada em um sistema independente;

“Sistema Distribuído é aquele que roda em um
conjunto de máquinas sem memória compartilhada,
máquinas que mesmo assim aparecem como único
computador para seus usuários” (Lamport, 1978).
Vantagens do Sistema Distribuído
 Economia: Os microprocessadores oferecem uma
melhor relação preço/performance do que a oferecida
por mainframes.
 Velocidade: Um sistema distribuído pode ter um poder
de processamento maior que o de qualquer mainframe.
 Confiabilidade: Se uma máquina sair do ar, o sistema
como um todo pode sobreviver.
 Crescimento incremental: O poder computacional pode
crescer gradualmente.
Vantagens do Sistema Distribuído(cont.)
 Compartilhamento de dados: permite que mais de um
usuário acesse uma base de dados comum.
 Compartilhamento de dispositivos: permite que mais de
um usuário possa ter acesso a vários periféricos.
 Flexibilidade: Espalha a carga de trabalho por todas as
máquinas disponíveis ao longo da rede.
Desvantagens do Sistema Distribuído
 Software: Existência de software para sistemas
distribuídos é pequena até o momento;
 Redes: As redes de comunicação podem saturar ou
causar outros problemas;
 Segurança: Fácil acesso a dados também se aplica a
dados confidenciais (secretos);
Sistemas Distribuídos X
Sistemas Centralizados
Item
Compartilhamento de dados
Descrição
Permite vários usuários acessarem uma base de dados comum
Compartilhamento de
dispositivos
Permitem vários usuários acessarem recursos caros como
impressoras coloridas
Comunicação
Torna a comunicação entre humanos mais fácil através de
mensagens
Economia
Microprocessadores
mainframes
oferecem
custo/benefício
maior
do
que
Velocidade
Um sistema distribuído pode ter maior poder computacional do que
um mainframe
Distribuição Inerente
Algumas aplicações envolvem máquinas espacialmente separadas
Flexibilidade
Espalha a carga de trabalho através das máquinas disponíveis da
maneira mais efetiva em relação ao custo computacional
Crescimento incremental
Poder computacional
incrementos
pode
ser
adicionado
com
pequenos
Download