SISTEMAS DISTRIBUÍDOS

Documentos relacionados
Conceitos de Sistemas Distribuídos

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos

Introdução aos Sistemas Distribuídos

Sistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA:

Sistemas Distribuídos

Sistemas distribuídos. Prof. Emiliano Monteiro

Sistemas Distribuídos

Sistemas Distribuídos

Sistemas Distribuídos

Computação Distribuída

SIST706 Sistemas Distribuídos

Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Sistemas Distribuídos

Sistemas Operacionais Distribuídos

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes.

Desenvolvimento de Aplicações Distribuídas

Quando Distribuir é bom

Sistema de Software Distribuído

Sistemas Distribuídos

1- Confiabilidade ( 2 ) Proteção contra perdas e estragos. 2- Integridade ( 3 ) Proteção contra interferência de cortes de funcionamento

Programação Paralela e Distribuída

Sistemas Distribuídos. Edy Hayashida

Arquitectura de Sistemas Paralelos e Distribuídos Modelos de Sistemas

Arquitetura de sistemas distribuídos

1.3 Noções básicas de sistemas operacionais. Lêda Monteiro

Sistemas Distribuídos

O que é um sistema distribuído?

Caracterização de Sistemas Distribuídos

Sistemas Distribuídos

Aplicações com Banco de Dados e Cliente-Servidor

Sistemas Distribuídos Aspectos de Projeto de SD. Aspectos de Projeto em SD. Transparência 14/03/12. ! Transparência; ! Abertura; !

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS. Aula 1- Introdução aos Sistemas Distribuídos

INTRODUÇÃO AOS SISTEMAS DISTRIBUÍDOS. Prof. Cesar Augusto Tacla

Desenvolvimento de Aplicações Distribuídas

Processos ca 3 pítulo

Programação Concorrente

Sistemas Distribuidos. Prof. Walter Gima

Sistemas Operacionais. Introdução

Sistemas Distribuídos

Prof. Gregorio Perez 2007

TÓPICOS EM COMPUTAÇÃO APLICADA

Sumário. 1 Caracterização de Sistemas Distribuídos 1. 2 Modelos de Sistema Redes de Computadores e Interligação em Rede 81

Sistemas Distribuídos

Redes de Comunicação de Dados

Sistemas Distribuídos

Redes de Computadores

Sistemas de arquivos distribuídos. ECO036 - Sistemas Paralelos e Distribuídos

Curso: Redes de Computadores

Introdução à Ciência da Computação

SISTEMAS OPERACIONAIS

SISTEMAS DISTRIBUÍDOS

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior

Tipos de Sistemas Distribuídos

O que é? É uma aplicação que consiste em 2 ou mais processos que executam em diferentes processadores que não partilham memória.

Arquitetura de Computadores Paralelos. Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela

Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30

Programação Distribuída. Metas de um Sistema Distribuído

Projeto de Sistemas Distribuídos. Considerações

Introdução à Programação Aula 01. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Arquitetura de Computadores. Processamento Paralelo

Introdução a Sistemas Distribuídos

AULA 06: PROGRAMAÇÃO EM MÁQUINAS PARALELAS

Arquitetura de sistemas distribuídos

Sistemas Distribuídos

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

Curso de Sistemas Distribuídos

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos

STD29006 Sistemas Distribuídos

Roteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens

Transcrição:

SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Introdução aos Sistemas Distribuídos 1 Sumário Evolução Problema/Contexto O que é um Sistema Distribuído? Vantagens e Desvantagens dos SDs Projeto de Sistemas Distribuídos Aspectos Tecnológicos Exemplos e Aplicações Prof. Carlos Paes 2

Evolução de sistemas distribuídos A partir da disponibilização de redes locais de computadores de alta velocidade (1970-1990) computação cliente/servidor Recentemente, a grande disponibilidade de computadores pessoais, estações de trabalho, PDAs e servidores com alto poder de processamento resultou em uma mudança em direção de sistemas descentralizados Prof. Carlos Paes 3 Problema/Contexto Como aumentar a velocidade da Computação? Solução 1: aumentar a velocidade da CPU (deixar o relógio pulsar mais rápido) Solução 2: aumentar o número de processadores As soluções apresentadas são viáveis? Até que ponto? Prof. Carlos Paes 4

Definição A definição varia entre autores, muitas vezes é mais uma idéia do que uma definição Rede de computadores: infra-estrutura servindo um conjunto de computadores interconectados através links de comunicação de topologias e mídias diversas Sistema distribuído:composto de vários computadores se comunicando através de uma rede de computadores, onde computadores abrigam conjuntos de processos que se comunicam através de um conjunto de protocolos distribuídos para assistir a execução coerente das atividades distribuídas. Prof. Carlos Paes 5 Definição Um sistema distribuído consiste de uma coleção de computadores autônomos ligados por uma rede de computadores e equipados com software de sistema distribuído Redes de computadores: explícito Sistema distribuído: implícito Prof. Carlos Paes 6

Definição Software distribuído: coordena atividades e compartilha os recursos (hardware, software e dados) Usuários percebem somente um computador simples e integrado, embora possa ser implementado por muitos computadores e em diferentes localidades Prof. Carlos Paes 7 Definição Andrew Tanenbaum: Um Sistema Distribuído é uma coleção de computadores independentes que parecem ao usuário ser um computador único. Dois aspectos na definição do Tanenbaum: hardware e software Hardware: computadores independentes Software: ilusão de um único computador Prof. Carlos Paes 8

Definição Considerando a existência de vários processadores, temos... Multiprocessador: compartilhamento de recursos físicos, tal como memória principal, disco e relógio, tightly-coupled Multicomputador:computadores com seu hardware básico independente, closely-coupled backplane, rede de comunicação de alta velocidade ex.: agregados de computadores (clusters, PAD) Prof. Carlos Paes 9 Definição A. Silberschatz: um sistema distribuído é uma coleção de processadores que não compartilham memória e relógio. A definição anterior implica em hardware formado por máquinas autônomas e software fornecendo a abstração de uma única máquina Prof. Carlos Paes 10

Vantagens dos Sistemas Distribuídos Econômica Compartilhamento de Recursos BD distribuído Compartilhar arquivos Imprimir em locais remotos Usar hardware especializado remoto (ex: processador vetorial de alta velocidade) Prof. Carlos Paes 11 Vantagens dos Sistemas Distribuídos Velocidade de Computação Confiabilidade e Tolerância a Falhas Escalabilidade Comunicação Prof. Carlos Paes 12

Desvantagens dos Sistemas Distribuídos Disponibilidade de Software (???) Questões de segurança Atrasos de comunicação (rede) significativos e incertos, loosely-coupled probabilidade independente de falha Comunicação é não-confiável, com atrasos variáveis Velocidade e banda moderadas Prof. Carlos Paes 13 Desvantagens dos Sistemas Distribuídos Dificuldade em determinar a ordem de ocorrência de eventos e computar estado global Um máquina se comunica com a outra apenas através de troca de mensagens Pode não ser possível determinar o estado global do sistema Algoritmos Distribuídos Prof. Carlos Paes 14

Questões de Projeto Transparência Localização: os usuário não devem saber onde os recursos se encontram Migração: os recursos podem trocar de lugar à vontade sem ter que mudar de nome Replicação: os usuários não devem saber quantas cópias existem Concorrência: vários usuários podem compartilhar automaticamente os recursos Paralelismo: podem ocorrer atividades paralelas sem que os usuários venham a conhecer Prof. Carlos Paes 15 Questões de Projeto Flexibilidade Confiabilidade Disponibilidade Tolerância a falhas Performance Escalabilidade Evitar: componentes, tabelas e algoritmos centralizados Prof. Carlos Paes 16

Questões de Projeto Heterogeneidade SDs modernos são inerentemente heterogêneos Redes (protocolos) Hardware computacional Sistemas operacionais Linguagens de programação Middleware: termo que descreve de forma genérica a camada de software que fornece uma abstração de programação que mascara a heterogeneidade da rede, sistema operacional ou linguagens de programação usadas( ex CORBA (várias plataformas) e Java RMI (limitado a Java) Prof. Carlos Paes 17 Aspectos Tecnológicos Redes Tecnologia: ethernet, token ring, ATM, FDDI Protocolos: TCP, UDP, IP, FLIP Comunicação entre processos Sockets, RPC, RMI, COM/DCOM Nomeação DNS, URL, JNDI Prof. Carlos Paes 18

Aspectos Tecnológicos Transações Controle de concorrência, atomicidade, tolerância a falhas Sistemas Operacionais Distribuídos Mach, Chorus, Amoeba Prof. Carlos Paes 19 Exemplos e Aplicações UNIX Extensões foram feitas ao Unix básico, com o objetivo de explorar os recursos de vários computadores interconectados, com o objetivo de fornecer um aumento de facilidade e performance Interprocess communication: 4BSD (UC- Berkeley 1978) Prof. Carlos Paes 20

Exemplos e Aplicações Unix Sun Microsystems: desenvolvou o Network file system (NFS) a partir do BSD Unix Remote Procedure Call (RPC) Network Information Service (NIS) Facilidades de NFS estão disponíveis atualmente para diferentes implementações de Unix (incluindo Linux) Prof. Carlos Paes 21 Exemplos e Aplicações Aplicações comerciais para SD Reserva de passagens aéreas, automação bancária,controle de estoque,... Requisitos: performance, confiabilidade, disponibilidade, segurança Prof. Carlos Paes 22

Exemplos e Aplicações Aplicações comerciais para SD (continuação) Estrutura típica para uma rede de caixas automáticos de bancos Prof. Carlos Paes 23 Exemplos e Aplicações Internet Sistemas Multimídia Distribuídos Computação Móvel Dimensões reduzidas de computadores atuais Computadores laptop Computadores de mão (personal digital assistants, telefones móveis, câmeras digitais) Redes sem fio Padrão Wi-Fi: IEEE 802.11 Bluetooth GPS: Global Positioning System Computação sensível à localização física Prof. Carlos Paes 24