Sistemas distribuídos
Por: Brenner Vaz • 10/4/2015 • Monografia • 7.511 Palavras (31 Páginas) • 126 Visualizações
Universidade Paulista - UNIP
Flamboyant
Ciência da Computação
Sistemas Distribuídos |
Brenner Duarte Vaz
Goiânia
2015
Brenner Duarte Vaz
Sistemas Distribuídos |
Monografia apresentada como exigência para obtenção do grau de Bacharelado em Ciência da Computação da Universidade Paulista - UNIP. |
Orientador: Nelson Batista |
Goiânia
2015
RESUMO
Os sistemas distribuídos são amplamente utilizados em diferentes soluções e aplicações nos dias atuais, mas não há um sistema operacional distribuído, ou seja, ainda não se criou um sistema específico com tal finalidade, muito embora exista estudos e algumas organizações importantes envolvidas neste processo. Este trabalho descreve o que é um sistema distribuído, quais os seus elementos, suas camadas e suas aplicações como também trás exemplos de implementação e o quais comparações foram feitas utilizando as características de um sistema distribuído para decisão de construção de software com determinada arquitetura.
Palavras-chave: Sistemas distribuídos
ABSTRACT
Distributed systems are widely used in different applications and solutions today, but there is not a distributed operating system, or have not yet created a system with such specific purpose, even though there are some important studies and organizations involved in this process. This paper describes what is a distributed system, which its elements, its layers and its applications as well as implementation examples and behind which the comparisons were made using the characteristics of a distributed decision for construction of software architecture given system.
Keywords: Distributed systems
SUMÁRIO
1 INTRODUÇÃO
2 PRINCÍPIOS E PARADIGMAS
2.1 Arquiteturas
2.2 Processos
2.3 Comunicação
2.4 Sincronização
2.5 Consistência e replicação
2.6 Tolerância a falha
2.7 Segurança
3 CONCLUSÃO
REFERÊNCIAS
1 INTRODUÇÃO
A organização de sistemas distribuídos trata, em grande parte, dos componentes de software que constituem o sistema. De acordo com TANENBAUM (2007), "um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente". Essas arquiteturas de software nos dizem como os vários componentes de software devem ser organizados e como devem interagir. A realização efetiva de um sistema distribuído implica que especifiquemos e coloquemos componentes de software em máquinas reais, DEITEL (2005) trata do assunto escalabilidade de uma forma simples e intuitiva, “escalabilidade permite que um sistema distribuído cresça (adicione mais máquinas ao sistema) sem afetar as aplicações e os usuários existentes”. Para fazer isso, há diferentes opções. A especificação final de uma arquitetura de software é também denominada arquitetura de sistema.
Também pode se conseguir a adaptabilidade em sistemas distribuídos fazendo o sistema monitorar seu próprio comportamento e tomar as providências adequadas quando necessário. Esse modo de ver as coisas resultou em uma classe que agora denominada sistemas autonômicos. Esses sistemas distribuídos são frequentemente organizados sob a forma de realimentações de contato que formam um importante elemento arquitetônico durante o projeto de um sistema. O estilo arquitetônico é formulado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre componentes e, por fim, da maneira como esses elementos são configurados em conjunto para formar um sistema. Um componente é uma unidade modular com interfaces requeridas e fornecidas bem definidas que é substituível dentro de seu ambiente.
Sistemas distribuídos é segundo GOSCINSKI (1991), "um termo que descreve uma ampla gama de computadores, desde sistemas fracamente acoplados como redes de longa distância, a sistemas fortemente acoplados como as LANs, e até sistemas muito fortemente acoplados como sistemas multiprocessados."
2 PRINCÍPIOS E PARADIGMAS
2.1 Arquiteturas
A organização de sistemas distribuídos trata, em grande parte, dos componentes de software que constituem o sistema. De acordo com TANENBAUM (2007), "recursos de diferentes organizações são reunidos para permitir a colaboração de um grupo de pessoas ou instituições". As arquiteturas de software nos dizem como os vários componentes de software devem ser organizados e como devem interagir. A realização efetiva de um sistema distribuído implica que especifiquemos e coloquemos componentes de software em máquinas reais, sem que deixem de ser transparentes ao usuário, definindo transparência, LAMPORT (1978) diz que "o usuário só descobre que está usando um sistema distribuído quando alguma falha impede de usar alguma aplicação". Para fazer isso, há diferentes opções. A especificação final de uma arquitetura de software é também denominada arquitetura de sistema.
Também pode se conseguir a adaptabilidade em sistemas distribuídos fazendo o sistema monitorar seu próprio comportamento e tomar as providências adequadas quando necessário. Esse modo de ver as coisas resultou em uma classe que agora denominada sistemas autonômicos. Esses sistemas distribuídos são frequentemente organizados sob a forma de realimentações de contato que formam um importante elemento arquitetônico durante o projeto de um sistema. O estilo arquitetônico é formulado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre componentes e, por fim, da maneira como esses elementos são configurados em conjunto para formar um sistema. Um componente é uma unidade modular com interfaces requeridas e fornecidas bem definidas que é substituível dentro de seu ambiente.
...