4/3/16. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo e Distribuído. Introdução

Tamanho: px
Começar a partir da página:

Download "4/3/16. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo e Distribuído. Introdução"

Transcrição

1 Processamento Paralelo e Distribuído Introdução Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Informações gerais Página web: Carga horária semestral total: 60 horas Horário: terças 13:00-15:00 sextas 16:00-18:00 Local, atenção: CT-9 sala 207 (terças) CT-9 sala 204 (sextas) 2016/01 Avaliação Duas provas parciais e trabalhos A média parcial (MP) é calculada por: MP = 0,6*P + 0,4*T onde: P é a média aritmética das provas parciais e T é a média aritmética das notas dos trabalhos. A média final (MF) será: MF = MP, se MP 7,0 (e houver presença) MF = (PF + MP)/2, se MP < 7,0 (PF é a nota da prova final) Se MF 5,0 -> Aprovado Se MF < 5,0 -> Reprovado Material didático COULOURIS, George F.; DOLLIMORE, Jean; KINDBERG, Tim. Sistemas distribuídos: conceitos e projeto. 4. ed. Porto Alegre: Bookman, Distributed Systems: Concepts and Design, 4. ed. Addison Wesley, Existe uma 5ª edição em inglês Pelo menos os capítulos: 1, 2, 4, 5, 9, 19, 20 5ª Edição, capítulo 6 Material didático Capítulo 3, seções 3.1 e 3.2 de "Introduction to Parallel Computing" (2nd Edition) de Ananth Grama, George Karypis, Vipin Kumar, Anshul Gupta, Addison Wesley, Artigos e tutoriais online: P.A. Bernstein. Middleware. Communications of the ACM, Vol. 39, No. 2, February 1996, P. Eugster, P. Felber, R. Gerraoui, A.M. Kermarrec, The Many Faces of Publish/Subscribe, ACM Computing Surveys, Vol. 35, No. 2, June 2003, pp Tutorial Java RMI: Tutorial JMS: Outros tutoriais Objetivo Apresentar os conceitos básicos e aplicações da computação distribuída e paralela, com uma abordagem prática que inclui o uso de plataformas middleware para a construção de aplicações distribuídas. 1

2 Tópicos a serem abordados (1/2) Introdução Conceituação: distribuição e paralelismo (em diferentes níveis) Exemplos de aplicação Aspectos: concorrência, escalabilidade, falhas independentes, segurança, heterogeneidade, etc. Histórico Sistemas distribuídos com TCP/IP Remote Procedure Call (RPC) RESTful Web Services (HTTP) Objetos distribuídos exemplo: Java Remove Method Invocation (RMI) Middleware orientado a mensagens (Message- Oriented Middleware, publish/subscribe) exemplos: Java Messaging Service (JMS) Tópicos a serem abordados (2/2) Padrões de projeto (design patterns) para sistemas distribuídos Conceitos de sistemas paralelos: speed-up (aceleração), eficiência, grau de concorrência, granularidade de tarefas, interação entre tarefas, overhead de comunicação Princípios de projeto de sistemas paralelos: técnicas de decomposição de problemas (decomposição de dados, decomposição recursiva, decomposição exploratória, decomposição especulativa) Análise de desempenho com cluster de computadores Conceitos avançados: tolerança a falhas, balanceamento de carga Abordagem Prática Aprender fazendo: vamos construir aplicações distribuídas e testá-las Trabalhos são muito importantes Requer estudo das tecnologias fora da sala de aula: na computação distribuída é difícil fugir de uma sopa de letras: TCP, HTTP, RMI, JMS, REST, XML, JSON,... Introdução O que é um sistema distribuído? O que é paralelismo? Quais são as vantagens e desvantagens (ou desafios) da computação distribuída/paralela? Perspectiva para o curso O que é um sistema distribuído? O que é um sistema distribuído? Fonte: Luís Ferreira Pires, Universidade de Twente 2

3 Distribuição é um fato, parte do problema Usuários e recursos estão fisicamente distribuídos Temos que lidar com a distribuição Exemplos: Páginas na Internet Usuários de Distribuição é parte da solução Podemos explorar distribuição Distribuição não é requisito da aplicação ou dos usuários, mas explora-se a distribuição para obter: mais rápidas: por exemplo, com uma pesquisa de banco de dados com menor tempo de resposta; cálculos complexos (ex. previsão de tempo), etc. mais confiáveis: sistemas de bancos, seguradoras, indústrias, etc. de maior capacidade: número de caixas eletrônicos e clientes na Internet fazendo operações bancárias / pedidos / pesquisas Distribuição <-> Propriedades do sistema Propriedades visíveis externamente: Desempenho no tempo: tempo de resposta, vazão Confiabilidade e Disponibilidade Escalabilidade Segurança Possibilidade de evolução Características internas: Uso eficiente de recursos (processadores, memória, disco) / eficiência Capacidade ociosa Balanceamento de carga em nós de processamento Grau de concorrência/paralelismo e aceleração Custo de comunicação (via rede) Compartilhamento de recursos Capacidade de processamento Memória Armazenamento Disponibilidade Dispositivos (impressoras, monitores) Energia (bateria) Banda de rede / acesso Paralelismo / Concorrência Várias partes de um sistema executam simultaneamente Concorrência normalmente é definida como paralelismo simulado, mesmo que não haja várias unidades de processamento várias linhas de execução (threads) ou processos na mesma unidade de processamento execução é multiplexada no tempo Ambos levam ao acesso compartilhado a recursos Risco de inconsistência de dados Eventual gargalo para desempenho Níveis de paralelismo 1. Paralelismo a nível de instrução 2. Várias linhas de execução em um mesmo processador 3. Várias linhas de execução em diferentes processadores ou núcleos (dual, quad core) 4. Computadores paralelos interconectados com redes dedicadas de alta velocidade, ou barramentos de alta velocidade 5. Cluster de computadores Autonomia 6. Computadores na Internet Redes compartilhadas, comunicação peer-topeer, máquinas heterogêneas, problemas de segurança, 3

4 Desafios para distribuídas: interação entre partes A complexidade às vezes está na forma de interação ou na coordenação entre as partes distribuídas 8 falácias da computação distribuída Essentially everyone, when they first build a distributed application, makes the following eight assumptions. All prove to be false in the long run and all cause big trouble and painful learning experiences. 1. The network is reliable 2. Latency is zero 3. Bandwidth is infinite 4. The network is secure 5. Topology doesn't change 6. There is one administrator 7. Transport cost is zero 8. The network is homogeneous Peter Deutsch + James Gosling Heterogeneidade Diferentes arquiteturas de hardware Diferentes sistemas operacionais Windows (e suas versões), UNIX (e suas variantes), VMS e outros sistemas legados, sistemas operacionais de tempo real, sistemas operacionais para dispositivos móveis (e.g., Android, ios, Windows Mobile) Diferentes tipos de rede Apesar do TCP/IP ter dominado os níveis de transporte/rede Diferentes linguagens de programação Diferentes implementações Padronização Padronização de algumas partes necessárias para interoperabilidade Interoperabilidade: capacidade de sistemas de trabalhar em conjunto Protocolos como HTTP, TCP, RMI,... APIs como Facebook Graph API, / Padronização necessária para portabilidade Portabilidade: capacidade de (partes/ componentes de) sistemas de serem usados em vários contextos E.g., bibliotecas JDK... padrões também mudam com o tempo... Padronização e Abertura (Openness) Interfaces mais importantes são publicadas (documentadas) Mecanismo de comunicação uniforme, compartilhado Cada parte pode ser construída independentemente por diferentes vendedores/ desenvolvedores Portanto devem se adequar a padrões e interfaces publicadas Falhas independentes Partes de um sistema podem falhar por diversos motivos banais: falta de energia elétrica erros de projeto (programação) no desenvolvimento de uma parte do sistema crashes de sistemas operacionais falha de hardware 4

5 Falhas independentes A distributed system is one in which the failure of a computer you didn t even know existed can render your own computer unusable. (Lesley Lamport, 1992) Particionamento de rede Atraso, limitações de banda Redes impõem atraso na comunicação Não somente pela capacidade de transmissão (vazão) mas também pela distância geográfica Escalabilidade O sistema deverá permanecer eficiente mesmo com um aumento no número de usuários (carga) e recursos: Sistema deverá comportar aumento de recursos Custo de adicionar recursos deve ser razoável Perda de desempenho com aumento de usuários/ carga deve ser limitado Escalabilidade de sistemas distribuídos agrega valor: Imagina uma web que fosse limitada no número de páginas, usuários conectados simultaneamente Segurança Segurança Confidentiality- Confidencialidade Integrity - Integridade Availability Disponibilidade... da informação e de serviços Confidencialidade - propriedade que limita o acesso somente às entidades legítimas, ou seja, àquelas autorizadas pelo proprietário da informação Integridade - propriedade que garante que a informação e serviços mantenham as características originais estabelecidas pelo proprietário Disponibilidade - propriedade que garante que a informação e serviços estejam sempre disponíveis para o uso legítimo 5

6 Segurança Hackers também podem explorar a distribuição para seu benefício Ataques de larga escala que levam à indisponibilidade de sistemas (Denial Of Service attacks) Acesso a sistemas mal configurados e seus recursos; pense em: Disco e Banda (pirataria, material ilegal) Processamento (para quebra de criptografia) Processamento e Banda (SPAM) Diferentes domínios de administração Partes do sistema podem pertencer a diferentes organizações Autonomia no nível organizacional Diferentes tecnologias e padrões Diferentes procedimentos de manutenção Exacerba o problema de heterogeneidade Exacerba o problema de falhas independentes Exacerba o problema de segurança centralizadas x distribuídas centralizadas x distribuídas Custo de comunicação entre partes do sistema Falhas Risco de Particioname nto de rede Segurança Escalabilidade Centralizadas Baixo Todas partes do sistema falham em conjunto Não há Centralizadas Controle mais simples Limitada por natureza Distribuídas Mais alto / Variável Partes falham independentem ente Partes podem ficar sem comunicação Distribuídas Vários pontos de entrada Depende de projeto adequado Próxima aula: arquiteturas paralelas/distribuídas 1. Paralelismo a nível de instrução 2. Várias linhas de execução em um mesmo processador 3. Várias linhas de execução em diferentes processadores ou núcleos (dual, quad core) 4. Computadores paralelos interconectados com redes dedicadas de alta velocidade 5. Cluster de computadores 6. Computadores na Internet Redes compartilhadas, comunicação peer-topeer, máquinas heterogêneas, problemas de segurança, 6

Introdução aos Sistemas Distribuídos

Introdução aos Sistemas Distribuídos Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2005/2006 O que é um sistema distribuído? O que é um sistema distribuído? Sistema Distribuído Conjunto

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Motivação Aplicações Motivam Possibilita Engenharia Motivação! Aplicações cada vez mais complexas! Qual a técnica mais comum para redução de complexidade? " Modularização Dividir

Leia mais

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

Sistemas Distribuídos. Plano de Curso. Plano de Curso 04/03/12 ! EMENTA: Sistemas Distribuídos Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com! EMENTA: Plano de Curso! Conceitos. Comunicação entre processos (IPC). Programação de aplicações cliente- servidor. Sincronização

Leia mais

INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA

INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA Identificação: Disciplina: INE5645 - Programação Paralela e Distribuída Carga horária: 72 horas-aula Teóricas: 36 Práticas: 36 Período: 2º semestre de 2014 (em

Leia mais

29/3/16. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos

29/3/16. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) 2016/01 Informações gerais Página web: http://nemo.inf.ufes.br/jpalmeida/ensino

Leia mais

15/4/15. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos

15/4/15. Informações gerais. Carga horária semestral total: 60 horas Horário: Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos Processamento Paralelo Arquitetura de Sistemas Paralelos e Distribuídos Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Informações gerais Página web: http://nemo.inf.ufes.br/jpalmeida/ensino/ 2015-01-ppd

Leia mais

Introdução aos Sistemas Distribuídos

Introdução aos Sistemas Distribuídos Introdução aos Sistemas Distribuídos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Ementa; Bibliografia Calendário Site Introdução Características http://sites.google.com/sitew/leonardobcampos

Leia mais

Arquitetura Cliente-Servidor Generalizada com identificação de tiers. Arquitetura Cliente-Servidor Generalizada com identificação de tiers

Arquitetura Cliente-Servidor Generalizada com identificação de tiers. Arquitetura Cliente-Servidor Generalizada com identificação de tiers Projeto de Sistemas Distribuídos Prof João Paulo A Almeida (@infufesbr) Projeto de Sistemas Distribuídos Até agora consideramos apenas a infraestrutura para a construção de aplicações distribuídas (middleware)

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Sistemas Distribuídos. Ricardo Ribeiro dos Santos Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Julho/2003 Tópicos Objetivos Pré-requisitos Ementa/Conteúdo Programático Relacionamento com outras

Leia mais

Sistemas Distribuidos. Prof. Walter Gima

Sistemas Distribuidos. Prof. Walter Gima Sistemas Distribuidos Prof. Walter Gima 1 Apresentação da Disciplina Disciplina: Sistemas Distribuídos Carga Horária: 20 horas/aula Horário: 9:10 Até 22:00 2 Objetivos Reconhecer os diversos tipos de sistemas

Leia mais

SIST706 Sistemas Distribuídos

SIST706 Sistemas Distribuídos 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

Leia mais

Decisões arquiteturais importantes. Projeto arquitetural x projeto de algoritmos. Decomposição de dados. Decomposição de dados

Decisões arquiteturais importantes. Projeto arquitetural x projeto de algoritmos. Decomposição de dados. Decomposição de dados Processamento Paralelo Técnicas de Decomposição de Problemas Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Decisões arquiteturais importantes 1. Divisão de responsabilidades entre partes (componentes)

Leia mais

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

Sistemas Distribuídos Aspectos de Projeto de SD. Aspectos de Projeto em SD. Transparência 14/03/12. ! Transparência; ! Abertura; ! Sistemas Distribuídos Aspectos de Projeto de SD Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com Aspectos de Projeto em SD! Transparência;! Abertura;! ;! Heterogeneidade;! Segurança;! Tratamento

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS 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

Leia mais

Conceitos de Sistemas Distribuídos

Conceitos de Sistemas Distribuídos Conceitos de Sistemas Distribuídos Roteiro Definição de Sistemas Distribuídos (SD) Evolução Histórica Exemplos (SD) Modelos (Vantagens x Desvantagens) 2 O que é um Sistema Distribuído? Definição Coleção

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama

SSC PROGRAMAÇÃO CONCORRENTE. Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama SSC- 0742 PROGRAMAÇÃO CONCORRENTE Aula 03 Terminologia Geral de Computação Paralela Prof. Jó Ueyama Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados às

Leia mais

trabalho Heitor Oliveira,Rafael Aleixo,Alex Rodrigues September 2013

trabalho Heitor Oliveira,Rafael Aleixo,Alex Rodrigues September 2013 trabalho Heitor Oliveira,Rafael Aleixo,Alex Rodrigues September 2013 Sistemas Distribuídos ea Internet Aplicacao Distribuida// 1 Aplicacao Distribuida O que é? É uma aplicação que consiste em 2 ou mais

Leia mais

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

Cliente-servidor Código móvel Agentes de software Processos pares. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR n n n n Cliente-servidor Código móvel Agentes de software Processos pares Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Arquiteturas em Sistemas Distribuídos Cliente- Servidor Client invocation

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Definição Sistema Distribuído é aquele onde os componentes de software e hardware localizados em redes de computadores comunicam-se e coordenam suas ações apenas por passagem de mensagens.

Leia mais

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

Sistema Operacional. Prof. Leonardo Barreto Campos.   1/30 Sistema Operacional Prof. Leonardo Barreto Campos 1/30 Sumário Introdução Middleware e SO de Rede SO de Rede Processos e Threads Leitura Complementar Bibliografia 2/30 Introdução A tarefa de qualquer sistema

Leia mais

STD29006 Sistemas Distribuídos

STD29006 Sistemas Distribuídos STD29006 Sistemas Distribuídos Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/std 28 de julho de 2017 1/22 Apresentação

Leia mais

Arquitetura de sistemas distribuídos

Arquitetura de sistemas distribuídos Arquitetura de sistemas distribuídos 2. Introdução aos Sistemas Distribuídos 2.1.Características de sistemas distribuídos 2.2 Aplicações distribuídas e TI Verde 2.3 Tratamento de Falhas 2.4 Classificação

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA DIVISÃO DE ASSUNTOS ACADÊMICOS Secretaria Geral de Cursos PROGRAMA DE DISCIPLINA DEPARTAMENTO DE CIÊNCIAS EXATAS CÓDIGO: EXA832 DISCIPLINA: SISTEMAS DISTRIBUÍDOS CARGA HORÁRIA: 60h EMENTA: Conceitos e

Leia mais

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos Características de Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br 2002-2003 Carlos A. G. Ferraz 2 Tópicos O conceito de Sistemas Distribuídos Infra-estrutura básica Exemplos Vantagens e desvantagens

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Tecnologia em Sistemas para Internet Aula 03 Introdução à Objetivos Conhecer características básicas sobre escalabilidade de SDs; Apresentar alguns exemplos de sistemas distribuídos e características de

Leia mais

Sistema de Software Distribuído

Sistema de Software Distribuído Sistema de Software Distribuído É composto por uma sequência de instruções, que é interpretada e executada por um processador É composto por instruções concorrentes ou paralelas, que são interpretadas

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução 2 a edição Revisão: Fev/2003 Sistemas Operacionais Introdução Capítulo 1 O que se espera de um sistema de computação? Execução de programas de usuários Permitir a solução de problemas Sistema

Leia mais

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos Tópicos O conceito de Características de Carlos Ferraz cagf@cin.ufpe.br Infra-estrutura básica Exemplos Vantagens e desvantagens Convergência digital Características 2002-2003 Carlos A. G. Ferraz 2 O Conceito

Leia mais

SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella

SSC PROGRAMAÇÃO CONCORRENTE. Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella SSC- 0143 PROGRAMAÇÃO CONCORRENTE Aula 06 Modelos de Programação Prof. Jó Ueyama e Julio Cezar Estrella Créditos Os slides integrantes deste material foram construídos a par4r dos conteúdos relacionados

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

Universidade Federal do RGS Instituto de Informática Departamento de Informática Aplicada

Universidade Federal do RGS Instituto de Informática Departamento de Informática Aplicada Universidade Federal do RGS Instituto de Informática Departamento de Informática Aplicada Disciplina: INF01151 - Sistemas Operacionais II N Turma: A, 2 Sem/2008 Prof. Cláudio Geyer CURSOS : Ciência da

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Introdução 2 a edição Capítulo 1 Revisão: Fev/2003 Introdução O que se espera de um sistema de computação? Execução de programas de usuários Permitir a solução de problemas Sistema

Leia mais

Programação Paralela e Distribuída

Programação Paralela e Distribuída INE 5645 Programação Paralela e Distribuída Professor: Lau Cheuk Lung (turma A) INE UFSC lau.lung@inf.ufsc.br Conteúdo Programático 1. Introdução 2. Programação Paralela 3. Controle de Concorrência 4.

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos 12/13 Sistemas Distribuídos 1 O que é um sistema distribuído? Page 1 1 Sistema Distribuído Sistema de componentes software/hardware localizadas em computadores ligados em rede que

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Thaís Vasconcelos Batista UFRN DIMAp http://www.dimap.ufrn.br/~thais thais@ufrnet.br Programa do Curso INTRODUÇÃO Conceitos Básicos Sistemas em Rede X Sistemas Distribuídos Necessidade

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Desafios e Características Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o

Sis i te t mas a O perac a i c o i nai a s um p ouco c d a a h is i tó t ria i. a... SO His i t s ó t r ó ic i o Sistemas Operacionais um pouco da história... - Evolução dos SO s através do tempo - Novas técnicas não são assimiladas simultaneamente por todos - Década de 40, não existia SO - O programador é o faz

Leia mais

Curso: Redes de Computadores

Curso: Redes de Computadores Curso: Redes de Computadores Cadeira de Introdução a Sistemas Operacionais. Bibliografia Sistemas Operacionais Modernos Andew S. Tanembaum Sistema Operacionais Abraham Silberchatz, Peter Galvin e Greg

Leia mais

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

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS. Aula 1- Introdução aos Sistemas Distribuídos Aula 1- Introdução aos Sistemas Distribuídos OBJETIVOS DA DISCIPLINA: Compreender os conceitos de Sistemas Distribuídos; Conhecer os principais modelos de arquitetura; Entender a importância dos conceitos

Leia mais

SSC-0742 PROGRAMAÇÃO CONCORRENTE. Aula 04 Revisão de Arquiteturas Paralelas -Parte 2 Prof. Jó Ueyama e Julio Cezar Estrella

SSC-0742 PROGRAMAÇÃO CONCORRENTE. Aula 04 Revisão de Arquiteturas Paralelas -Parte 2 Prof. Jó Ueyama e Julio Cezar Estrella SSC-0742 PROGRAMAÇÃO CONCORRENTE Aula 04 Revisão de Arquiteturas Paralelas -Parte 2 Prof. Jó Ueyama e Julio Cezar Estrella Créditos Os slides integrantes deste material foram construídos a partr dos conteúdos

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Conceito Aplicações Exemplos de sistemas distribuídos Relação dos sistemas distribuídos e as redes Tipos de Sistemas Distribuídos 1 Fonte: https://sites.google.com/site/firsistemasdistribuidos/

Leia mais

Sistemas Distribuídos Aula 10

Sistemas Distribuídos Aula 10 Sistemas Distribuídos Aula 10 Aula passada Arquitetura P2P Bittorrent Distributed Hash Table (DHT) Aula de hoje Modelo computação distribuída RPC Marshalling e stubs Semântica operacional RMI Computação

Leia mais

Carlos Eduardo Batista Centro de Informática - UFPB

Carlos Eduardo Batista Centro de Informática - UFPB Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação Arquitetura de computadores modernos Desafios da programação concorrente Definição de concorrência Correr junto Disputa por

Leia mais

Infra-Estrutura de Software

Infra-Estrutura de Software Infra-Estrutura de Software Entrada / Saída 2º. EE: 21/06 Próximas Datas http://www.cin.ufpe.br/~cagf/if677/2016-1/ slides/ Revisão de notas: 28/06 FINAL: 30/06 Diversidade de dispositivos Hardware de

Leia mais

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Sistemas Distribuídos. Ricardo Ribeiro dos Santos Sistemas Distribuídos Ricardo Ribeiro dos Santos ricrs@ec.ucdb.br Curso de Engenharia de Computação UCDB Julho/2003 Tópicos Características de um SD Modelos arquiteturais para implementação de SD Características

Leia mais

15/4/15. Processamento Paralelo Middleware Orientado a Objetos. Sistema operacional é a única infraestrutura para interação. Middleware é adicionado

15/4/15. Processamento Paralelo Middleware Orientado a Objetos. Sistema operacional é a única infraestrutura para interação. Middleware é adicionado Aplicações distribuídas: interação entre partes Processamento Paralelo Middleware Orientado a Objetos Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Rede A Rede B Rede C 2015/01 - INF02799 Sistema

Leia mais

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

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída 11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando

Leia mais

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

Informática UFRGS. Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1 Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1 Autor Autor Local Cláudio Geyer Instituto de Informática disciplinas: POD e PDP Versão v4 2010-1 Programação com Objetos Distribuídos

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTIPROCESSADORES

Leia mais

Sistemas distribuídos. Prof. Emiliano Monteiro

Sistemas distribuídos. Prof. Emiliano Monteiro Sistemas distribuídos Prof. Emiliano Monteiro Múltiplos processadores São arquiteturas que possuem duas ou mais CPU interligadas e que funcionam em conjunto na execução de tarefas independentes ou no processamento

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 23 de fevereiro de 2011 Histórico Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento de programas Usuário ia ao computador

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Caracterização de Faculdades SENAC Análise e Desenvolvimento de Sistemas 24 de fevereiro de 2010 Caracterização de Histórico Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento

Leia mais

Organização e comunicação em plataformas paralelas

Organização e comunicação em plataformas paralelas Organização e comunicação em plataformas paralelas Processamento Paralelo Prof. Oberlan Romão Departamento de Computação e Eletrônica DCEL Centro Universitário Norte do Espírito Santo CEUNES Universidade

Leia mais

Caracterização de Sistemas Distribuídos

Caracterização de Sistemas Distribuídos Caracterização de Sistemas Distribuídos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Introdução Exemplos de Sistemas Distribuídos Tendências em Sistemas Distribuídos

Leia mais

Introdução à passagem de mensagens e sistemas distribuídos

Introdução à passagem de mensagens e sistemas distribuídos Introdução à passagem de mensagens e sistemas distribuídos Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2007/2008 c 2000 2007 Paulo Sérgio Almeida

Leia mais

SIST706 Sistemas Distribuídos

SIST706 Sistemas Distribuídos Slide02 Arquiteturas de SD SIST706 Sistemas Distribuídos 2013/1 Prof. Jéfer Benedett Dörr @: prof.jefer@gmail.com profjefer.wordpress.com Notícias Cultura Livre Fontes de Notícias itil LPI Transistores:

Leia mais

Introdução a Sistemas Distribuídos

Introdução a Sistemas Distribuídos Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído?

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído? network link: Tecnologias de Distribuição e Integração ISP intranet backbone desktop computer: server: satellite link no interior de uma organização (intranet) clientes externos entre organizações 2 Quais

Leia mais

AULA ANTERIOR: MODELOS FUNDAMENTAIS

AULA ANTERIOR: MODELOS FUNDAMENTAIS AULA ANTERIOR: MODELOS FUNDAMENTAIS Modelos fundamentais de um sistema distribuído Permitem estabelecer quais as premissas existentes a respeito de aspetos chave. Permitem avaliar de forma objetiva as

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br 29 de julho de 2015 1/21 Apresentação da disciplina Objetivo da disciplina

Leia mais

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS

ARQUITETURA DE SISTEMAS DISTRIBUÍDOS ARQUITETURA DE SISTEMAS DISTRIBUÍDOS AULA 02 Evolução do Processamento Paulo Franco Paulo.franco@outlook.com Evolução do Processamento A evolução do processamento de informações ocorreu basicamente de

Leia mais

Arquiteturas. capítulo

Arquiteturas. capítulo Arquiteturas capítulo 2 Modelos de arquitetura de sistemas distribuídos Clientes realizam pedidos a servidores Client invocation invocation Server result Server result Client Key: Process: Computer: Modelos

Leia mais

MEIC Sistemas Distribuídos

MEIC Sistemas Distribuídos MEIC Sistemas Distribuídos 2 de março de 2017 Rodrigo Miragaia Rodrigues Baseado nos slides apresentados por Paulo Ferreira Departamento de Engenharia Informá3ca 2 Fonte: Malte Schwarzkopf. Operating system

Leia mais

Arquiteturas Paralelas

Arquiteturas Paralelas ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Arquiteturas Paralelas Medidas de desempenho Alexandre Amory Edson Moreno Índice 2 1. Introdução 2. Medidas de Desempenho Introdução 3 Aumento de desempenho dos

Leia mais

SISTEMAS DISTRIBUÍDOS TIPOS

SISTEMAS DISTRIBUÍDOS TIPOS SISTEMAS DISTRIBUÍDOS TIPOS Slides cedidos pela Professora Aline Nascimento TIPOS DE SISTEMAS DISTRIBUÍDOS Sistemas de Computação Distribuídos de Alto Desempenho Utilizado para tarefas de computação de

Leia mais

Computação Distribuída

Computação Distribuída Aula 1 Introdução aos Sistemas Distribuídos Anos 50 - Sistemas Operacionais tipo Lote Aumentar a capacidade de processamento de programas Usuário ia ao computador Processamento Seqüencial Leitoras de cartões

Leia mais

Estrutura do Sistema Operacional

Estrutura do Sistema Operacional Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Aula 04 Estrutura do Sistema Operacional 2 1 Estrutura do Sistema Operacional

Leia mais

Programação concorrente (processos e threads)

Programação concorrente (processos e threads) Programação concorrente (processos e threads) Programação concorrente Por que precisamos dela? Para utilizar o processador completamente Paralelismo entre CPU e dispositivos de I/O Para modelar o paralelismo

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Nuno Preguiça (nuno.preguica_at_fct.unl.pt) Sérgio Duarte (smd_at_fct.unl.pt) João Leitão (jc.leitao_at_fct.unl.pt) http://asc.di.fct.unl.pt/sd Material de suporte às aulas de Sistemas

Leia mais

Programação Concorrente

Programação Concorrente INE 5410 Programação Concorrente Professor: Lau Cheuk Lung (turma A) INE UFSC lau.lung@inf.ufsc.br Conteúdo Programático 1. 2. Programação Concorrente 3. Sincronização 1. Condição de corrida, região critica

Leia mais

Arquitetura de Computadores. Processamento Paralelo

Arquitetura de Computadores. Processamento Paralelo Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS Introdução www.pearson.com.br capítulo 1 slide 1 O que são Sistemas Distribuídos? Um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único

Leia mais

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

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP Prof. Me. Sérgio Carlos Portari Júnior Conteúdo Programático Contextualizando: Aula anterior Camada Middleware Programar para SD

Leia mais

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

INTRODUÇÃO AOS SISTEMAS DISTRIBUÍDOS. Prof. Cesar Augusto Tacla PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ INTRODUÇÃO AOS SISTEMAS DISTRIBUÍDOS Prof. Cesar Augusto Tacla http://www.dainf.ct.utfpr.edu.br/~tacla/espsd/ 1 Sumário 1. INTRODUÇÃO a. Definição de sistemas

Leia mais

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

PROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register PROCESSADORES Um computador digital consiste em um sistema interconectado de processadores, memória e dispositivos de entrada e saída. A CPU é o cérebro do computador. Sua função é executar programas armazenados

Leia mais

Introdução. Sistemas Distribuídos Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 1. Semestre 2008

Introdução. Sistemas Distribuídos Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 1. Semestre 2008 Introdução Sistemas Distribuídos Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 1. Semestre 2008 Conteúdo Programático Caracterização de Sistemas Distribuídos: características, evolução, desafios,

Leia mais

Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional. Professor: Francisco Ary

Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional. Professor: Francisco Ary Organização de Computadores Computação paralela; Sistema de entrada e saída (I/O); Suporte a Sistema operacional Professor: Francisco Ary Computação Paralela Capacidade de um sistema computacional executar

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Tecnologia em Sistemas para Internet Aula 02 Introdução à Introdução A computação entre as décadas de 40 e 80 tinha um custo elevado; Computadores imensos e independentes; Anos 80 dois avanços mudam esse

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Sérgio Duarte (smd@fct.unl.pt) http://asc.di.fct.unl.pt/~smd/isctem Material de suporte às aulas de Sistemas Distribuídos de Nuno Preguiça Copyright DI FCT/ UNL / 1 OBJETIVOS DA CADEIRA

Leia mais

Capítulo II Modelos de Programação Distribuída (parte 2)

Capítulo II Modelos de Programação Distribuída (parte 2) Capítulo II Modelos de Programação Distribuída (parte 2) From: Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, Addison-Wesley 2001 From: Cardoso, Jorge, Programação

Leia mais

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

Arquitetura de Computadores Paralelos. Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela Arquitetura de Computadores Paralelos Introdução Conceitos Básicos Ambientes de Programação Modelos de Programação Paralela Por que estudar Computação Paralela e Distribuída? Os computadores sequenciais

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos UERN Sistemas Distribuídos Prof. André Gustavo andregustavo@uern.br Sistemas Distribuídos Ementa: Conceitos relacionados com Sistemas Distribuídos. Mecanismos dos Sistemas Operacionais para suporte a distribuição.

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 Introdução Arquitetura SMP Organização SMP Processamento Vetorial

Leia mais

OpenMP: Variáveis de Ambiente

OpenMP: Variáveis de Ambiente Treinamento OpenMP C/C++ 1 TREINAMENTO OpenMP C/C++ Módulo 1 Computação de Alto Desempenho Módulo 2 OpenMP: Construtores Paralelos Módulo 3 OpenMP: Diretivas de sincronização Módulo 4 OpenMP: Funções de

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL. Prof. Dr. Daniel Caetano ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES PARALELISMO: SMP E PROCESSAMENTO VETORIAL Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender a Arquitetura SMP Conhecer a Organização SMP Apresentar o Conceito

Leia mais

Protocolo Request-Reply

Protocolo Request-Reply n n n n Protocolo Request-Reply Modelo de Objeto Remoto Semânticas de Invocação Remota Arquitetura de Invocação Remota Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Introdução Características de

Leia mais

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

1- Confiabilidade ( 2 ) Proteção contra perdas e estragos. 2- Integridade ( 3 ) Proteção contra interferência de cortes de funcionamento Grupo 11 1. Em um SID a segurança é de grande importância, ela deve garantir que apenas usuários autorizados acessem recursos e garantir que a informação transmitida pela rede somente possa ser alcançada

Leia mais

08/08/2016. Prof. Richard Brosler

08/08/2016. Prof. Richard Brosler Prof. Richard Brosler richard.brosler@aedu.com Metodologia de trabalho Sistema de notas Trabalhos Artigos Celulares Presença Entrega de trabalhos Uso de laboratório Introdução aos Sistemas Distribuídos

Leia mais

Alcides Pamplona

Alcides Pamplona Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados

Leia mais

Sistemas Operacionais Distribuídos e de Redes

Sistemas Operacionais Distribuídos e de Redes Contextualização Sistemas Operacionais Distribuídos e de Redes Comunicação Interprocessos Aula 04 Aula 04 Aplicação, serviços RMI e RPC Protocolo - (requisição-resposta) marshalling e representaçao externa

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS 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

Leia mais

Objetos e Componentes Distribuídos: EJB

Objetos e Componentes Distribuídos: EJB : EJB Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta

Leia mais

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

O que é? É uma aplicação que consiste em 2 ou mais processos que executam em diferentes processadores que não partilham memória. Sumário: Introdução aos SD (Uma) Definição dum sistema distribuído (SD). Exemplos de SDs. Potenciais vantagens de SDs. Objectivos no desenvolvimento de SDs. Dificuldades/obstáculos no desenvolvimento de

Leia mais

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

Introdução à Ciência da Computação 1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: leandro.uff.puro@gmail.com site:

Leia mais

Sistemas de Objetos Distribuídos

Sistemas de Objetos Distribuídos Sistemas de Objetos Distribuídos Alex Carneiro Carlos Eduardo Elmadjian Karina Awoki Prof. Fabio Kon POO 2016.1 Agenda Conceitos Histórico CORBA Demos Comparação com SOA Conclusão 1 CONCEITOS Sistemas

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Nuno Preguiça (nuno.preguica_at_fct.unl.pt) Sérgio Duarte (smd_at_fct.unl.pt) João Leitão (jc.leitao_at_fct.unl.pt) http://asc.di.fct.unl.pt/sd Material de suporte às aulas de Sistemas

Leia mais