sistemas distribuídos objetivo. o que é uma aplicação distribuída? uma aplicação que executa...
TRANSCRIPT
![Page 1: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/1.jpg)
Sistemas Distribuídos
OBJETIVO
![Page 2: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/2.jpg)
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
máquina 1
aplicação distribuída
máquina 1 máquina 2 máquina n
. . .
![Page 3: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/3.jpg)
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
![Page 4: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/4.jpg)
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)
![Page 5: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/5.jpg)
Condicionantes da Evolução
Tecnologia Redes de computadores Computadores pessoais Sistemas abertos Arquitetura de Computadores
Requisitos Utilizadores finais Programadores Gestores
![Page 6: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/6.jpg)
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
![Page 7: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/7.jpg)
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
![Page 8: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/8.jpg)
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
![Page 9: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/9.jpg)
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
![Page 10: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/10.jpg)
Requisitos dos Utilizadores
Transparência Partilha de informação Melhoria de comunicação entre
pessoas Segurança e proteção Fiabilidade e disponibilidade
![Page 11: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/11.jpg)
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
![Page 12: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/12.jpg)
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
![Page 13: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/13.jpg)
Modelos de Sistema de RV Multi-Usuário
![Page 14: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/14.jpg)
Acesso ao Mundo Virtual Distribuído
![Page 15: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/15.jpg)
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.
![Page 16: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/16.jpg)
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.
![Page 17: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/17.jpg)
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).
![Page 18: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/18.jpg)
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.
![Page 19: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/19.jpg)
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.
![Page 20: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/20.jpg)
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);
![Page 21: 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](https://reader036.vdocuments.site/reader036/viewer/2022062418/552fc178497959413d8efcd2/html5/thumbnails/21.jpg)
Sistemas Distribuídos X Sistemas Centralizados
Item Descrição
Compartilhamento de dados 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çãoTorna a comunicação entre humanos mais fácil através de mensagens
EconomiaMicroprocessadores oferecem custo/benefício maior do que mainframes
VelocidadeUm sistema distribuído pode ter maior poder computacional do que um mainframe
Distribuição Inerente Algumas aplicações envolvem máquinas espacialmente separadas
FlexibilidadeEspalha a carga de trabalho através das máquinas disponíveis da maneira mais efetiva em relação ao custo computacional
Crescimento incrementalPoder computacional pode ser adicionado com pequenos incrementos