Artigo 1 Babylon v2.0 - Middleware for Distributed, Parallel, and Mobile Java Applications 11th International Workshop on High- Level Parallel Programming.

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Sistemas Distribuídos Baseados em Objetos
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Sistemas Cliente/Servidor Introdução
UNIPAC – ARAGUARI CAMPUS – IX PROF. EVERTON HIPÓLITO DE FREITAS
Sistemas operacionais
Aula 21/09/2011 Courouris, Dollimore, cap 10
Laurent Baduel Françoise Baude Denis Caromel 1 Efficient, Flexible, and Typed Group Comunications in Java Por: Adriano Andrade53811 Susana Rijo José
Sistemas Distribuídos
Conceitos Básicos de Computação
Sistema para Gerenciamento de Redes Baseado em Agentes Móveis
Comunicação Distribuída
Computação Distribuída
SISTEMAS DISTRIBUÍDOS
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
1 Sistemas Distribuídos - SDI Caracterização de Sistemas Distribuídos. Introdução. Exemplos de Sistemas Distribuídos. Desafios.
Comunicação Inter-Processos
Introdução a EJB 3.0 Eduardo Martins Guerra Instituto Tecnológico de Aeronáutica Curso de Pós-Graduação em Engenharia de Software Programação Distribuída.
Mobilidade Cláudia Ribeiro.
Middleware e Sistemas Distribuídos
Felipe Bogossian Luiz Felipe Maciel Renato Sampaio Rodrigo Couto
1 Modelos de Sistemas Distribuídos. Introdução - Dificuldades e ameaças para SD. Grande variação na utilização de SD )carga de trabalho e requerimentos.
Sistemas Distribuídos
Web Services Uninorte Semana de Tecnologia da Informação
Arquitetura Cliente /Servidor
Universidade Estadual de Santa Cruz - UESC
Sistemas Distribuídos
Remote Method Invocation RMI
Concorrência e Java RMI
Gerenciamento de Redes Utilizando Agentes Móveis
Sistemas Distribuídos
Sistemas de Gerenciamento de Educação a Distância Prof. Silvia Helena Cardoso Prof. Renato M. E. Sabbatini.
Professor: Márcio Amador
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Sistemas Distribuídos
BD Distribuído Conceitos Iniciais.
RMI x C# Remote Emilena Specht – 1113/01/9 2004/01
SISTEMAS OPERACIONAIS I
PROGRAMAÇÃO DISTRIBUÍDA Aula 01 Prof. Henrique Mongelli
Java RMI João Gabriel (jggxm).
Processos.
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Simulação distribuída e paralela Gabriel Baracuhy Thiago Martins.
Sistemas de Informação
Sistemas de Gerenciamento de Educação a Distância Prof. Silvia Helena Cardoso Prof. Renato M. E. Sabbatini.
Virtualização/Hipervisão/Servidores Microsoft
Sistemas Distribuídos
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
1 BSP no InteGrade II WorkShop do InteGrade c. 2 Objetivo O principal objetivo é permitir que aplicações BSP sejam executadas no InteGrade sem ou com.
A High Performance Java Middleware with a Real Application HUERT, Fabrice; CAROMEL, Denis; Bal, Henri E. Supercomputing 2004 Trabalho desenvolvido por:
Tecnologias de Localização de Serviços Exame de Qualificação IME/USP Fev/2003.
Sistemas Distribuídos
Multiparadigma das Comunicações em Java para Grid Computing Fernanda R. Ramos Luiz Felipe Marco Eiterer Profº Alcides Calsavara, Ph.D.
A Multilayer P2P Framework for Distributed Synchronous Collaboration Fernando Abrahão Afonso Leonardo Kunz Programação com Objetos Distribuídos Trabalho.
Distributed Data-Parallel Computing Using a High-Level Programming Language TL1 Programação com Objetos Distribuídos Claiton Luiz Vieira Lisboa.
Estilos Arquiteturais
Sistemas Operacionais Distribuídos
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Sistemas Distribuídos Nadilma Nunes Aula Inicial – Apresentação da disciplina.
Avaliação de Desempenho em Ambientes de Mobile Cloud Computing Danilo Oliveira Paulo Maciel Nelson Rosa.
Sistemas Distribuídos
Sistemas Distribuídos Prof. Marcus Rodrigues
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Alunas: Ana Paula/ Beatriz / Gracielle / Márci Alunas: Ana Paula/ Beatriz / Gracielle / Márci a Professor Antônio.
UNIVERSIDADE CATÓLICA DE PELOTAS CENTRO POLITÉCNICO CURSO DE CIÊNCIA DA COMPUTAÇÃO Redes de Computadores Ferramenta NTop (Network Traffic Probe) Explorador.
SOCKET - É um canal de comunicação entre processos que estabelece uma conexão entre eles na forma de cliente-servidor. Por meio de sockets, os computadores.
Transcrição da apresentação:

Artigo 1 Babylon v2.0 - Middleware for Distributed, Parallel, and Mobile Java Applications 11th International Workshop on High- Level Parallel Programming Models and Supportive Environments (HIPS 2006), April, 2006.

Resumo Babylon v2.0 é na verdade uma coleção de ferramentas e serviços (100% compatível com Java) para desenvolvimento e de sistemas paralelos, distribuídos e móveis. Entre alguns dos recursos estão: migração de objetos, chamadas de métodos de forma assíncrona, carga de classes remotas e I/O remoto. E ainda, segundo o artigo, uma interface simples. O middleware ainda permite que aplicações Java criem e interajam com objetos remotos enquanto protege estes de outras aplicações através de restrições e diferentes namespaces. O artigo discute os principais recursos do Babylon, usando como exemplo um sistema de difusão de calor.

Resumo Apesar de Java e RMI terem alguns recursos para programação distribuída, não implementam vários recursos importantes para este tipo sistema. Babylon supera essa limitação, fornecendo classes e interfaces Java para criação, interação e administração de objetos remotos. – Proxy Dinâmico para tornar o acesso remoto transparente. – Chama de métodos assíncrona, baseada em tickets assíncronos. Usando esta técnica, as chamadas são, sintaticamente, iguais às chamadas locais (embora executadas de forma assíncrona). – Duas formas de criação de objetos remotos: criação de um novo objeto remoto, baseado somente no nome da classe; ou usar um objeto local e torná-lo remoto. Totalmente independente de plataforma.

Conclusão Segundo o autor os resultados de performance são animadores e indicam que uma aplicação pode usar o middleware para distribuir objetos através de várias máquinas para execução eficiente em paralelo. Os experimento usados mostraram alguns ganhos em sistemas simples “mestre-escravo” (multiplicação de matrizes) e mesmo para sistemas de comunicação intensa (difusão de calor).

Avaliação Parece bastante interessante o middleware, tendo como principal vantagem a concentração de vários recursos avançados de programação paralela e distribuída num único conjunto de fácil uso. Não apresenta novidades quanto a recursos.

Artigo 2 Exploiting Dynamic Proxies in Middleware for Distributed, Parallel, and Mobile Java Applications 8th International Workshop on Java for Parallel and Distributed Computing (JAVAPDC 2006), April, 2006.

Resumo O artigo mostra como o middleware Babylon v2.0 explora proxys dinâmicos para implementar vários recursos sem nenhuma necessidade de linguagem especial, extensão da JVM, pré- processadores ou compiladores. Os programas gerados são totalmente independentes de plataforma e o processo de desenvolvimento é simplificado removendo a necessidade de compiladores stub externos, etc. Isso ainda permite a criação de objetos remotos de qualquer classe que suporte uma interface para tais métodos, mesmo que o código fonte não esteja disponível. Uma importante contribuição é a redução dos requisitos para uma classe produzir objetos remotos. Babylon só precisa que a classe implemente uma interface exportando os métodos do cliente e que seja serializável.

Resumo Criação sem Proxy Dinâmico – Métodos Fábrica (+ simples – sutb, servidor) – Objetos Ativáveis (+ no server – mais passos) Não existe conversão de objeto local para remoto. Criação com Proxy Dinâmico – Babylon.remoteNew() – criação de objetos – Babylon.export() – conversão de objetos As duas formas acima retornam um proxy, para que as chamadas aos novos objetos remotos sejam transparentes.

Conclusão Segundo o autor, um dos maiores ganhos com o uso de Proxys dinâmicos é a redução de requisitos para criar objetos remotos. As classes só precisam implementar alguma interface que exporta métodos, e que esta seja serializável. Isso abre a possibilidade de criar objetos remotos de classes que não se tem o código fonte (o que não é possível com RMI).

Avaliação Mostra as vantagens da técnica de proxys dinâmicos e como aproveitar isso para produzir programas distribuídos de forma mais organizada e eficiente. Explora muito bem as diferenças entre o uso ou não dessa técnica. Não traz novidades.

Artigo 3 Implementing location based information/advertising for existing mobile phone users in indoor/urban environments Mobile Business, ICMB International Conference on July 2005

Resumo Com o m-comércio o potencial de uso para sistemas baseados em localização são grande, contudo as formas de se obter esta localização são baseadas na necessidade software ou hardware adicionais. E estas técnicas ainda são insuficientes para localizaçao em ambientes fechados e urbanas, devido à precisão na localização. Assim o artigo discute uma forma de usar o bluetooth de “qualquer” celular para sistemas de localização e inclusive para propagandas personalizadas.

Resumo Sistemas “comuns” de localização com boa precisão: EOTD, e GPS ou Assisted-GPS.

Resumo Para o sistema baseado em bluetooth, usa-se a localização baseado nos dongles fixos. Estes usam OBEX para envio de dados entre os dispositivos. Tem como base que produtos com bluetooth vão ter um aumento de vendas de 60% entre 2003 e 2008 (segundo InStat, Market Alert, 2004,

Conclusão Propõe um sistema interessante para troca de mensagens de uso comercial. Mostra a fraqueza do sistema para lidar com flood e spams. Localização externa e interna com uso da tecnologia. Trabalho relacionado: Mobiluck.

Avaliação Propostas interessantes, mas ainda precisa de mais amadurecimento do trabalho; e para o Brasil, ainda se mostra um pouco longe da realidade. Sistema de segurança quanto a privacidade um tanto que falho.

Artigo 4 Exploring the potential of mobile phones for active learning in the classroom 38th SIGCSE technical symposium on Computer science education Covington, Kentucky, USA, 2007

Resumo Aborda o uso de celulares como ferramenta de ensino ativo; já que é um acessório quase que unânime entre os alunos. Aborda o uso dos aparelhos para envio de soluções de exercícios em texto ou foto-mensagens. Propõe o uso deste recurso, principalmente, em salas de aula com número muito grande de alunos. Avalia outras alternativas como notebooks, PDA’s, entre outros aparelhos.

Resumo Analisa vários tipos de exercícios que podem ser usados no celular através de SMS e MMS, levando em conta a facilidade e o aproveitamento que pode ser obtido. Necessário um registro inicial para cadastrar a classe. Exemplos de exercícios usados: múltipla escolha, resposta curta, matemática, programação e diagramas. O estudante mais rápido levou menos de 1 minuto para vários problemas, uns pouco em pouco mais de 1 minuto e somente o exercício de programação em 3 minutos. E uma análise mostrou que a maioria não usa o recurso de auto- completar dos celulares (T9).

Conclusão O artigo ressalta o potencial no uso de celulares para uso em sala de aula como ferramenta auxiliar no ensino. Mostra o trabalho feito na Universidade da Califórnia, San Diego. Leva em conta a adaptação que os professores devem ter em função de poder aproveitar o novo recurso de forma satisfatória. Avalia a aceitação, na maioria positiva, dos alunos; mesmo levando em conta os custos.

Avaliação Trabalho interessante, mas ainda um pouco “rudimentar”. Projeto piloto pareceu transcorrer satisfatoriamente. Provavelmente pode evoluir com o uso de softwares embutidos nos celulares, etc.

Artigo 5 Challenges in peer-to-peer gaming ACM SIGCOMM Computer Communication Review archive Volume 37, Issue 1 (January 2007) Pages:

Resumo Avalia a possibilidade de transferir parte da gerência de jogos online, para os clientes (formando uma rede P2P). Apesar da fácil administração do jogo, a forma centralizada tem muitos problemas: – Servidores têm de ser testados, operarador e mantidos localmente; – Não são escaláveis, e devem ser dimensionados de acordo com o número máximo de jogadores esperador; – Ponto central de falhas; –... Analisa os efeitos do mesmo jogo numa rede P2P em relação aos seguintes pontos: – Gerenciamento do estado do jogo; – Delay; – Escalabilidade; – Trapaça!

Resumo Avalia a possibilidade de transferir parte da gerência de jogos online, para os clientes (formando uma rede P2P). Apesar da fácil administração do jogo, a forma centralizada tem muitos problemas: – Servidores têm de ser testados, operarador e mantidos localmente; – Não são escaláveis, e devem ser dimensionados de acordo com o número máximo de jogadores esperador; – Ponto central de falhas; –... Analisa os efeitos do mesmo jogo numa rede P2P em relação aos seguintes pontos: – Gerenciamento do estado do jogo; – Delay; – Escalabilidade; – Trapaça!

Conclusão O autor mostra que apesar do uso efetivo de redes P2P para vários outros tipos de sistemas com muitos usuários, ainda é preciso muito trabalho para que se possa aplicar tal técnica em jogos online. O autor ainda identifica dois principais eixos de pesquisa: novos sistemas de gerência para suprir os problemas de delay e manter a consistência de estado do jogo; e como proteger o sistema de forma efetiva contra trapaças. Em resumo, o desafio principal parece ser como administrar o overlay, já que existem muitos parâmetros possíveis, isso torna o problema de otimização provavelmente um NP-difícil.

Avaliação Analisa os aspectos envolvidos no novo paradigma que seria o uso de redes P2P para jogos online, contudo sem apresentar nada efetivo. Analisa de forma bem teórica o assunto, mas de fácil entendimento.

Estatística Artigo 1Artigo 2Artigo 3Artigo 4Artigo 5 Concorrência11 Sincronização 1 Comunicação 1 Herança Interoperabilidade Desempenho11 Grade1 Comunicação em grupo 11 Transações 1 Persistência Localização 1 Linguagens Bibliotecas11 Web WebServices Aspectos Agentes11 Ubíqua 11 Móvel 11 Tolerância a Falhas 1 TOTAL54335