INTRODUÇÃO SISTEMAS DISTRIBUÍDOS Até meados dos anos 80 as máquinas eram grandes e caras; A maioria das empresas tinham equipamentos que operavam de forma independente por falta de uma forma confiável de interliga-los; A partir do final da década de 80 dois avanços tecnológicos mudaram o rumo da computação; 1. Desenvolvimento de microprocessadores cada vez mais rápidos, inicialmente de 8 bits depois de 16, 32 e hoje 64; 2. Desenvolvimento das redes locais LAN (Local Area Network), que permitiam ligações de duas ou até centenas de máquinas com uma taxa de 10 Mbps (Milhões de bits por segundo) 1
INTRODUÇÃO SISTEMAS DISTRIBUÍDOS A aplicação das tecnologias de redes com microprocessadores poderosos facilitou a construção de sistemas de computação composto por um grande número de processadores interligados através de redes de alta velocidade. Esses sistemas são denominados SISTEMAS DISTRIBUÍDOS; Os sistemas distribuídos diferenciam dos sistemas centralizados que são compostos por um único processador, memória, periféricos e terminais; Os sistemas distribuídos precisam de software diferentes dos que rodam em sistemas centralizados. 2
MOTIVAÇÕES VANTAGENS E DESVANTAGENS 1. Vantagens sobre os sistemas centralizados A maior motivação sem dúvida é a econômica. Com a tecnologia dos microprocessadores, com poucas centenas de dólares pode-se se comprar um microprocessador que executa mais instruções por segundo (velocidade maior) que os maiores mainframes da década de 80; Os sistemas distribuídos tem potencialmente melhor relação preço/performance do que os sistemas centralizados; Uma razão para construir sistemas distribuídos é o fato de muitas aplicações serem eminentemente distribuídas. A interligação de agências de um banco é um sistema bancário distribuído; 3
MOTIVAÇÕES VANTAGENS E DESVANTAGENS 1. Vantagens sobre os sistemas centralizados (continuação) Alta confiabilidade. Quando um tivermos a carga de trabalho dividida por varias máquinas, a falha de um processador vai derrubar no máximo uma única máquina,deixando o resto do sistema intacto; Crescimento incremental. O poder computacional pode ser crescer aos poucos conforme a necessidade, a um custo bem menor que a troca de uma Mainframe. 4
MOTIVAÇÕES VANTAGENS E DESVANTAGENS 2. Vantagens sobre os PCs Independentes 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 periféricos muito caros, tais como impressoras a lazer, robôs de fita, etc; Comunicação.Torna muito mais simples a comunicação pessoa a pessoa, por exemplo, empregando o correio eletrônico; Flexibilidade. Espalha a carga de trabalho por todas as máquinas disponíveis ao longo da rede. 5
MOTIVAÇÕES VANTAGENS E DESVANTAGENS 3. Desvantagens dos Sistemas Distribuídos Software. Está deixou de ser uma desvantagem nos dias de hoje, no momento já existe muita disponibilidade de software para sistemas distribuídos; Ligação em rede. A rede pode saturar. Teremos no investimento em equipamentos de conectividade. Está evolução tem que ter planejamento; Segurança. Dados podem ser acessados facilmente. Existem mecanismos de proteção que podem ser de custo muito elevado. 6
TOPOLOGIAS Forma pela qual o hardware dos sistemas distribuídos são conectados Computadores Paralelos e Computadores Distribuídos Multiprocessadores (memória Compartilahada) Multicomputadores (memória local Privada) Baseados em Barramento Comutados Baseados em Barramento Comutados Estações de trabalho ligadas em Rede Local 7
TOPOLOGIAS Conexões baseadas em Barramento Sistemas baseados em barramento, tem uma única rede, um backplane, um barramento, um cabo, ou qualquer outro meio que conecte todas as máquinas do sistema. Ex. TV a cabo. Conexões baseadas em comutação Os sistemas comutados não têm uma espinha dorsal única. Em vez disso existem interligações entre todas as máquinas, permitindo a modificação e variação da conexão. Ex. A rede de telefonia publica convencional. 8
MODELO CLIENTE-SERVIDOR O modelo que estrutura um S.O. como um grupo de processos cooperantes, chamados servidores, que oferecem serviços a processos usuários denominados clientes; Máquinas clientes e servidores usualmente funcionam em cima do mesmo kernel de S.O.; Este modelo permite uma máquina rodar um único processo, vários processos clientes, vários processos servidores ou uma mistura; Evita o overhead do modelo OSI, se baseando em um protocolo simples, sem conexão do tipo de solicitação/resposta; O cliente manda uma mensagem ao servidor solicitando um serviço (Ex. leitura de um arquivo). O servidor faz o trabalho e envia para o cliente os dados solicitados, ou código de erro 9 informando o motivo o qual o trabalho não foi realizado;