Buscar

Computação Distribuída - fundamentos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

9
Neste capítulo serão apresentados e discutidos os conceitos básicos e a evolução da 
computação distribuída e discriminados os sistemas distribuídos e a motivação para o 
compartilhamento de recursos.
OBJETIVOS DE APRENDIZAGEM
 � Apontar os conceitos básicos e os fundamentos de computação distribuída;
 � Discutir a evolução da computação ao longo das décadas;
 � Abordar os tipos de sistemas distribuídos;
 � Avaliar os sistemas distribuídos e compartilhamento de recursos.
1 FUNDAMENTOS DE 
COMPUTAÇÃO DISTRIBUÍDA
1.1 Conceituação de sistemas distribuídos
Se este é o seu primeiro contato com a área de TI, talvez você esteja se 
perguntando: “O que seria computação distribuída?”. Fique tranquilo, pois 
garantimos que até o fim deste capítulo esse conceito vai estar bem claro 
para você; mas, antes de responder, vamos falar sobre alguns conceitos que 
facilitarão muito sua compreensão sobre esse assunto e outros relacionados. 
Está preparado?
Para começar, vamos conceituar os sistemas distribuídos a partir da definição 
de autores consagrados na área de computação.
ATENÇÃO
Autores consagrados são aqueles que realizaram estudos muito importantes, que fundamentaram 
ou desenvolveram toda uma área de conhecimento – são como “sábios” em um assunto. Ler esses 
autores é fundamental para falar com propriedade sobre um tema e ter subsídios para pesquisar 
ou inovar em uma área, o que, certamente, destacará você como profissional.
10
Segundo Tanenbaum e Van Steen (2007), “Um sistema distribuído (SD) é um 
conjunto de computadores independentes que se apresenta a seus usuários 
como um sistema único e coerente”.
Já de acordo com Coulouris, Dollimore e Kindberg (2007):
Definimos um sistema distribuído como sendo aquele no qual os componentes de 
hardware ou software, localizados em computadores interligados em rede, se comunicam 
e coordenam suas ações apenas enviando mensagens entre si.
Figura 1.1 – Sistema distribuído.
1.2 Evolução da computação
Antes de tratarmos diretamente da evolução da computação, vamos analisar 
a evolução das sociedades humanas ao longo dos séculos.
11
 � Sociedade pré-industrial – essa sociedade prevaleceu até a primeira 
metade do século XIX e é caracterizada pela economia fortemente 
embasada na produção agropecuária e trabalhos manuais, mobilidade 
social restrita, poder de decisão altamente centralizado e fluxo de 
informação muito limitado;
 � Sociedade industrial – durou até por volta da Segunda Guerra Mundial. 
Nesse período, vemos o surgimento do uso das máquinas a vapor, as 
grandes descobertas científicas, o aparecimento de outras opções 
de atividade econômica liberando o homem do trabalho puramente 
agrícola e o começo da disseminação das informações. Contudo, a 
decisão continua centralizada e os operários devem obedecer a seus 
superiores;
 � Sociedade pós-industrial – tem lugar após a Segunda Guerra, 
também chamada sociedade do conhecimento. Passam a ter valor 
as características humanas, como atitude, determinação e interesse. 
A busca pela informação é uma constante. As decisões passam a ser 
descentralizadas;
12
 � Sociedade em rede – estamos na transição para esse novo cenário, 
no qual temos o mundo globalizado e on-line, onde a informação e 
o conhecimento se propagam de forma descentralizada. O uso de 
redes sociais provoca uma revolução na troca de informações e na 
comunicação humana.
Podemos dizer que a tecnologia da informação e os sistemas computacionais 
foram os pilares dessa revolução, sendo que a Internet é um dos componentes 
mais visíveis. Nos próximos tópicos vamos discutir as eras envolvidas nesse 
processo evolutivo.
Na sua opinião, o que permitiu que a sociedade 
atingisse o grau de integração e troca de informação 
que temos hoje?
PARA PENSAR
1.2.1 A era do processamento de dados
Com o desenvolvimento dos computadores digitais a partir de 1945, na 
década de 1960 surgem os mainframes, computadores de grande porte, 
usados por universidades, centros de pesquisa e grandes empresas. Com 
eles foi possível tratar e analisar um enorme volume de dados, dando origem 
ao processamento de dados, permitindo correlacioná-los e gerar relatórios 
que ajudavam na tomada de decisões.
Figura 1.2 – ENIAC. Um dos primeiros computadores eletrônicos, cerca de 1946.
13
Mas o uso das aplicações era limitado e o alto custo dos mainframes exigia que 
seus recursos fossem compartilhados entre os operadores, sendo utilizados os 
chamados Centros de Processamento de Dados (CPDs).
1.2.2 A era dos sistemas de informação
Com o avanço das tecnologias, principalmente com o desenvolvimento dos 
microprocessadores, em meados de 1970, foi possível o surgimento dos 
computadores pessoais e os pacotes softwares.
Figura 1.4 – Modelo básico de microprocessador moderno.
Figura 1.3 – Computador mainframe. Fotografia da década de 1960.
Para conhecer a história 
dos mainframes, assista 
ao vídeo “Mainframe 50 
anos – a inovação que 
fez história”. Disponível 
em: <https://goo.gl/
qwNDqA>. Acesso em: 4 
set. 2017.
VÍDEO
Microprocessadores. 
São os componentes que 
contêm as unidades de 
processamento central 
do computador, sendo 
constituídos de milhares 
de transistores e outros 
componentes em um 
único encapsulamento.
GLOSSÁRIO
14
Figura 1.5 – Computador PC Commodore PET 2001 de 1977.
Nesse período, temos a consolidação dos bancos de dados que passaram a 
exigir ferramentas que os gerenciassem de forma eficiente, originando, assim, 
os Sistemas Gerenciadores de Banco de Dados (SGBDs).
A tecnologia da informação ainda apresentava um custo elevado, o que 
dificultava a popularização da informática no ambiente corporativo. Já as redes 
de computadores estavam no seu início e restritas aos centros de pesquisa.
1.2.3 A era da inovação propiciada pela 
informática
No fim dos anos 1970 e início dos 1980, temos o surgimento da computação 
pessoal. Ela possibilitou aos usuários que não eram altamente especializados 
em programação ou computação o uso dos computadores para a execução 
de tarefas que antes exigiam outros dispositivos mecânicos, como a máquina 
de escrever. Agora esses usuários podiam contar com um equipamento 
versátil, que permitia editar textos e efetuar os cálculos por meio de planilhas 
eletrônicas.
Figura 1.6 – Computador pessoal Macintosh Aparelho da década de 1980.
15
Figura 1.7 – Computadores conectados em rede.
São desse período as inovações tecnológicas introduzidas por Steve Jobs e Steve 
Wozniak da Apple e Bill Gates da Microsoft dentre outros, as quais modificaram 
o ambiente corporativo e o mundo em geral.
Com o uso das telecomunicações para conectar os computadores, o 
aprimoramento dos sistemas e base de dados, o desenvolvimento de redes 
locais (LANs) de computadores, temos o surgimento do termo tecnologia da 
informação.
Agora temos o caminho aberto para uma demanda crescente por informação. 
Se, por um lado, isso encerrou diversos postos de trabalho, por outro, originou 
muitos outros com a exigência de uma mão de obra mais qualificada e melhor 
remunerada.
Contudo, naquela época ainda tínhamos sistemas e equipamentos proprietários, 
ou seja, um computador da IBM não conseguia trocar informações com um 
dispositivo da Xerox, por exemplo.
Por isso as empresas passaram a buscar um diferencial competitivo em relação 
à concorrência, desenvolver produtos e serviços mais eficazes e de melhor 
qualidade, tomar decisões mais rápidas e assertivas e reduzir seus custos de 
produção.
Imagine como era o processo para transferir o dinheiro de uma conta-corrente 
para outra do mesmo banco? Esse processo levava vários dias.
1.2.4 A era da integração
Na década de 1990, em parte graças aos esforços, nas décadas anteriores, 
de organismos de padronização, como a International Organization for 
Para conhecer a 
história de Steve Jobs, 
leia o artigo “A História 
de Steve Jobs, fundador 
da Apple”. Disponível 
em: <https://goo.
gl/1OzDOZ>. Acesso 
em: 7 ago. 2017.
ARTIGO
16
Standardization (ISO) e seu Modelode Referência para Interconexão 
de Sistemas Abertos (RM-OSI), ocorreu a integração de sistemas de 
desenvolvedores diversos e equipamentos de diferentes fabricantes de 
forma aberta.
A integração tecnológica promovida pelas redes de computadores facilitou 
o acesso e a troca das informações, permitindo à tecnologia da informação 
desempenhar um papel fundamental na estratégia de negócios das corporações 
em um cenário de mercados altamente competitivo.
Tudo isso levou as empresas a reestruturar seus modelos de negócios, uma 
vez que nesse mercado econômico globalizado, o concorrente pode estar em 
qualquer lugar do mundo, forçando as empresas a adotarem plataformas de 
e-commerce e sistema de cloud computing (computação em nuvem).
Para saber o que 
significa o modelo OSI, 
leia o artigo “Definição 
das sete camadas 
do modelo OSI e 
explicação de suas 
funções”. Disponível 
em: <https://goo.
gl/2yZDGI>. Acesso em: 
7 ago. 2017.
ARTIGO
Figura 1.8 – Cloud computing. No cloud computing, dados são armazenados na internet e 
podem ser acessados por diversos dispositivos, a qualquer hora e lugar.
17
Podemos dizer que a computação em nuvem se refere à aplicação de recursos 
computacionais envolvendo memória, capacidade de armazenamento de 
dados e processamento. Ela tem por base o princípio da Grid Computing, 
ou Computação em Grade, que é o modelo de computação que permite 
executar processos por meio de servidores distribuídos geograficamente, ou 
seja, um tipo de arquitetura de computação distribuída.
Cloud computing ou a computação em nuvem é um termo 
que entrou na moda quando falamos da tecnologia 
da informação. Para você, qual relação existe entre a 
computação na nuvem e a computação distribuída?
PARA PENSAR
1.3 Tipos de sistemas distribuídos
Até agora aprendemos sobre a evolução da computação e a definição 
dos sistemas distribuídos. Vamos, agora, saber mais sobre a classificação 
tradicional desses sistemas, discriminando os principais tipos adotados no 
mercado.
1.3.1 Sistemas de Computação Distribuídos
Uma das principais aplicações de sistemas distribuídos está relacionada às 
tarefas que exigem computação de alto desempenho, podendo ser divididas 
em dois subgrupos:
Computação 
de cluster
Computação 
em grade
18
Na computação de cluster, o hardware é composto por um conjunto de 
servidores adotando configuração semelhante, executando o mesmo sistema 
operacional, os quais são conectados por meio de uma rede local de alta 
velocidade. Um exemplo bem conhecido é o formado pelos clusters Beowulf 
com base em Linux, nos quais um único nó mestre controla e acessa um 
conjunto de nós de computação, os clusters. O mestre tem por tarefas típicas 
tratar a alocação de nós a um determinado programa paralelo, manter uma 
fila dos jobs (trabalhos em execução) e apresentar uma interface aos usuários 
do sistema. Também recebe o nome de sistemas homogêneos.
Nó. Dentro de um 
sistema distribuído, 
definimos nó como 
um ponto de conexão, 
podendo ser um terminal 
de comunicação ou 
mesmo um roteador.
GLOSSÁRIO
Fonte: TANENBAUM e VAN STEEN, 2007.
Figura 1.9 – Exemplo de sistema de computação em cluster.
Fonte: TANENBAUM e VAN STEEN, 2007.
Figura 1.10 – Arquitetura em camadas para sistemas de computação em grade. 
Na computação em grade, os sistemas distribuídos geralmente são montados 
como uma federação de computadores, na qual cada sistema pode cair sob 
um domínio administrativo diferente. Nesse domínio, podem ser empregados 
hardware, software e tecnologia de redes diferentes que recebem o nome 
de sistemas heterogêneos.
Aplicações
Camada coletiva
Camada base
Camada de conectividade Camada de recursoConheça mais sobre a 
computação em grade 
assistindo ao vídeo 
“The Grid”. Disponível 
em: <https://goo.gl/
xFrxdo> (em inglês com 
possibilidade de legenda 
em português). Acesso 
em: 7 ago. 2017.
VÍDEO
19
Middleware. Camada 
de software que possui 
como características 
a abstração e o 
mascaramento das 
diferenças entre 
hardware e os elementos 
de software.
GLOSSÁRIO
Nessa arquitetura, temos quatro camadas:
As aplicações são aquelas que operam dentro de um ambiente virtual e 
utilizam a computação em grade.
As camadas coletiva, de conectividade e de recursos formam o núcleo da 
chamada camada de middleware em grade.
Fonte – TANENBAUM e VAN STEEN, 2007.
Figura 1.11 – Middleware como facilitador de comunicação em integração 
de aplicações empresariais.
CAMADA-BASE
Fornece a interface para consulta 
do estado e das capacidades 
de um recurso.
CAMADA DE RECURSOS
Atua no gerenciamento 
de um único recurso.
CAMADA COLETIVA
Administra o acesso a múltiplos 
recursos e desempenha atividades para 
descoberta de recursos, alocação e 
escalonamento de tarefas para múltiplos 
recursos, replicação de dados, dentre 
outros.
CAMADA DE CONECTIVIDADE
São os protocolos de comunicação 
para garantir a troca de informações 
entre as transações da grade.
1.3.2 Sistemas de Informação Distribuídos
Esse tipo de sistema distribuído visa integrar as diversas transações 
relacionadas aos sistemas de informação existentes dentro de uma 
organização.
Conforme as aplicações foram se sofisticando e se separando em componentes 
de banco de dados e de processamento independentes, verificou-se que 
deveria ocorrer uma integração que permitisse às aplicações se comunicarem 
diretamente entre si. Como resultado, surgiu a Integração de Aplicações 
Empresariais (Enterprise Application Integration – EAI).
20
A figura 1.11 ilustra um Middleware de comunicação integrando a 
comunicação da aplicação cliente com seus respectivos bancos de dados em 
servidores distribuídos.
Do ponto de vista conceitual, temos os chamados sistemas distribuídos 
pervasivos, conforme definido por Tanenbaum e Van Steen (2007), também 
chamados de redes móveis e ubíquas, de acordo com Coulouris, Dollimore e 
Kindberg (2007). Nesses sistemas, os dispositivos costumam ser caracterizados 
pelo tamanho reduzido, pelo uso de bateria como fonte de alimentação, por 
serem móveis e por serem ubíquos, ou seja, estão presentes em todos os lugares, 
normalmente via conexão sem fio.
Quando falamos em sistema distribuído pervasivo, queremos dizer que os 
dispositivos estão espalhados no ambiente e precisam descobrir os sistemas 
e outros dispositivos em seu entorno. Normalmente procuram três requisitos 
(TANENBAUM e VAN STEEN, 2007):
1.3.3 Sistemas distribuídos pervasivos, redes 
móveis e ubíquas
Com a utilização crescente dos dispositivos móveis conectados via 3/4G 
ou WiFi, entre eles smartphones, tablets, notebooks, wearables, como os 
relógios inteligentes e a Internet das Coisas, surgiu a demanda por diversas 
aplicações que fazem uso de sistemas distribuídos, como o Facebook, Uber 
e outros.
Figura 1.12 – Relógio inteligente (smartwatch). Exemplo de wearable, com aplicações de 
sistemas distribuídos à mostra.
21
1.4 Internet
Podemos definir a Internet como um conjunto de redes de computadores 
de variadas topologias interligadas entre si, formando uma rede global. A 
Internet permite a o trabalho integrado de diversos programas executados em 
computadores espalhados pelo mundo. Para que haja a integração das atividades 
é necessário que ocorra a troca de mensagens, a qual deverá seguir uma regra 
comum que são os chamados protocolos de comunicação, por exemplo, em 
um jogo on-line, para que os comandos captados pelo teclado ou joystick sejam 
enviados ao servidor, deve-se usar um protocolo comum, neste caso o IP. 
Figura 1.13 – Rede global. A Internet interliga computadores e programas 
de todo o mundo, formando uma rede global.
ADOTAR MUDANÇAS CONTEXTUAIS
O dispositivo tem a capacidade de perceber alterações no 
ambiente computacional, por exemplo: identificar que uma rede 
sem fio não está mais disponível, pois o usuário saiu da área de 
cobertura. Em uma situação assim, a aplicação procura outra rede 
disponível ou adota outras medidas, como notificar o usuário.
INCENTIVAR COMPOSIÇÃO AD HOC
Dispositivosem sistemas pervasivos podem ser utilizados 
de modos distintos pelos usuários. Assim, dentro de um 
ambiente de sistema distribuído, a configuração das 
aplicações instaladas em um dispositivo deve ser fácil, 
automática e adequada ao perfil do usuário.
RECONHECER COMPARTILHAMENTO COMO 
PADRÃO
Sistemas pervasivos permitem o compartilhamento 
de dados, criando condições que facilitam, aos meios 
requeridos, realizar a leitura, o armazenamento, o 
gerenciamento e o compartilhamento da inrfomação.
22
1.5 Intranet
Já quando falamos da Intranet, estamos destacando a parte da Internet que é 
administrada de forma separada do ambiente público. Normalmente, ela está 
dentro de uma organização e, por questões de proteção das informações da 
empresa e seus usuários, seus limites são impostos por meio de planos de 
segurança definidos para a rede local da organização.
A Intranet é composta tipicamente por uma ou várias redes locais (LANs), 
interligadas entre si por meio de redes de dados sob responsabilidade das 
organizações que a administram. Para criação das Intranets, são necessários, 
além das redes:
1.6 Sistemas distribuídos e compartilhamento 
de recursos
Um dos impulsionadores dos sistemas distribuídos é o compartilhamento de 
recursos, visando reduzir os custos com novos equipamentos e sua manutenção.
Podemos considerar Internet como um sistema distribuído de grande porte, 
permitindo aos seus usuários utilizar vários serviços como, World Wide Web 
(www), e-mail e vídeo.
Servidor web
Sistema operacional de rede
Programas para criação das páginas com o conteúdo
23
Exemplos de compartilhamento de recursos:
 � Impressoras;
 � Sistema de busca na web;
 � Sistema de back up de dados;
 � Compartilhamento de arquivos.
Figura 1.14 – Sistemas distribuídos. Sistemas distribuídos permitem compartilhar recursos, 
como impressora e servidores de backup, de arquivos e de aplicações.
Switch. Elemento de rede 
usado para direcionar 
os dados de um 
computador de origem a 
outro de destino, dentro 
da rede local (LAN) de 
uma mesma organização.
GLOSSÁRIO
MINICASE
Uso das redes móveis na entrega de encomendas
A UPS foi fundada em 1907 e é uma empresa multinacional que atua na entrega de pacotes em mais 
de 220 países e territórios, no fornecimento de transporte especializado e serviços de logística. Ela 
atua em um segmento de mercado altamente competitivo e pulverizado entre milhares de empresas 
ao redor do mundo. Sendo um diferencial a entrega das encomendas com eficácia, sem danos, dentro 
do prazo acordado e preços competitivos.
24
Por volta do ano de 1993, eles entregavam cerca de 11,5 milhões de pacotes e documentos por dia dentro 
de um universo de um milhão de clientes. Com esse volume de entregas, a UPS desenvolveu uma 
nova tecnologia englobando dispositivos handhelds, veículos especialmente projetados para entrega 
de pacotes, computação global e sistemas de comunicação integrado, recebendo o nome de DIAD 
(Dispositivo de Aquisição de Informações de Entrega). O dispositivo era usado por todos os motoristas 
da UPS, registrava e fazia o upload de informações de entrega da rede UPS em tempo real. O destinatário 
assinava diretamente no terminal e a imagem digitalizada da assinatura era enviada para o sistema de 
controle, fornecendo aos clientes informações imediatas das remessas. Com esse dispositivo, o motorista 
ficava em contato constante com a central, permitindo a UPS planejar coletas, avaliar padrões de tráfego, 
localizar os caminhões de entrega e outras informações relevantes.
Adaptado de Histórico da Empresa UPS. Disponível em: <https://goo.gl/TuedT1>. Acesso em: 12 mar. 
2017.
Questões
1. Dos tipos de sistemas distribuídos tratados neste capítulo, qual se enquadra nesse 
estudo de caso?
2. Em sua opinião, quais são os elementos necessários para criar a estrutura para o 
registro das informações sobre as entregas, uma vez que a UPS atua em mais de 220 
países e territórios?
25
MAPA CONCEITUAL
26
EXPLORANDO SEU CONHECIMENTO
1. Descreva, com suas palavras, o que é sistema distribuído e o que motivou seu surgimento.
2. Quais são as diferenças entre computação de cluster e computação em grid?

Outros materiais