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

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

Download "Aula 3 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos"

Transcrição

1 Aula 3 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

2 Marcelo Henrique dos Santos Site: TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

3 Algoritmos distribuídos para sincronização TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

4 Algoritmos distribuídos para sincronização Um dos maiores problemas encontrados nos jogos multi-jogador é o atraso de transmissão da rede. Isto significa a demora entre a geração de um evento por parte de algum jogador e a disseminação do mesmo para os outros.

5 Algoritmos distribuídos para sincronização É indispensável que cada cliente possua uma visão consistente do estado do jogo, ou seja, é necessário um mecanismo para garantir a ordem global dos eventos.

6 Algoritmos distribuídos Uma grande complicação para a consistência se deve à natureza contínua dos jogos. A ordem na qual os comandos são executados podem criar várias restrições (ex: um jogador que deu um tiro, não pode resolver voltar atrás). O sucesso do jogo é totalmente dependente da sincronização. para sincronização

7 Algoritmos distribuídos para sincronização Duas classificações de algoritmos são propostas para resolver o problema da sincronização. Algoritmos Conservadores ou Pessimistas: Não permite a ocorrência da inconsistência. Algoritmos Otimistas: Permite a ocorrência da inconsistência, porém toma medidas para sua correção.

8 Algoritmos distribuídos para sincronização Duas classificações de algoritmos são propostas para resolver o problema da sincronização. Algoritmos Conservadores ou Pessimistas: Não permite a ocorrência da inconsistência. Algoritmos Otimistas: Permite a ocorrência da inconsistência, porém toma medidas para sua correção. TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

9 Stop and Wait (Lockstep) Considerado um algoritmo conservador, o Stopand-wait ou Lockstep é, de longe, a técnica mais simples para garantir a consistência. Funciona em esquemas de turnos nos quais nenhum jogador pode avançar para o turno seguinte enquanto todos estiverem no corrente. Este esquema provê uma ordem geral de acontecimentos, pois previne a geração de eventos fora de ordem (todos os eventos do turno K acontecem no turno K). TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

10 Stop and Wait (Lockstep) O método impossibilita a ocorrência de inconsistências, afinal todos os jogadores estão sempre computando exatamente a mesma informação. No entanto, não existem garantias do avanço constante do jogo. O jogador com conexão mais lenta irá, fatalmente, atrasar os turnos e a interatividade será totalmente prejudicada. A maioria dos jogos FPS deve funcionar como uma simulação constante com baixa latência, sendo assim, este tipo de algoritmo acaba se tornando complicado para estes jogos.

11 Time Warp e Algoritmo de Buckets O Time Warp é considerado um algoritmo otimista. A abordagem é, ao invés de impedir que o erro ocorra (conservadorismo), detectar e corrigir quaisquer diferenças nos estados do jogo. Os algoritmos otimistas executam eventos ANTES de saberem ao certo que nenhum evento anterior pode chegar e, se erram, reparam as inconsistências. Este tipo de algoritmo se comporta bem melhor em situações interativas e contínuas.

12 Time Warp e Algoritmo de Buckets A sincronização Time Warp trabalha utilizando um snapshot de cada estado antes de cada execução (snapshot de contexto de execução) e executa um rollback para um estado anterior caso algum evento anterior ao último executado seja recebido. TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

13 Time Warp e Algoritmo de Buckets

14 Time Warp e Algoritmo de Buckets O rollback restaura o estado do snapshot anterior ao evento que deveria ter sido executado (não foi devido ao atraso), executa-o e, posteriormente, executa todos os outros eventos novamente. O problema da sincronização Time Warp é que ela requer uma máquina rápida e muita memória. Afinal, é necessário um snapshot para cada mensagem e as mensagens costumam chegar em uma frequência muito alta (uma a cada 30 milissegundos em média, dependendo do jogo).

15 Time Warp e Algoritmo de Buckets Manter um histórico do jogo pode sair caro. Uma otimização para remover este gargalo é capturar o snapshot periodicamente, ao invés de fazê-lo a cada mensagem. Porém os rollbacks acabam perdendo um pouco de precisão. Outra complicação para os rollbacks é que o Time Warp assume que eventos geram novos eventos diretamente. Se um evento A gera o evento B, o cancelamento de A (eventos são cancelados no rollback através de anti-messages) provocará o cancelamento de B.

16 Time Warp e Algoritmo de Buckets Eventualmente, uma geração encadeada de antimessages pode ocorrer, fazendo com que a rede e o jogo percam tempo corrigindo ao invés de executando o jogo. Sem contar o aspecto pouco amigável do rollback para o jogador. Para compensar um pouco este fato, o algoritmo acelera a aplicação até chegar no estado mais avançado (antes do rollback).

17 Time Warp e Algoritmo de Buckets Para completar, Time Warp executa o rollback imediatamente após detectar um comando atrasado. Por um lado isso é bom, pois faz com que os rollbacks sejam pequenos. Por outro lado, acaba causando a execução de excessivos rollbacks caso ocorram muitos atrasos. TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

18 Conclusão Não existem técnicas boas ou ruins, existem técnicas adequadas ou não para os diferentes tipos de jogos. Implementar um algoritmo de Time Warp para um jogo de xadrez ou de truco online é como matar uma formiga com um canhão. Há pouco tempo atrás, as conexões via modem tornavam muitos jogos, principalmente os FPSs, inviáveis. A solução acabava sendo reunir as máquinas em algum lugar e montar uma LAN (Local Area Network).

19 Conclusão A chegada da banda larga e a disseminação das LAN Houses proporcionaram uma melhora considerável no que diz respeito à qualidade. Em virtude da profissionalização dos jogadores e da modernização dos jogos (evolução da tecnologia) este campo tende ao desenvolvimento. É um prato cheio para os apaixonados por jogos multi-player e por computação.

20 Bibliografia Anibolete, Tulio Jorge A. N. S. Algoritmos Distribuídos em Jogos Multi-Usuário. Monografia apresentada na PUC - Rio de Janeiro no ano de TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos

INF 2056 Algoritmos Distribuídos Monografia 2006/01

INF 2056 Algoritmos Distribuídos Monografia 2006/01 INF 2056 Algoritmos Distribuídos Monografia 2006/01 Algoritmos Distribuídos em Jogos Multi-Usuário Professor: Markus Endler Aluno: Tulio Jorge A. N. S. Anibolete ÍNDICE 1) INTRODUÇÃO... 3 2) TIPOS DE JOGOS...

Leia mais

Roteiro. Roteiro. Introdução. Introdução. EscolhadaArquitetura. Tipos de Jogos. Problemas de Sincronização. Algoritmos de Sincronização. Conclusão.

Roteiro. Roteiro. Introdução. Introdução. EscolhadaArquitetura. Tipos de Jogos. Problemas de Sincronização. Algoritmos de Sincronização. Conclusão. INF 2056 Algoritmos Distribuídos em Jogos Multi-Player Aluno: Tulio Jorge A. N. S. Anibolete Prof: Markus Endler Introdução Evolução dos jogos distribuídos. Desafio da sincronização. Arquitetura Tiposprimitivosdisponíveis:

Leia mais

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos

Tempos e Estados Globais. ECO036 - Sistemas Paralelos e Distribuídos Tempos e Estados Globais ECO036 - Sistemas Paralelos e Distribuídos Tópicos Abordados - Tempo - Relógios e Ordenação de eventos. - Relação Happened- Before - Relógios Lógicos - Vetor de Relógios - Relógios

Leia mais

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

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: marcelosantos@outlook.com www.marcelohsantos.com.br TECNOLOGIA EM JOGOS

Leia mais

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

Aula 7 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos Aula 7 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA em Marketing e

Leia mais

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

Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos Aula 5 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA em Marketing e

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Introdução aos Sistemas Operacionais Fundamentação Teórica Evolução Histórica Características

Leia mais

JOGOS DISTRIBUÍDOS. Aula 8. TECNOLOGIA EM JOGOS DIGITAIS JOGOS DISTRIBUÍDOS 2016 Marcelo Henrique dos Santos -

JOGOS DISTRIBUÍDOS. Aula 8. TECNOLOGIA EM JOGOS DIGITAIS JOGOS DISTRIBUÍDOS 2016 Marcelo Henrique dos Santos - JOGOS DISTRIBUÍDOS Aula 8 Marcelo Henrique dos Santos Mestrado em Educação (em andamento) Pós-graduação em Negócios em Mídias Digitais (em andamento) MBA em Marketing e Vendas Especialista em games : Produção

Leia mais

Sistemas Distribuídos. Capítulo 6 - Aula 10

Sistemas Distribuídos. Capítulo 6 - Aula 10 Sistemas Distribuídos Aula Passada Capítulo 6 - Aula 10 Nomeação estruturada Implementação de um espaço de nomes Implementação de resolução de nomes Nomeação baseada em atributo Introdução ao problema

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 6: Monitores, Troca de Mensagens e Deadlock Diego Passos Última Aulas Mecanismos de Exclusão Mútua Operações atômicas. Protocolos de controle de acesso. Spin-locks.

Leia mais

Introdução à Programação de Computadores Fabricação Mecânica

Introdução à Programação de Computadores Fabricação Mecânica Introdução à Programação de Computadores Fabricação Mecânica Edilson Hipolito da Silva edilson.hipolito@ifsc.edu.br - http://www.hipolito.info Aula 04 - Linguagens de Programação, Interpretador, compilador

Leia mais

Aplicações Multimídia sobre Redes

Aplicações Multimídia sobre Redes Redes Multimídia 2016.2 Aplicações Multimídia sobre Redes Curso Superior de Tecnologia em Sistemas para Internet Turma: TEC.SIS.4T Redes Multimídia Conteúdo Programático :: 1 a Unidade 1. Aplicações multimídia

Leia mais

Sistemas Distribuídos. Capítulo 7 - Aula 16

Sistemas Distribuídos. Capítulo 7 - Aula 16 Sistemas Distribuídos Aula Passada Capítulo 7 - Aula 16 Comunicação Confiável de Grupo Multicast Atômico Sincronia Virtual Ordenação de Mensagens Recuperação Aula de hoje Modelos de Consistência Protocolos

Leia mais

Sistemas Distribuídos Aula 13

Sistemas Distribuídos Aula 13 Sistemas Distribuídos Aula 13 Aula passada Modelo computação distribuída RPC Marshalling e stubs Semântica operacional RMI Aula de hoje Relógios Hora de referência Sincronizando relógios Algoritmo de Berkeley

Leia mais

Sincronização e Comunicação entre Processos. Adão de Melo Neto

Sincronização e Comunicação entre Processos. Adão de Melo Neto Sincronização e Comunicação entre Processos Adão de Melo Neto 1 INTRODUÇÃO Em um sistema multitarefa os processos alternam sua execução segundo critérios de escalonamento estabelecidos pelo sistema operacional.

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

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 Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Exclusão Mútua Transações Distribuídas

Leia mais

Sistemas Distribuídos Aula 15

Sistemas Distribuídos Aula 15 Sistemas Distribuídos Aula 15 Aula passada Relacionando eventos Relógios lógicos Algoritmo de Lamport Propriedades Aula de hoje Limitação de Lamport Relógio de vetores Propriedades Garantindo ordenação

Leia mais

Sistemas Operacionais. Escalonamento de processos

Sistemas Operacionais. Escalonamento de processos Sistemas Operacionais Escalonamento de processos 1 Escalonamento de Processos Sistemas Interativos Algoritmos para Sistemas Interativos: First-Come-First-Served (FIFO) Round-Robin; Prioridade; Múltiplas

Leia mais

Aula 16 Estruturas de Controle. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes

Aula 16 Estruturas de Controle. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes Aula 16 Estruturas de Controle Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www3.ifrn.edu.br/~brunogomes Agenda da Aula Estruturas de Controle Estruturas de Condição Revisando

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 Setembro/2003 Tópicos Sincronização em Sistemas Distribuídos Sincronização de Relógio Estados Globais

Leia mais

ALGORITMOS DISTRIBUÍDOS Deadlock

ALGORITMOS DISTRIBUÍDOS Deadlock ALGORITMOS DISTRIBUÍDOS Deadlock Sistemas Distribuídos 231 Um deadlock é causado pela situação onde um conjunto de processos está bloqueado permanentemente, i.e., não conseguem prosseguir a execução, esperando

Leia mais

Algoritmos Distribuídos (deadlock) ALGORITMOS DISTRIBUÍDOS Deadlock. Algoritmos Distribuídos (deadlock) Algoritmos Distribuídos (deadlock)

Algoritmos Distribuídos (deadlock) ALGORITMOS DISTRIBUÍDOS Deadlock. Algoritmos Distribuídos (deadlock) Algoritmos Distribuídos (deadlock) Um deadlock é causado pela situação onde um conjunto de processos está bloqueado permanentemente, i.e., não conseguem prosseguir a execução, esperando um evento que somente outro processo do conjunto pode

Leia mais

Sistemas Distribuídos Aula 16

Sistemas Distribuídos Aula 16 Sistemas Distribuídos Aula 16 Aula passada Relacionando eventos Relógios lógicos Algoritmo de Lamport Propriedades Aula de hoje Limitação de Lamport Relógio de vetores Propriedades Garantindo ordenação

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

Comunicação. capítulo

Comunicação. capítulo Comunicação capítulo 4 Camadas de protocolos: Modelo OSI Camadas de protocolos: Mensagem Protocolos de baixo nível Estas camadas implementam as funções básicas que envolvem uma rede de computadores: Física:

Leia mais

Sistemas Operacionais Aula 3

Sistemas Operacionais Aula 3 Sistemas Operacionais Aula 3 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer

Leia mais

PROFESSOR: Bruno pontes ALUNAS: BRUNA SERRA BIANCA SOUZA Índice

PROFESSOR: Bruno pontes ALUNAS: BRUNA SERRA BIANCA SOUZA Índice PROFESSOR: Bruno pontes ALUNAS: BRUNA SERRA BIANCA SOUZA Índice Introdução Desenvolvimento Conclusão Bibliografia Introdução A sigla QOS significa qualidade de serviço, a qualidade de serviço em redes

Leia mais

Sistemas de Troca de Mensagens

Sistemas de Troca de Mensagens Universidade Federal do Rio de Janeiro Programa de Pós-Graduação em Informática DCC/IM - NCE/UFRJ Arquitetura de Sistemas Paralelos Sistemas de Troca de Mensagens Sistemas de Comunicação O Sistema de Comunicação

Leia mais

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota

Sistemas Distribuídos Estados globais. Vinícius Fernandes Soares Mota Sistemas Distribuídos Estados globais Vinícius Fernandes Soares Mota 1 2 Tópicos Tempo e relógio lógicos (revisão curta) Relógios vetoriais Estados Globais Snapshot distribuído 3 Antes... Por que a sincronização

Leia mais

BARRAMENTOS DO SISTEMA FELIPE G. TORRES

BARRAMENTOS DO SISTEMA FELIPE G. TORRES BARRAMENTOS DO SISTEMA FELIPE G. TORRES BARRAMENTOS DO SISTEMA Um computador consiste em CPU, memória e componentes de E/S, com um ou mais módulos de cada tipo. Esses componentes são interconectados de

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

Consistência. ncia. Sistemas Distribuídos e Tolerância a Falhas. Trabalho realizado por:

Consistência. ncia. Sistemas Distribuídos e Tolerância a Falhas. Trabalho realizado por: Sistemas Distribuídos e Tolerâ a Falhas Consistê Trabalho realizado por: Gonçalo Dias, Nº. 14638 João Tavares, Nº 14888 Rui Brás, Nº 14820 Consistê Índice Consistent Global States; Distributed Consensus;

Leia mais

JOGOS DISTRIBUÍDOS. Aula 10. TECNOLOGIA EM JOGOS DIGITAIS JOGOS DISTRIBUÍDOS 2016 Marcelo Henrique dos Santos -

JOGOS DISTRIBUÍDOS. Aula 10. TECNOLOGIA EM JOGOS DIGITAIS JOGOS DISTRIBUÍDOS 2016 Marcelo Henrique dos Santos - JOGOS DISTRIBUÍDOS Aula 10 TECNOLOGIA EM JOGOS DIGITAIS JOGOS DISTRIBUÍDOS 2016 Marcelo Henrique dos Santos - http://www.marcelohsantos.com Marcelo Henrique dos Santos Mestrado em Educação (em andamento)

Leia mais

SOP - TADS Threads. Revisão Ultima aula. Programa em execução Cada processo têm sua própria CPU

SOP - TADS Threads. Revisão Ultima aula. Programa em execução Cada processo têm sua própria CPU SOP - TADS Threads Prof. Ricardo José Pfitscher dcc2rjp@joinville.udesc.br Material cedido por: Prof. Rafael Rodrigues Obelheiro Prof. Maurício Aronne Pillon Revisão Ultima aula Processos [1/3] Conceito:

Leia mais

Aula 10: Escalonamento da CPU

Aula 10: Escalonamento da CPU Aula 10: Escalonamento da CPU O escalonamento da CPU é a base dos sistemas operacionais multiprogramados. A partir da redistribuição da CPU entre processos, o sistema operacional pode tornar o computador

Leia mais

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

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Consistência Causal(3) Neste exemplo temos uma sequência de eventos permitida quando o depósito é consistente por causalidade, mas proibida quando

Leia mais

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar

TRANSMISSÃO DE DADOS Prof. Ricardo Rodrigues Barcelar - Aula 1-1. A CAMADA DE ENLACE DE DADOS (Parte 1) Relembrando as aulas do semestre passado quando estudamos os modelos de referência, lembramos que a Camada de Enlace de Dados é a camada responsável pela

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Projeto de Sistemas Distribuídos. Considerações

Projeto de Sistemas Distribuídos. Considerações Projeto de Sistemas Distribuídos Considerações Projeto de Sistemas Distribuídos Problemas Objetivos Requisitos de usuário Como são estruturados? 2 Problemas-chave Nomeação Alocação de carga Manutenção

Leia mais

Estruturas de controle: Estrutura de DECISÃO

Estruturas de controle: Estrutura de DECISÃO Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Estruturas de controle: Estrutura de DECISÃO DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros

Leia mais

Programação de Alto Desempenho - 2. Prof: Carla Osthoff

Programação de Alto Desempenho - 2. Prof: Carla Osthoff Programação de Alto Desempenho - 2 Prof: Carla Osthoff E-mail: osthoff@lncc.br 3- Modelos de programação paralela Shared Memory/Threads Posix Win32 treads OpenMP Message Passing MPI Data Parallel OpenCL/Cuda

Leia mais

Informática I. Aula Aula 13-08/10/2007 1

Informática I. Aula Aula 13-08/10/2007 1 Informática I Aula 13 http://www.ic.uff.br/~bianca/informatica1/ Aula 13-08/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript

Leia mais

Transmissão Multicast Confiável e Experimentos na Internet

Transmissão Multicast Confiável e Experimentos na Internet Transmissão Multicast Confiável e Experimentos na Internet Jorge Allyson Azevedo Milena Scanferla, Daniel Sadoc Menasché Edmundo A. de Souza e Silva LAND - UFRJ Maio 00 Roteiro Introdução RML: uma biblioteca

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Deadlocks Referência Sistemas operacionais modernos Andrew S. TANENBAUM Prentice-Hall, 1995 Seção 11.5 pág. 340-344 2 Conteúdo Detecção de deadlock distribuído Detecção centralizada

Leia mais

TE239 - Redes de Comunicação Lista de Exercícios 2

TE239 - Redes de Comunicação Lista de Exercícios 2 Carlos Marcelo Pedroso 11 de maio de 2017 Figura 1: Rede 1 Exercício 1: Suponha a rede apresentada na Figura 1 a) Escreva um esquema de endereçamento Classe B (invente os endereços). b) Escreva endereços

Leia mais

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua

Roteiro. Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Sincronização Roteiro Introdução Sincronização de Relógio Físico Sincronização de Relógio Lógico Exclusão Mútua Introdução A comunicação entre processos é importante, mas não é só isso que importa; Uma

Leia mais

INSTITUTO FEDERAL DE SANTA CATARINA IFSC/São José ENGENHARIA DE TELECOMUNICAÇÕES

INSTITUTO FEDERAL DE SANTA CATARINA IFSC/São José ENGENHARIA DE TELECOMUNICAÇÕES 1 INSTITUTO FEDERAL DE SANTA CATARINA IFSC/São José ENGENHARIA DE TELECOMUNICAÇÕES REDE DE DADOS MÓVEIS DA QUINTA GERAÇÃO LUIZA ALVES DA SILVA São José 2018 2 LUIZA ALVES DA SILVA REDE DE DADOS MÓVEIS

Leia mais

Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida

Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida Novas Propostas para Protocolos de Streaming Luiz Eduardo Fontes Mello de Almeida Escola de Engenharia Universidade Federal Fluminense (UFF) Rua Passo da Pátria, 156 Niterói RJ Brazil luizedu.almeida@ibest.com.br

Leia mais

Metas de um Sistema Distribuído

Metas de um Sistema Distribuído Metas de um Sistema Distribuído 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

Leia mais

Sistemas de Computação. Processos e escalonamento

Sistemas de Computação. Processos e escalonamento Processos e escalonamento Sistema operacional Programa que age como intermediário entre o usuário de um computador e o hardware Objetivos: Executar programas do usuário e facilitar a resolução de problemas

Leia mais

Sistemas Distribuídos Aula 2

Sistemas Distribuídos Aula 2 Sistemas Distribuídos Aula 2 Aula passada Logísitica Regras do jogo Definição e características Exemplos Aula de hoje Processos IPC Características Ex. sinais, pipes, sockets Objetivos Processos O que

Leia mais

GamePlay. Tainá Jesus Medeiros. 28 de Abril de Profa Tainá Medeiros

GamePlay. Tainá Jesus Medeiros. 28 de Abril de Profa Tainá Medeiros GamePlay Tainá Jesus Medeiros tainajmedeiros@gmail.com 28 de Abril de 2016 Definição Jogabilidade (gameplay ou playability) é um termo na indústria de jogos eletrônicos que inclui todas as experiências

Leia mais

Modelagem Analítica. Profa. Jussara M. Almeida 1 o Semestre de 2011

Modelagem Analítica. Profa. Jussara M. Almeida 1 o Semestre de 2011 Modelagem Analítica Profa. Jussara M. Almeida 1 o Semestre de 2011 Modelagem Analítica Um modelo é uma abstração de um sistema que captura, dentre os inúmeros detalhes do sistema, aqueles que são essenciais

Leia mais

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso

1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso 1- Replicação de Dados - A replicação de dados permite lidar com falhas ao nível dos nós que impeçam o acesso aos dados neles armazenados e com falhas ao nível da comunicação de dados. - Na replicação

Leia mais

Programação de Sistemas Distribuídos e Concorrência

Programação de Sistemas Distribuídos e Concorrência Programação de Sistemas Distribuídos e Concorrência Aula 4 15/08/09 Prof Carlos Eduardo 1 Descentralizadas Arquiteturas centralizadas são distribuições verticais (componentes logicamente diferentes em

Leia mais

Microsoft Faculty Connection

Microsoft Faculty Connection Microsoft Faculty Connection Plataforma de Jogos como Ferramenta Multidisciplinar Prof. Dr. LucianoAntonio Digiampietri EACH-USP Roteiro Introdução Objetivos Detalhamentodo Projeto Conclusões Introdução

Leia mais

Medida de desempenho

Medida de desempenho Medida de desempenho Aceleração (Speedup) = (Tempo em 1 CPU) / (Tempo em p CPUs) O que devemos comparar? Programa paralelo em 1 CPU? Programa equivalente sequencial? Melhor programa sequencial? Fator de

Leia mais

Sistemas Operacionais de Tempo Real. Sérgio Campos

Sistemas Operacionais de Tempo Real. Sérgio Campos Sistemas Operacionais de Tempo Real Sérgio Campos 1 / 21 Sistemas Operacionais de Tempo Real Escalonador, Threads, Tasks Tarefas periódicas Tarefas aperiódicas Microkernel Interrupções Relógios e temporização

Leia mais

Sistemas Operacionais Aula 7

Sistemas Operacionais Aula 7 Sistemas Operacionais Aula 7 Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Curso de Análise e Desenvolvimento de Sistemas de Informação Recife - PE O que fazer

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Prof. Jó Ueyama Apresentação baseada nos slides da Profa. Kalinka Castelo Branco, do Prof. Dr. Antônio Carlos Sementille e da Profa. Dra. Luciana A. F. Martimiano e nas transparências

Leia mais

Teste de Sistemas de Operação 30 de Maio de 2009

Teste de Sistemas de Operação 30 de Maio de 2009 Teste de Sistemas de Operação 30 de Maio de 2009 Duração: 30 min B NOME: Indique apenas uma das alternativas. Respostas erradas descontam na nota. 1. Um pedido de entrada e saída sem buffering: (letra

Leia mais

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo

Modelos Fundamentais de um SD. Modelo de Interação ou Sincronismo Modelos Fundamentais de um SD Modelo de Falhas/Avarias Modelo de Interação ou Sincronismo Modelo de Segurança 1 Recordando. Modelo de Avarias: Caracteriza o sistema em termos das falhas/avarias, i.e.,

Leia mais

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado

Relógio Lógico Algoritmo de Lamport. Relógio Lógico Algoritmo de Lamport. Relógio Físico Algoritmo Centralizado. Relógio Físico Algoritmo Centralizado Relógio Lógico Algoritmo de Lamport Objetivo: Sincronização de clocks lógicos Os tempos associados aos eventos não são necessariamente próximos ao tempo real. Os processos não precisam estar de acordo

Leia mais

Redes ATM. Multicast em ATM. Multicast IP em ATM. Multicast no LANE. LANE v.1. Multicast sobre LANE v.1

Redes ATM. Multicast em ATM. Multicast IP em ATM. Multicast no LANE. LANE v.1. Multicast sobre LANE v.1 Redes ATM Padronizada pelo ATM Forum Bandas escaláveis Tecnologia que atende desde LAN até WAN Grande aceitação do mercado, fabricantes e meio acadêmico Multicast em ATM Questões a Considerar Resolução

Leia mais

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 3. Escalonamento

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 3. Escalonamento Aula 3 Escalonamento Escalonamento Porque? Quando? Como? Critérios? Políticas de escalonamento Como avaliar? Referências: Capítulo 5: 5.1 a 5.3, 5.6 Porque Escalonar? Escalonamento controla compartilhamento

Leia mais

COMO FUNCIONA A SIMULAÇÃO

COMO FUNCIONA A SIMULAÇÃO COMO FUNCIONA A SIMULAÇÃO Capítulo 2 - Aula 3 1 Terminologia Básica Ver capítulo 2 da referência 1 Variáveis de Estado Eventos Entidades e Atributos Recursos e Filas de Recursos Atividades e Períodos de

Leia mais

COMO FUNCIONA A SIMULAÇÃO

COMO FUNCIONA A SIMULAÇÃO COMO FUNCIONA A SIMULAÇÃO Capítulo 2 - Aula 3 1 Terminologia Básica Variáveis de Estado Eventos Entidades e Atributos Recursos e Filas de Recursos Atividades e Períodos de Espera Tempo (Real) Simulado

Leia mais

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

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) Pós-graduação em Negócios em Mídias Digitais

Leia mais

A camada de enlace de dados executa diversas funções específicas. Dentre elas

A camada de enlace de dados executa diversas funções específicas. Dentre elas A camada de enlace de dados executa diversas funções específicas. Dentre elas estão as seguintes: Fornecer uma interface de serviço bem definida à camada de rede. Lidar com erros de transmissão. Regular

Leia mais

1. MATERIAIS NECESSÁRIOS

1. MATERIAIS NECESSÁRIOS Labirinto Quantidade de jogadores recomendado: 2 1. MATERIAIS NECESSÁRIOS a) Um baralho FlexiCard: Serão utilizadas as cartas abaixo para esta atividade. A função de cada carta será explicada posteriormente.

Leia mais

MITO OU VERDADE? 11/02/2013 MITO OU VERDADE? MITO OU VERDADE? MITO OU VERDADE? Dois antivírus funcionam melhor que um?

MITO OU VERDADE? 11/02/2013 MITO OU VERDADE? MITO OU VERDADE? MITO OU VERDADE? Dois antivírus funcionam melhor que um? Você é capaz de dizer se um firewall substitui um antivírus? E se o computador do usuário está sujeito a ser infectado só de visitar uma página da web? Por mais que especialistas alertem "instale um antivírus",

Leia mais

Aula 26: Branch-and-Price

Aula 26: Branch-and-Price Aula 26: Branch-and-Price Otimização Linear e Inteira Túlio Toffolo http://www.toffolo.com.br BCC464 / PCC174 2018/2 Departamento de Computação UFOP Aula de Hoje 1 Branch-and-Price Exemplo: Problema da

Leia mais

COMPUTAÇÃO PARALELA E DISTRIBUÍDA

COMPUTAÇÃO PARALELA E DISTRIBUÍDA COMPUTAÇÃO PARALELA E DISTRIBUÍDA Aluno: Alessandro Faletti Orientadora: Noemi Rodriguez Introdução O objetivo inicial no projeto era aplicar a possibilidade de processamento em paralelo no sistema CSBase

Leia mais

Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos

Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos Universidade Federal de Ouro Preto Departamento de Computação Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos Haroldo Gambini Santos Túlio A. Machado Toffolo Marco A.M. de Carvalho

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

Segurança da Informação

Segurança da Informação INF 108 Segurança da Informação Computação em Nuvem Prof. João Henrique Kleinschmidt Introdução Centralização do processamento Surgimento da Teleinformática Década de 60 Execução de programas localmente

Leia mais

Métodos de Sincronização

Métodos de Sincronização Métodos de Sincronização Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2017 1 / 31 Sumário 1 Sistemas multiprogramáveis 2 Mecanismos de sincronização

Leia mais

INTERFACE HUMANO- COMPUTADOR (IHC)

INTERFACE HUMANO- COMPUTADOR (IHC) INTERFACE HUMANO- COMPUTADOR (IHC) Aula 2 BACHARELADO EM SISTEMA DE INFORMAÇÃO INTERFACE HUMANO COMPUTADOR Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA

Leia mais

Introdução às Redes de Computadores. Prof. M.e Helber Wagner da Silva

Introdução às Redes de Computadores. Prof. M.e Helber Wagner da Silva Introdução às Redes de Computadores Prof. M.e Helber Wagner da Silva helber.silva@ifrn.edu.br 1 O que é uma rede? Rede de computadores é a interconexão de computadores e equipamentos que usa fios ou ondas

Leia mais

LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL:

LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL: LABORATÓRIO DE INTRODUÇÃO A CIÊNCIA DE COMPUTAÇÃO TRABALHO SEMESTRAL: JOGO DA FORCA ALUNOS: LEANDRO LUIS BELLINI JONATA PEREIRA MARTINS ROGER DOS SANTOS AGUERA PROFESSOR: SEIJI ISOTANI UNIVERSIDADE DE

Leia mais

Modelos Fundamentais. Introdução. Interação. Falhas. Segurança. Prof. Adriano Fiorese

Modelos Fundamentais. Introdução. Interação. Falhas. Segurança. Prof. Adriano Fiorese Modelos Fundamentais Introdução Interação Falhas Segurança 1 Introdução Como entender/classificar o comportamento de um sistema: Quais são as principais entidades do sistema? Como elas interagem? Quais

Leia mais

Zone Routing Protocol - ZRP[1]

Zone Routing Protocol - ZRP[1] Zone Routing Protocol - ZRP[1] Rafael de M. S. Fernandes 1 1 Programa de Engenharia de Sistemas e Computação - Coppe/UFRJ Rio de Janeiro - RJ - Brasil rafaelmsf@cos.ufrj.br Resumo. O protocolo ZRP busca

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 Operacionais

Sistemas Operacionais Sistemas Operacionais Programação Concorrente Impasses Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Princípios de Deadlock Técnicas de solução do problema Prevenir a ocorrência

Leia mais

Programação Concorrente Locks

Programação Concorrente Locks Programação Concorrente Prof. Eduardo Alchieri Variáveis do tipo trava (lock) Lock: É um mecanismo de sincronização de processos/threads, em que processos/threads devem ser programados de modo que seus

Leia mais

SSC546 -Avaliação de Desempenho de Sistemas

SSC546 -Avaliação de Desempenho de Sistemas Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC546 -Avaliação de Desempenho de Sistemas Parte 1 -Aula 2 Sarita Mazzini Bruschi Material

Leia mais

Introdução à Computação: Máquinas Multiníveis

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

ALGORITMOS AVANÇADOS Lista de Exercícios 01. Luiz Leão

ALGORITMOS AVANÇADOS Lista de Exercícios 01. Luiz Leão Lista de Exercícios 01 Luiz Leão luizleao@gmail.com http://www.luizleao.com Exercício 01 Qual a importância de estudarmos a complexidade dos algoritmos? Exercício 01 Resposta Qual a importância de estudarmos

Leia mais

Sistemas de Tempo Real. Sérgio Campos

Sistemas de Tempo Real. Sérgio Campos Sistemas de Tempo Real Sérgio Campos scampos@dcc.ufmg.br 1 / 25 Sistemas de Tempo Real Motivação aplicações típicas: Controle e sistemas de controle, Processamento de sinais, Sistemas embutidos, Robótica,

Leia mais

Análise e Técnicas de Algoritmos

Análise e Técnicas de Algoritmos Análise e Técnicas de Algoritmos Prof. Jorge Figueiredo http://www.dsc.ufcg.edu.br/~abrantes/atal032.html Jorge Figueiredo Aula 1-1 Agenda Apresentação do curso Motivação Introdução informal Jorge Figueiredo

Leia mais

Sincronização em Sistemas Distribuídos

Sincronização em Sistemas Distribuídos Sincronização em Sistemas Distribuídos Universidade Federal do ABC Turma: Ciência da Computação Prof. Dr. Francisco Isidro Massetto Sincronização Como as regiões críticas são implementadas em um SD? Como

Leia mais

Caracterização de Sistemas Distribuídos

Caracterização de Sistemas Distribuídos Caracterização de Sistemas Distribuídos Roteiro Conceitos de Hardware Conceitos de Software Classificação de Flynn Classificação baseada no acesso a memória 2 Conceitos de HW Múltiplas CPUs Diferentes

Leia mais

Resolvendo o problema de snapshot em redes DTN utilizando algoritmos distribuídos

Resolvendo o problema de snapshot em redes DTN utilizando algoritmos distribuídos Resolvendo o problema de snapshot em redes DTN utilizando algoritmos distribuídos Maurício José Da Silva Orientador Ricardo Augusto Rabelo Oliveira PPGCC, Universidade Federal de Ouro Preto 11 de julho

Leia mais

Processos ca 3 pítulo

Processos ca 3 pítulo Processos capítulo 3 Introdução: Threads Para executar um programa, o sistema operacional cria um determinado números de processos virtuais. O sistema operacional mantém uma tabela de processos que contém

Leia mais

Lista de Exercícios 12 Transações

Lista de Exercícios 12 Transações UNIVERSIDADE DE SÃO PAULO INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO SCC0141 - Bancos de Dados e Suas Aplicações Prof. José Fernando Rodrigues Júnior 2º semestre

Leia mais

BLOCKCHAIN. Bruno Ricardo Lucarelli & Maick Henrique Pereira de Oliveira

BLOCKCHAIN. Bruno Ricardo Lucarelli & Maick Henrique Pereira de Oliveira BLOCKCHAIN Bruno Ricardo Lucarelli & Maick Henrique Pereira de Oliveira 1. INTRODUÇÃO Entendendo o que é e como funciona o blockchain Vídeo animado: What is Blockchain? https://www.youtube.com/watch?v=ntnqmk

Leia mais

Sistemas Operativos. Objetivo. Entrega do Questionário. Exercício 1. Exercício 2. Exercício 3. Exercício 4. Grupo 1 Introdução

Sistemas Operativos. Objetivo. Entrega do Questionário. Exercício 1. Exercício 2. Exercício 3. Exercício 4. Grupo 1 Introdução Sistemas Operativos Objetivo O objetivo deste questionário é levá-lo a rever os conceitos básicos dos sistemas operativos, bem como os algoritmos de scheduling e mecanismos de sincronização estudados.

Leia mais

Sincronização e Concorrência

Sincronização e Concorrência Tópicos da Aula Sincronização e Concorrência Sincronização sincronização interna sincronização externa sincronização de relógio métodos de sincronização Cristian Berkeley tempo lógico Controle de Concorrência

Leia mais