SISTEMAS DISTRIBUÍDOS



Documentos relacionados
Comparação SDs X Scs

Sistemas Operacionais

Profs. Deja e Andrei

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

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

REDES DE COMPUTADORES

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Arquitetura dos Sistemas de Informação Distribuídos

Sistemas Operacionais

Sistemas Operacionais

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

Sistema Operacional Correção - Exercício de Revisão

Sistemas Distribuídos

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos

Sistemas Distribuídos Aula 1 Introdução

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

Unidade 13: Paralelismo:

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas:

Sistemas Operacionais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

Introdução ao Modelos de Duas Camadas Cliente Servidor

Sistemas Distribuídos: Conceitos e Projeto Caracterização de Sistemas Distribuídos

Sistemas Operacionais

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Capítulo 8. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos

Evolução na Comunicação de

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Sistemas Distribuídos

Máquinas Multiníveis

Características Carlos Ferraz

Sistemas Distribuídos. Introdução

SISTEMAS OPERACIONAIS. Apostila 01 Assunto: Tipos de Sistemas Operacionais UNIBAN

Everson Scherrer Borges João Paulo de Brito Gonçalves

Sistemas Operacionais. Prof. André Y. Kusumoto

EVOLUÇÃO DOS SIST. DE COMPUTAÇÃO DÉC. DE 50 E 60

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

SISTEMAS DISTRIBUIDOS

Classificação de SO (Sistemas Operacionais) Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

Sistemas Operacionais

Sistemas Distribuídos

Sistemas Distribuídos

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Sistemas Distribuídos. Aleardo Manacero Jr.

1

Figura 01 Kernel de um Sistema Operacional

Metas de um Sistema Distribuído

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS. Aula 2- Aplicações distribuídas e TI VERDE

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

Estrutura, Processos e Threads

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas de Lotes (2) Sistemas de Lotes (3) Layout da MP em Sistemas de Lotes. Minimizar o tempo de resposta

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Fundamentos de Sistemas Computacionais Introdução

Tecnologia e Infraestrutura. Conceitos de Redes

ESTUDO DE CASO WINDOWS VISTA

SISTEMAS DISTRIBUÍDOS

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 02 - Estrutura dos Sistemas Operacionais. Cursos de Computação

4 Estrutura do Sistema Operacional Kernel

Ministério da Educação Secretaria de Educação Profissional e Tecnológica Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Sistemas Operacionais Introdução. Professora: Michelle Nery

Noções básicas de Informática: Software

SISTEMAS OPERACIONAIS

SIS17-Arquitetura de Computadores

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Fundamentos de Sistemas Operacionais

Arquitetura e Organização de Computadores

IW10. Rev.: 02. Especificações Técnicas

Arquitetura NUMA 1. Daniel de Angelis Cordeiro. INRIA MOAIS project Laboratoire d Informatique de Grenoble Université de Grenoble, França

} Monolíticas Aplicações em um computador centralizado. } Em Rede Aplicações com comunicação em rede. } Distribuídas Comunicação e cooperação em rede

Sistemas Distribuídos

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1)

Sistemas Distribuídos

Sistemas Distribuídos

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

05/08/2013. Sistemas Distribuídos Cluster. Sistemas Distribuídos Cluster. Agenda. Introdução

Padrões Arquiteturais e de Integração - Parte 1

Infra-Estrutura de Software. Introdução. (cont.)

EAGLE TECNOLOGIA E DESIGN CRIAÇÃO DE SERVIDOR CLONE APCEF/RS

Meio Físico. Mensagem. Protocolo. Emissor e Receptor. Data Terminal Equipment Data Communications Equipment

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

SISTEMA GERENCIADOR DE BANCO DE DADOS

Itinerários de Ônibus Relatório Final

Sistemas Operacionais. Conceitos de um Sistema Operacional

Redes de Computadores

Informática I. Aula 5. Aula 5-13/05/2006 1

Transcrição:

SISTEMAS DISTRIBUÍDOS 1. Histórico Primeiros computadores Computadores dos anos 50 e 60 Primeiros computadores com sistemas operacionais Surgimento das redes de computadores Nos anos 70 início das pesquisas em sistemas distribuídos 2. 2.1 Definição Segundo A. Tanenbau [1995], um sistema distribuído é uma coleção de computadores independentes que parecem ao usuário como um único computador. A definição anterior implica em hardware formado por máquinas autônomas e software fornecendo a abstração de uma única máquina. 2.2 Vantagens Ecônomica: aproveita maquinas potencialmente ociosas; mais barrato ter vários procesadores interconectados do ter um supercomputador; Velocidade: a capacidade de interconectar processadores possibilita que se obtenha performances que apenas um sistema composto é capaz de atingir; Distribuição inerente: algumas distribuíções sào distribuídas por natureza. Ex.: aplicaçào para uma cadeia de supermercados, algusn tipos de jogos, etc.; Tolerância a falhas: quando uma máquina falha, o sistema como um todo pode continuar funcionando, apenas apresentando um diminuição no seu desempenho. Crescimento Incrmental: pode se aumentar o poder computacional através da inclusão de novos equipamentos. Flexibilidade: os sitemas distribuídos sào amis flexiveis do que maquinas isoladas, por essa razão são muitas vezes utilizados até mesmo sem a necessidade de maior desempenho. Esta flexibilidade permite que vários usuários compartilhem dados e periféricos. 1

2.3 Desvantagens Poucos softwares de auto nível disponíveis para sistemas distribuídos Dificuldades para evitar acesso indevido questões de segurança A rede de interconexão pode causar problemas ou não dar a vazão exigida pela demenada. 3. Projeto de Sistemas distribuídos Questões TRANSPARÊNCIA De localização: para os usuários não sabem onde os recursos estão localizados. De migração: os recursos podem se mover sem alterar seus nomes. De replicação: os usuários podem se mover sem alterar seus nomes. De concorrência: múltiplos usuários podem compartilhar um recurso automaticamente. De Paralelismo: atividades podem ocorrer em paralelo sem que o usuário saiba. FLEXIBILIDADE Atualmente a construção de S.O. Distribuídos é baseada em microkernel, em oposição a sistemas monolíticos com mais performance, porém menos flexibilidade. Microkernel implementa poucas funções, fornecendo a principio quatro serviços básicos: mecanismo de comunicação de processos; algum tipo de gerência de memória; um pequena parte do escalonamento e gerência de baixo nível de processos; entrada e saída de baixo nível; Outros serviços (file system, full process management, etc.) são providos por serviços em nível de usuário. CONFIABILIDADE Os S.O Distribuídos devem possuir a capidade, pelo menos em tese, de que ao parar de funcionar uma maquina outra maquina deve assumir os serviços realizados pela mesma. Na prática, 2

existem alguns servidores, em diferentes máquinas, que precisam estar no ar para que o sistema como um todo funcione. Alguns aspectos relacionados a confiabilidade devem ser levados em conideração, os mesmos são mostrados a seguir: Disponibilidade (availability): refere se a fração de tempo em que o sistema está funcionando, com isso, pode se melhorar a disponibilidade atavés de um projeto que não exiga o funcionamento simultâneo de um número substancial de componentes críticos; ou através de redundância, isto é, componentes chaves de hardware e software devem ser replicados, de modo que se um deles falhar, os outros estarão aptos a tomar conta da tarefa. Tolerância a Falhas: Quando um dos servidores falhas? Os sistemas distribuídos são projetados com a capacidade de mascarar falhas, isto é, não permitem que o usuário perceba o que está acontecendo. Um exemplo clássico é o de serviço de arquivos, que pode ser construído com um grupo de servidores cooperantes, de tal forma que o usuário não perceba a falta de um ou mais servidores, apenas "estranhe" o desempenho. DESEMPENHO Os itens apresentados anteriromente não devem ser atingidos se sacrificarmosos o desempenho. Um exemplo é: se uma aplicação é executa em sistema distribuído, ela não pode ser executado em qualidade menor em um um sistema com um único processador. Métricas de desempenho Tempo de resposta Throughput (tarefas / tempo) Utilização do sistema Quantidade consumida da capacidade da rede ESCALABILIDADE (Scalability) Os sistemas distribuídos precisariam se adaptar a possibilidade de se ter ambientes com milhares de processadores. Para isso deve se evitar: 3

1. Componentes centralizados 2. Tabelas centralizadas 3. Algoritimos centralizados Para ambientes distribuídos deve se usar algoritmos descentralizados que possuam as seguintes caracterísiticas: Nenhuma maquina deve centralizar informações sobre o estado do sistema As maquinas devem tomar decisões baseadas apenas nas informações disponíveis localmente Se uma das máquinas falhar não irá impedir o funcionamento do algortimo Não há suposições implicitas que exista um relógio global 4. Hardware Os sistemas distribuídos são constituidos de várias CPUs interconectadas, porém há várias formas que o hardware pode ser organizado. Há algumas classificões existentes, há uma muito utilizada pois leva em considerando o número de fluxo de instruções e o número de fluxo de dados, a seguir é mostrada esta classificação. SISD Single Instruction Single Data fluxo de instruções e dados único é a característica dos uniprocessadores tradicionais; MIND Multiple Instructions Multiple Dados caracteriza se por vários processadores intercnectados. Tanembau [1995] apresenta uma classificação, onde os dois primeiros são definidos em relação a organização da memória e os últimos em relação a forma de interconexão: Multiprocessador maquinas MIND com memória compartilhada (um único espaço de endereçamento virtual compartilhado por todas as CPUs); Multicomputador maquinas que não possuem memória compartilhada, isto é, cada processador possui sua memória privada. Barramento um único cabo, rede, barramento ou outro meio que conecte todas as máquinas. Switch existem cabos individuais conectando maquina a maquina, com vários padrões possíveis. 4

Há um a outra forma muito usada de classificação que é: Fortemente acoplado (Tighly coupled): comunicação rápida entre processadores (grande número de bitis por segundo. Fortemente Acoplado ( loosely Coupled): atraso na troca de mensagens entre as máquinas é muito alto. 5. Questões de Software Após o surgimento de novas arquitetura de computadores, novas demandas de software apareceram, principlamente, novas funções exigidas pelos sistemas operacionais. Considera se uma boa classificaçãoda para a evolução dos sistemas operacioanis a tabela a seguir apresentada por Tanembau [1995]. Geração Sistema Caracterísitcas Obejtivos 1a S.O. Centralizado Gerenciamento de processos Gerenciamento de recursos 2a. S.O. De Rede Gerenciamento de memória Gerenciamento de E/S Gerenciamento de arquivos Acesso remoto (network operating system) Troca de Informações navegação na rede 3a. S.O. Distribuído Visão global do sistema de arquivos, 4a. Sistema Cooperativo Autônomo Espaços de nomes, Tempo, segurança Poder computacional Aplicaçòes distribuídas Abertas e cooperativas Tabela 1 Classificação dos S.O. Modernos Maquina estendida virtual Compartilhamento recursos Interoperabilidade Visão de computador de Único em sistemas múltiplos computadores Transparência Trabalho cooperativo Autonomia A classificação de sistemas operacionais apresentadas acima também são apresentadas em tanembau [1995] e outros. Temos como execeção o último tipo que pode ou não ser considerado como um sistema operacional. Entre as diversas gerações dos S.O. Existe uma diferença com relação ao 5

acoplamento. Por nível de acoplamento (coupling) considera se a medida de quão centralizado ou descentralizado o sistema pode ser. 6. Bibliografia Básica deste Capítulo Silberchatz, Abraham. Operation System Concepts. 5 eth Addison Wesley. November 1998. Tanembau, Andrew S.. Sistemas Operacionais Modernos. Editora Printce Hall do Brasil. 1995. 6