SIST706 Sistemas Distribuídos

Documentos relacionados
Conceitos de Sistemas Distribuídos

SISTEMAS DISTRIBUÍDOS

Sistemas Distribuídos

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS

Sistemas Distribuídos

Sistemas distribuídos. Prof. Emiliano Monteiro

Sistemas Distribuídos

Sistemas Distribuídos

Sistemas Distribuídos

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

Aula 1 Conceitos Básicos

Programação Concorrente

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

Programação Paralela e Distribuída

Caracterização de Sistemas Distribuídos

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

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

O que é um sistema distribuído?

SISTEMAS DISTRIBUÍDOS

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

DESENVOLVIMENTO DE SISTEMAS DISTRIBUIDOS. Prof. Marcelo de Sá Barbosa

Curso: Redes de Computadores

FUNDAMENTOS DE REDES DE COMPUTADORES AULA 2: MODELO OSI. Professor: LUIZ LEÃO

Arquitetura de sistemas distribuídos

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

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos

Sistemas Distribuídos

Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5

Técnico em Radiologia. Prof.: Edson Wanderley

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

SISTEMAS DISTRIBUÍDOS

Arquitectura de Sistemas Paralelos e Distribuídos Modelos de Sistemas

Arquitetura e Objetos Distribuídos em CORBA. Aula 3. Especificações OMA Object Web

de petróleo. Um novo domínio chamado computação de propósito geral em processadores gráficos (GPGPU) surgiu quando os pipelines de gráficos de

Introdução (hardware) INTRODUÇÃO Hardware. Introdução (hardware) Introdução (hardware) Introdução (hardware) Introdução (hardware)

SISTEMAS DISTRIBUIDOS

Sistemas Distribuídos

Conceito Básicos de Programação com Objetos Distribuídos. Programação com Objetos Distribuídos (C. Geyer) Conceitos de POD 1

speedup aprimorado aprimorado Fração aprimorada speedup aprimorado Fração aprimorada speedup aprimorado Tempo original Fração aprimorada aprimorado

SISTEMAS DISTRIBUIDOS

Fundamentos de Sistemas Operacionais de Arquitetura Aberta. CST em Redes de Computadores

Técnicas Avançadas de Programação

Objetos e Componentes Distribuídos: EJB

Cliente-servidor Código móvel Agentes de software Processos pares. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR

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

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Programação concorrente (processos e threads)

Sistemas Operacionais Distribuídos

Introdução aos Sistemas Operativos

PROGRAMA DE DISCIPLINA

Infra Estrutura Hardware e Software

Tipos de Sistemas Operacionais. Professores : Jones - Wendell

Informática UFRGS. Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1

Camada de Aplicação da Arquitetura TCP/IP

Arquitetura de Computadores Sistemas Operacionais II

Curso de Sistemas Distribuídos

Sistemas Multiprogramáveis/Multitarefa

30/5/2011. Sistemas computacionais para processamento paralelo e distribuído

Máquinas mais rápidas do mundo

Introdução à Programação Paralela através de Padrões. Denise Stringhini Calebe Bianchini Luciano Silva

Grupo de Usuários Java do Noroeste Paulista. Introdução à tecnologia Java

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)


Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware.

PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register

Web Services. (Introdução)

Breve Introdução aos Sistemas Operativos. Disciplina de Informática PEUS, U.Porto

Fundamentos de Sistemas Operacionais

Cursos da Escola de Engenharias e Ciências Exatas - UnP

Arquitetura de sistemas distribuídos

Gerência de Redes Visão Geral

Sistemas Operacionais Aula 3

Engenharia de software distribuído. Artur Sampaio Lívia Castro Degrossi

O uso consciente da tecnologia para o gerenciamento. Editora Saraiva Emerson de Oliveira Batista

Supercomputador Pleiades

Fundamentos de Sistemas Operacionais

Analista de Sistemas Ambiente GRID para física experimental de altas energias

SO: SISTEMAS OPERACIONAIS Curso: Sistemas de Informação

Sistemas Distribuídos

Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.

Modelos de Arquiteturas. Prof. Andrêza Leite

Sistemas Distribuídos Capítulo 3 - Aula 3

Sistemas Operacionais: O quê? Por quê? Quando?

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

Funcionalidade e Protocolos da Camada de Aplicação

Chamadas de Sistema (SYSCALL)

Introdução à Informática

Intel Xeon Phi. Abilio. Funcionamento. Modelo de. Abilio. Linguagens Suportadas. Exemplos de Produtos no Mercado. 13 de agosto de / 22

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Sumário. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

Evolução de Sistemas Operacionais. Evolução ao longo da História da Computação!! UNIX: Um breve apanhado de sua evolução!!!

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Capítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

Aula 1: A Evolução dos Sistemas Computacionais

Transcrição:

Slide01 Introdução e Conceitos de Sistemas Distribuídos SIST706 Sistemas Distribuídos 2013/1 Prof. Jéfer Benedett Dörr @: prof.jefer@gmail.com profjefer.wordpress.com

Sistema Distribuído Definição de Andrew Tanenbaum é uma "coleção de computadores independentes que se apresenta ao usuário como um sistema único e consistente" Definição de George Coulouris diz que "Sistema Distribuído é uma coleção de computadores autônomos interligados através de uma rede de computadores e equipados com software que permita o compartilhamento dos recursos do sistema: hardware, software e dados"

Definição curiosa Você sabe que existe um sistema distribuído quando a falha de um computador que você nunca ouviu falar impede que você faça qualquer trabalho - Leslie Lamport

Exemplos Banco e agências Internet Computação Móvel e Ubíqua Top 500 supercomputadores P2P Napster

Sistemas multiusuários centralizados Mainframes Alto custo Baixa flexibilidade Baixa escalabilidade Baixa tolerância a falhas

Linux Terminal Server Project (LTSP) (LTSP) é um projeto baseado em GNU/Linux que agrupa várias ferramentas e protocolos, com a finalidade de proporcionar um ambiente de trabalho remoto.

Multiterminal

Multiterminal

Cluster Um cluster, ou aglomerado de computadores, é formado por um conjunto de computadores, que utiliza um tipo especial de sistema operacional classificado como sistema distribuído. Muitas vezes é construído a partir de computadores convencionais (personal computers), os quais são ligados em rede e comunicam-se através do sistema, trabalhando como se fossem uma única máquina de grande porte. Há diversos tipos de cluster. Um tipo famoso é o cluster da classe Beowulf, constituído por diversos nós escravos gerenciados por um só computador.

Cluster * Cluster Knoppix * SO local *Avatar: Cluster de renderização 40.000 CPUS Top200 Supercomputadores Ubuntu

Cluster Específico

GRID Heterogeneidade Recursos de diferentes organizações são reunidos para permitir a colaboração de um grupo de pessoas ou instituições PlanetLab: http://www.planet-lab.org

NUMA

NUMA

Processadores *Mais núcleos ou núcleos mais rápidos? *Existe uma vantagem real em ter um processador com vários núcleos? *Hyper-threading: um núcleo real, dois núcleos lógicos *Muitos núcleos gastam menos ou mais energia? * I7 Lynnfield serie 8XX (HT) * Nvidia Tegra 3 (Quad-Core com um quinto núcleo para economia de bateria)

Multiprogramação Processo X Thread P0, P1, P2...

Programação Distribuída CORBA (abreviado de Common Object Request Broker Architecture) é a arquitetura padrão criada pelo Object Management Group para estabelecer e simplificar a troca de dados entre sistemas distribuídos heterogêneos. Message Passing Interface (MPI) é um padrão para comunicação de dados em computação paralela. Existem várias modalidades de computação paralela, e dependendo do problema que se está tentando resolver, pode ser necessário passar informações entre os vários processadores ou nodos de um cluster, e o MPI oferece uma infraestrutura para essa tarefa. O OpenMP (do inglês Open Multi-Processing, ou Multi-processamento aberto) é uma interface de programação de aplicativo(api) para a programação multiprocesso dememória compartilhada em múltiplas plataformas. Permite acrescentar simultaneidade aos programas escritos em C, C++ e Fortran sobre a base do modelo de execução fork-join.

Programação Distribuída Chamada remota de procedimento (RPC, acrônimo de Remote Procedure Call) é uma tecnologia de comunicação entre processos que permite a um programa de computadorchamar um procedimento em outro espaço de endereçamento (geralmente em outro computador, conectado por uma rede) O RMI (Remote Method Invocation) é uma interface de programação que permite a execução de chamadas remotas no estilo RPC em aplicações desenvolvidas em Java. É uma das abordagens da plataforma Java para prover as funcionalidades de uma plataforma de objetos distribuídos. O XML-RPC é um protocolo de chamada de procedimento remoto (CPR) que utiliza XML para codificar suas chamadas e HTTP como um mecanismo de transporte.

Network File System - NFS NFS é um sistema de arquivos distribuído que permite aos usuários acessar arquivos e diretórios localizados em computadores remotos e tratá-los como se fossem locais. O protocolo Network File System é especificado nas seguintes RFCs: RFC 1094, RFC 1813 e RFC 3530.

Heterogeneidade Computação Ubíqua ou pervasiva: termo usado para descrever a onipresença da informática no cotidiano das pessoas.

Sistemas distribuídos não são redes A computação distribuída não é o mesmo que redes de comunicação: As redes preocupam-se com o envio de mensagens de um ponto A para outro B e não com o que se faz com a mensagem A computação distribuída assume que existe alguma forma de enviar a mensagem (o transporte da mensagem é assegurado pela rede de comunicação) preocupa-se com as propriedades dessas mensagens e como construir um sistema com o uso de mensagens

Evento da Área http://sbrc2013.unb.br/ O Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos (SBRC) é um evento anual promovido pela Sociedade Brasileira de Computação (SBC) e pelo Laboratório Nacional de Redes de Computadores (LARC). Ao longo dos anos, o SBRC tornouse o mais importante evento científico nacional em redes de computadores e sistemas distribuídos do país, e um dos mais concorridos em Informática.

Bibliografia

Exercício 1. O que é um Sistema distribuído? Cite um exemplo diferente dos apresentados no slide. Cite outro exemplo que SD do dia a dia. 2. Quais os principais objetivos de "distribuir um sistema? 3. Quais diferenças entre Mainframe e LTSP? 4. Qual motivo de os atuais processadores terem mais de um núcles em um única pastilha? Em que situação tem vantagem ter 2 núcleos de 1.2 MHz no lugar de um de 2.4 MHz? O inverso pode ser verdade? 5. Para que serve o NFS? Tem alguma vantagem? 6. Qual a diferença entre OpenMP e MPI? Podem ser usadas juntas? 7. O que é Beowulf?