Your SlideShare is downloading. ×
Sumário1.     Caracterização de Sistemas Distribuídos .......................................................................
1.       Caracterização de Sistemas Distribuídos     Sistemas de computação distribuída podem diferir bastante entre si, d...
1.1. Distribuição a Nível de Hardware e SoftwareNo tocante ao Hardware, um sistema é distribuído quando não existe memória...
c. Software não distribuído sendo executado em um hardware distribuído: aqui o         objectivo é esconder a distribuição...
2.      Aplicação de Sistemas distribuídos     As aplicações que podem ser implementadas como sistemas distribuídos são mu...
A implementação de uma aplicação como um conjunto de serviços especializados     amolda-se no ambiente de um sistema distr...
4. Condicionantes da EvoluçãoDestacam-se dois aspectos condicionantes a evolução de sistemas distribuídos: ostecnológicos ...
iii. Controlo sobre o desempenho, fiabilidade, disponibilidade,                    segurança          g. Gestores         ...
Upcoming SlideShare
Loading in...5
×

Caracterizacao de sistemas distribuidos

2,294

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,294
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
50
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Caracterizacao de sistemas distribuidos"

  1. 1. Sumário1. Caracterização de Sistemas Distribuídos .................................................................... 21.1. Distribuição a Nível de Hardware e Software ........................................................ 31.2. Distribuição a Nível de Componentes de Software ................................................ 42. Aplicação de Sistemas distribuídos ............................................................................ 53. Exemplos de sistemas distribuídos ............................................................................. 64. Condicionantes da Evolução....................................................................................... 74.1. Tecnológicos ........................................................................................................... 74.2. Requisitos................................................................................................................ 7Página 1 de 8
  2. 2. 1. Caracterização de Sistemas Distribuídos Sistemas de computação distribuída podem diferir bastante entre si, dependendo do modo pelo qual seus processadores estão conectados. Dentre as várias arquitecturas que utilizam múltiplos processadores tem-se, por exemplo: 1. Computadores vectoriais – desenvolvidos para lidar com cálculos científicos complexos, como por exemplo, cálculos relacionados à previsão do tempo. Um computador vectorial é caracterizado por poder realizar operações em vectores completos através de uma simples instrução. 2. Multiprocessadores – compartilham memória (vide Fig. 2); 3. Multicomputadores – cada processador possui sua própria memória local (vide Fig. 3); e 4. Sistemas compostos por várias estações de trabalho conectadas por uma rede local ou por uma rede de longa distancia (vide Fig. 4). Fig. 1: Multiprocessadores Fig. 2: Multicomputador Fig. 3: Sistema distribuído de longa distancia Página 2 de 8
  3. 3. 1.1. Distribuição a Nível de Hardware e SoftwareNo tocante ao Hardware, um sistema é distribuído quando não existe memória primáriacompartilhada pelos elementos processadores, e não distribuído quando existe. Quanto aosoftware, pode-se dizer, de modo geral, que um sistema é distribuído quando seusprocessos se comunicam (cooperam) através de mecanismos baseados em troca demensagens, Isso porque supõe-se, a princípio, que o hardware hospedeiro é distribuído,portanto, processos residentes em elementos processadores diferentes podem trocarinformações somente via rede de comunicação, por meio de emissão e recepção demensagens. Analogamente, um sistema é não distribuído quando seus processos secomunicam através de dados compartilhados.Ignorando, no momento, essas premissas, existem, então, quatro esquemas dedistribuição, decorrente da combinação de hardware e software distribuídos ou não, osquais são: a. Software distribuído sendo executado em um hardware distribuído: esse esquema caracteriza um sistema no qual os processos estão sendo executados em processadores separados e se comunicando através do uso de primitivas do tipo "Envia e Recebe", as quais trocam mensagens sobre uma rede local ou uma rede de longa distância; b. Software distribuído sendo executado em um hardware não distribuído: aqui a troca de mensagens entre os processos é simulada através do uso de memória compartilhada;Página 3 de 8
  4. 4. c. Software não distribuído sendo executado em um hardware distribuído: aqui o objectivo é esconder a distribuição física, fazendo com que o sistema aparente possua memória compartilhada; d. Software não distribuído sendo executado em um hardware não distribuído: esquema que caracteriza os sistemas convencionais que são fortemente acoplados 1 .1.2. Distribuição a Nível de Componentes de SoftwareEm geral, existem três aspectos de software que podem estar distribuídos: dados,programas e controle.No tocante a distribuição de dados, pode-se ter: sistemas de arquivos distribuídos esistemas de banco de dados distribuídos.No que diz respeito a programas, pode-se ter: programas centralizados e programasdistribuídos. Um programa centralizado é aquele que é executado em uma arquitectura naqual cada um dos processadores pode executar qualquer instrução desse programa. Já umprograma distribuído é aquele que se encontra espalhado por várias memórias primárias,sendo que cada uma é acedida por um processador diferente, o qual executa a parte doprograma que se encontra na memória primária a ele associada.A distribuição do controle está relacionada directamente com a distribuição do própriosistema operativo. O que distingue um sistema distribuído de um sistema de arquitecturaclássica é a distribuição do controle. O controle é centralizado quando a execução de umprograma, em qualquer instante, está sob os cuidados de um único elemento processador.Já, quando o controle é distribuído, a execução de um programa está sob os cuidados demais que um elemento processador.1 Em termos de hardware, fortemente acoplada, significa, baixo retardo na transmissão de mensagens, alta taxa detransmissão e, na vertente de software, fracamente acoplado, significa, máquinas e usuários funcionalmenteindependentes uns dos outros, podendo interagir num grau limitado quando necessário.Página 4 de 8
  5. 5. 2. Aplicação de Sistemas distribuídos As aplicações que podem ser implementadas como sistemas distribuídos são muitas. Existem quatro vantagens básicas de se projectar uma aplicação para um sistema distribuído, a saber: • Diminuição do tempo de execução da aplicação; • Aumento do grau de confiabilidade e disponibilidade da aplicação; • O uso de partes do sistema para fornecer especialização funcional; e • A inerente distribuição da aplicação. A diminuição do tempo de execução da aplicação pode ser concluída através do uso do paralelismo existente em um sistema distribuído. Alguns programas terão seus tempos de execução diminuídos se partes desses programas forem executados em processadores diferentes ao mesmo tempo. Exemplo de aplicações é a compilação paralela de módulos de um dado programa em máquinas diferentes, e a implementação de algoritmo de busca heurística (Algoritmos de Busca são técnicas de Inteligência Artificial aplicadas a problemas de alta complexidade teórica que não são resolvidos com técnicas de programação convencionais, principalmente as de natureza puramente numérica). Os sistemas distribuídos são potencialmente mais confiáveis, pois desde que os processadores são autónomos, uma falha em um não afecta o funcionamento correcto dos demais. Portanto, a confiabilidade do sistema pode ser aumentada ao se replicar funções e/ou dados da aplicação nos vários processadores. Desse modo, se alguns elementos processadores falharem, os demais poderão continuar o serviço. Exemplos clássicos de aplicações tolerantes a faltas (falhas) são o controle de um avião e o controle de uma fábrica automatizada. Página 5 de 8
  6. 6. A implementação de uma aplicação como um conjunto de serviços especializados amolda-se no ambiente de um sistema distribuído. Um exemplo é um ambiente que forneça um servidor de arquivos, um servidor de impressão, um servidor de processos, um servidor de tempo, um servidor de carga e um servidor de "gateway". Cada um desses serviços pode usar um ou mais processadores dedicados, garantindo bom desempenho e alta confiabilidade. Os servidores podem trocar requisições entre si através da rede. É fácil adicionar novos processadores para atender a novos serviços ou para aumentar a capacidade computacional de serviços já existentes. Recursos especiais do sistema são passíveis de serem compartilhados, pois os processadores se comunicam através da rede. Uma outra vantagem do uso de sistemas distribuídos é para a implementação de aplicações que sejam inerentemente distribuídas. Um exemplo clássico é a implementação de uma aplicação de automação de um departamento, onde cada sector poderia ter sua estação de trabalho contendo os dados e funções afectas a ele e podendo aceder dados de outros sectores executando funções remotas.3. Exemplos de sistemas distribuídos Os servidores do motor de busca Google encontram-se replicados em vários ponto do globo, nomeadamente América, Europa, Ásia, África, …. Se pesquisa for feita em Moçambique a informação é buscada no servidor que está bem África, por exemplo, aqui ganha-se bastante no tempo de busca. Numa organização em há servidores dedicados: Servidor de Impressora, Servidor de Ficheiros, Servidor de Correio Electrónico, Servidor de Base de Dados,… Estes servidores respondem às solicitações como entidade única, na media em que os clientes, se não forem informados, não se apercebem que existem servidores dedicados para realizarem tarefas específicas. Página 6 de 8
  7. 7. 4. Condicionantes da EvoluçãoDestacam-se dois aspectos condicionantes a evolução de sistemas distribuídos: ostecnológicos e os requisitos:4.1. Tecnológicos a. Redes de computadores b. Computadores pessoais c. Sistemas abertos d. Arquitectura de Computadores i. Grande aumento da: potência de cálculo, memória, e disco ii. Utilização de componentes de h/w standard iii. Multiprocessamento económico e eficaz iv. Alguma uniformização do s/w de sistema 1. SO: Windows, Unix, IBM MVS 2. BD’s: Oracle, Informix,Sybase, SQL-Server, DB24.2. Requisitos e. Utilizadores finais i. Transparência ii. Partilha de informação iii. Melhoria de comunicação entre pessoas iv. Segurança e protecção v. Fiabilidade e disponibilidade f. Programadores i. Interfaces normalizadas ii. Ambientes de programação independentes das características da h/w e das redesPágina 7 de 8
  8. 8. iii. Controlo sobre o desempenho, fiabilidade, disponibilidade, segurança g. Gestores i. Investimento reduzido ii. Modularidade e extensibilidade na evolução do sistema iii. protecção do investimento anterior iv. Adequação às equipas técnicas v. Optimização da gestão dos recursos vi. Desempenho, disponibilidade, fiabilidade, segurançaPágina 8 de 8

×