APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar

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

Download "APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar"

Transcrição

1 - Aula 5 - PROGRAMAÇÃO DISTRIBUÍDA COM RMI 1 (Remote Method Invocation) 1. INTRODUÇÃO Sistemas distribuídos necessitam que aplicações, executando em vários espaços de endereçamento, normalmente em diferentes computadores, que sejam capazes de se comunicar. O endereçamento de equipamentos na Internet é baseado em um identificador que independe da tecnologia de rede envolvida, conhecido como endereço IP (Internet Protocol), cujo formato é o do exemplo a seguir: Este formato representa um número de 32 bits que, no modo normal de endereçamento da Internet, está associado a um único equipamento. Ele identifica a rede e o seu equipamento nela. Existe outro modo de endereçamento conhecido como multicasting, onde um endereço IP está associado a um grupo de computadores. O endereço IP permite apenas a localização de um dado equipamento na Internet. Para a localização de uma aplicação executando em um equipamento existe outro identificador conhecido como porta (Port). Esta localização é obtida através da associação da port com um dos protocolos de transporte Transmission Control Protocol (TCP) ou User Datagram Protocol (UDP). Essa tríade composta por endereço IP, número de port e protocolo de transporte é conhecida como socket (Cyclades Brasil, 1996). Apesar do socket ser flexível o suficiente para comunicação em geral, ele requer do cliente e do servidor o conhecimento dos protocolos para troca de mensagens, isto é, a codificação e decodificação destas mensagens. O projeto destes protocolos é sempre difícil e susceptível a erros. Assim, o Java suporta o conceito de invocação de método remoto (Remote Method Invocation - RMI) permitindo uma abstração maior ao desenvolvedor que não precisa se preocupar com o mecanismo de comunicação entre cliente e servidor. 2. RMI Basicamente o RMI é um RPC (Chamada de Procedimentos Remotos), que ao invés de realizar chamadas a procedimento remotos realiza chamadas a métodos de um objeto remoto. Um objeto remoto é aquele que se localiza em uma JVM (Java Virtual Machine) diferente daquela em que se encontra o cliente, potencialmente em outro computador. Um objeto remoto é descrito por uma ou mais interfaces escritas na própria linguagem de programação Java. Por se tratar de um objeto remoto estas interfaces são chamadas de interfaces remotas. A invocação de um método de um objeto remoto tem a mesma sintaxe que a invocação de um método de um objeto local. O cliente quando invoca um objeto não sabe se esse objeto é local ou remoto em relação a ele. O RMI providencia a: 1 RMI nada mais é que a Invocação de Métodos Remotamente, ou seja, permite a execução de chamadas remotas em aplicações desenvolvidas na linguagem Java. 1

2 Localização (binding) de um método de um objeto remoto. Comunicação através de uma conexão de rede confiável permitindo a transmissão de requisições e respostas, funcionando como um canal entre cliente e servidor. Interface com usuário convertendo uma chamada de método em um bloco de dados (mensagem) que possa trafegar através da conexão e remontando a mesma chamada de método no outro extremo (remoto) a partir desta mensagem. São necessários códigos nos pontos finais da conexão para deixar transparente o uso do RMI pelo usuário. No lado cliente, um stub tem a mesma assinatura (nome, argumentos e tipo de retorno) que o método remoto e sua função é empacotar os argumentos em uma mensagem para ser enviada através do canal de comunicação. Quando uma mensagem contendo os resultados enviados pelo servidor surgir neste canal, o stub extrai o valor de retorno antes de passá-lo para o código que chamou o método. O complemento do stub, localizado no lado do servidor, é chamado de skeleton. Sua função é converter as mensagens que chegam pelo canal de comunicação em argumentos e chamar as implementações dos métodos requisitados. Quando o método termina a execução, o valor de retorno é convertido em uma mensagem que é remetida ao stub do cliente. A arquitetura em que se baseia o RMI consiste de três camadas: Camada stub/skeleton Camada de referência remota (remote reference) Camada de transporte Elas são independentes entre si e podem ser substituídas por diferentes implementações sem que uma afete a outra. Por exemplo, pode-se substituir a camada de transporte implementada em TCP, usando socket Java, por outra baseada em UDP. 2

3 3. CAMADA STUB/SKELETON A camada stub/skeleton é a interface entre a aplicação e as outras camadas que compõem o RMI. Esta camada não trata do transporte em si, mas é responsável por transmitir os dados para a camada de referência remota como um stream de dados. Esse stream chamado de marshal stream emprega o mecanismo de serialização de objeto (object serialization). Este mecanismo permite que numa invocação (local ou remota) objetos Java possam ser passados como argumentos ou retornados como resultado da execução de métodos. Os objetos Java, transmitidos através deste sistema de serialização de objetos, são passados por cópia entre espaços de endereçamento diferentes, isto é, máquinas diferentes. Caso já sejam objetos remotos, eles serão repassados por referência, onde referência de um objeto remoto é a referência de uma instância desse objeto. A serialização de objeto é específica da linguagem Java, assim, tanto clientes quanto servidores devem estar escritos em Java (Albuquerque, 1998). Quando um cliente invoca um método de um objeto remoto, os parâmetros do método são convertidos em um bloco de dados (mensagem) pelo stub e esta mensagem é enviada a máquina remota utilizando o protocolo, por exemplo, TCP/IP. Quando a mensagem chega à máquina remota, o skeleton transforma esta mensagem em argumentos e chama a implementação do método convertendo o resultado em uma mensagem que é redirecionada a máquina cliente, cujo stub é responsável pela extração do valor de retorno. O stub que se localiza no lado cliente contém todas as interfaces suportadas pela implementação do objeto remoto, sendo responsável por (Java, 1999): Iniciar a chamada do objeto remoto (acionando a camada de referência remota). Fazer o marshaling dos argumentos, utilizando o mecanismo de serialização de objeto, que será enviado para a camada de referência remota. Informar à camada de referência remota que a chamada pode ser invocada. Fazer o unmarshaling do valor de retorno ou exceção obtido. Informar à camada de referência remota que a chamada foi completada. O skeleton que se localiza no lado servidor contém um método que envia as chamadas recebidas do cliente para a implementação do objeto remoto, sendo responsável por (Java, 1999): Fazer o unmarshaling dos argumentos recebidos. Realizar a chamada da implementação do objeto que executará o serviço requerido pelo cliente remoto. Fazer o marshaling do valor de retorno ou da situação de exceção, caso ocorra, utilizando o mecanismo de serialização de objeto que será enviado para a origem da chamada. As classes dos stubs e skeletons apropriadas são determinadas em tempo de execução e carregadas dinamicamente quando necessárias para atender uma requisição do cliente. 4. CAMADA DE REFERÊNCIA REMOTA A camada de referência remota lida com a interface de transporte de baixo nível por meio de um protocolo. Esse protocolo é independente do stub do cliente e skeleton do servidor. 3

4 O stub e skeleton desconhecem os diversos tipos de protocolo que um servidor pode utilizar. Existem vários protocolos que podem ser especificados e executados por esta camada, tais como (Java, 1999): Servidores suportam somente invocação ponto-a-ponto, onde um cliente interage com um único objeto. Servidores suportam replicação, onde um número de objetos remotos replicados precisam se manter sincronizados sempre que uma instância é modificada. Objetos remotos não estão continuamente ativos, sendo somente carregados do disco quando um cliente invoca um de seus métodos. Este protocolo pode ser selecionado pelo usuário que escolhe como a camada de referência será utilizada. Atualmente, a implementação da camada de referência está restrita a invocação ponto-a-ponto, onde um cliente interage com um único objeto (não replicado) cuja referência é somente válida quando o processo servidor está executando. A classe que implementa esse protocolo é a java.rmi.server.unicastremoteobject. 5. CAMADA DE TRANSPORTE A camada de transporte manipula os detalhes da conexão e providencia um canal de comunicação entre as JVM s executando o código cliente e código servidor. O lado cliente deve possuir a interface do objeto remoto para poder referenciá-lo, enquanto o lado servidor possui a implementação do mesmo. Em geral, esta camada é responsável por (Java, 1999): Estabelecer conexões entre espaços de endereçamentos remotos, isto é, entre JVM s diferentes. Gerenciar conexões. Monitorar conexões (se elas existem ou não (liveness)). Escutar chamadas que estejam sendo recebidas. Manter uma tabela que contém os objetos remotos residentes num determinado espaço de endereçamento. Estabelecer a conexão para as chamadas que estejam sendo recebidas. Localizar o alvo de uma chamada remota passando a conexão para quem a chamou. 6. APLICAÇÕES UTILIZANDO RMI O RMI utilizando a facilidade de nomeação (rmiregistry), implementa um objeto servidor de nomes que mantém registrados todos os objetos localizados num host com os seus respectivos nomes, tornando acessível a referência desses objetos ao cliente. Uma aplicação cliente típica para invocar métodos de um objeto remoto deve obter primeiro a referência desse objeto. Essa referência é passada ao servidor que localizará a implementação do objeto. O RMI trata os detalhes de comunicação entre cliente e servidor, assim, o cliente vê a invocação de um método de um objeto remoto como a de um objeto local. 4

5 Na figura acima um cliente RMI (a) utiliza o sistema de registro para obter a referência de um objeto remoto, após obtida, invoca os seus métodos (b). Caso seja necessário o RMI pode, se o cliente autorizar, utilizar o servidor web para localizar e carregar objetos remotos, isto é, classes Java em bytecodes. Para o carregamento pode-se utilizar qualquer protocolo Uniform Resource Locator (URL) suportado pelo sistema Java, por exemplo, HTTP, FTP, file, etc. Essas classes podem ser carregadas para serem executadas no servidor ou no cliente. Em aplicações que utilizam RMI, o método é executado na máquina onde se encontra o objeto sobre o qual ele atua. O objeto pode estar tanto em uma máquina diferente daquela onde se encontra o cliente quanto na mesma máquina. 7. CARREGAMENTO DINÂMICO DE STUB Em sistemas onde se utiliza o RPC, o código do stub deve ser gerado e linkado junto ao cliente antes de sua execução. Este código pode ser linkado estaticamente ou linkado dinamicamente em tempo de execução, utilizando para isso bibliotecas disponíveis localmente ou na rede. Em ambos os casos, o código que realiza o RPC deve estar disponível, na forma compilada, na máquina do cliente. O RMI generaliza essa técnica de carregar o código do stub em tempo de execução. Essa generalização do carregamento dinâmico do stub (dynamic stub loading) utiliza-se da capacidade do Java de realizar downloading de código. Tipicamente, o stub é carregado dinamicamente do sistema de arquivos locais, neste caso, o gerenciador de segurança não apresenta restrições. Entretanto, quando ele é carregado da rede, suas classes passam pelo gerenciador de segurança, prevenindo, assim, problemas potenciais de segurança (Java, 1999). O carregamento do stub, de forma dinâmica, é utilizado somente quando um cliente necessita de um determinado stub não disponível. Neste esquema, o código do stub (lado cliente) suporta o mesmo conjunto de interfaces remotas da implementação da classe que o gerou. Esse código do stub, residente num servidor host ou em qualquer outra localização, será enviado ao cliente sob demanda (downloaded). Para uma implementação remota, esse código pode ser 5

6 gerado em tempo real (on-the-fly) no lado remoto e enviado para o cliente ou pode ser gerado no lado cliente através de uma lista de interfaces suportadas pela implementação remota. O carregamento dinâmico do stub emprega o carregador de classes do Java, o gerenciador de segurança e a serialização de objeto (Java, 1999). Quando a referência de um objeto remoto for passada como parâmetro ou como resultado de uma chamada de método, o marshal stream, que transmite essa referência, incluirá também a informação de onde carregar a classe do stub para o objeto remoto (o URL, se ele for conhecido). Assim, quando a referência de objeto remoto for unmarshaled no destino, o marshal stream poderá localizar e carregar o código do stub (via carregador de classe e verificado pelo gerenciador de segurança) de tal forma que o cliente tenha disponibilizado o stub correto. 8. COMUNICAÇÃO DE OBJETOS DISTRIBUÍDOS 1. O objeto A faz a chamada do método desejado no Stub; 2. O Stub converte a chamada em protocolo RMI e envia pela Rede; 3. A requisição é enviada pela rede 4. O Skeleton recebe a requisição em RMI e reconhece qual método deve ser chamado; 5. Chama o método desejado no Objeto B; 6. Recebe o retorno do método; 7. Envia a o objeto de Retorno para o Cliente; 8. O Stub recebe o retorno; 9. O Stub repassa o retorno para o Objeto A; 9. PROCEDIMENTOS DE PROGRAMAÇÃO 1. Escrever Interface remota; 2. Implementar a Interface; 3. Implementar Servidor que contém a Implementação da interface remota; 4. Gerar Stub e Skeleton da Interface; 5. Registrar Servidor e Disparar Servidor; 6. Escrever Cliente que utiliza métodos da Interface; 6

7 10. IMPLEMENTAÇÃO a. Escrevendo a Interface Remota import java.rmi.remote; import java.rmi.remoteexception; public interface Hello extends java.rmi.remote { public String msg() throws RemoteException; b. Implementando a Interface import java.rmi.*; import java.rmi.server.unicastremoteobject; public class HelloImpl extends UnicastRemoteObject implements Hello { private String message; public HelloImpl (String msg) throws java.rmi.remoteexception { super(); message = msg; public String msg() throws RemoteException { return message; c. Implementando o Servidor que contém a Implementação da interface remota import java.rmi.*; public class Server { public static void main (String[] argv) { try { Naming.rebind("Hello", new HelloImpl ("Hello world!")); System. out.println ("Hello Servidor está funcionando"); catch (Exception e) { System.out.println ("Hello Server failed: " + e); e.printstacktrace(); d. Gerando Stub e Skeleton da Interface javac *.java rmic v1.1 HelloImpl 7

8 e. Registrando e Disparando o Servidor rmiregistry (linux) start rmiregistry (windows) (porta default = 1099) java Server (executar o servidor) f. Escrevendo o Cliente que utiliza os métodos da Interface import java.rmi.*; public class Cliente { public static void main(string[] argv) { try { Hello hello = (Hello) Naming.lookup("//localhost/Hello"); System.out.println(hello.msg()); catch (Exception e) { System.out.println("HelloClient exception: " + e); g. Gerando e Executando o Cliente javac Cliente.java java Cliente 7. REFERÊNCIAS Tutorial RMI. < Andleigh, P. K.; Gretzinger, M. R. Distributed object-oriented data-systems design. New Jersey: Prentice-Hall, Cyclades Brasil. Guia Internet de conectividade. São Paulo, DEITEL, H. M.; Deitel, P. J. Java how to program. New Jersey: Prentice-Hall, COSTA, Samira Rachid da. Objetos distribuídos: conceitos e padrões. Dissertação de Mestrado

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos RPC Remote Procedure Call 1 Fonte: Alcides Calsavara e Thais V. Batista Chamada de Procedimentos Remotos (RPC) Motivação: comunicação baseada em operações de entrada/saída Ideal:

Leia mais

Num sistema de objectos distribuídos, dois conceitos são fundamentais.

Num sistema de objectos distribuídos, dois conceitos são fundamentais. Folha 9-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus

Leia mais

JavaTM RMI - Remote Method Invocation

JavaTM RMI - Remote Method Invocation JavaTM RMI - Remote Method Invocation Java e Engenharia de Software Orientada a Objetos por Jorge H. C. Fernandes (jhcf@di.ufpe.br) CESAR-DI-UFPE Julho de 1999 Objetivos desta Aula Mostrar o modelo de

Leia mais

MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais

MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais RMI JAVA MIDDLEWARE Aplicativos RMI, RPC e eventos Protocolo Requesição-Respostal Camadas Middleware Representação Externa dos Dados Sistemas Operacionais RMI REMOTE METHOD INVOCATION Invocação remota

Leia mais

Invocação de Métodos Remotos

Invocação de Métodos Remotos Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso

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

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

RMI e RPC. RPC significou um passo muito grande em direcção à

RMI e RPC. RPC significou um passo muito grande em direcção à Sumário RMI Conceito. Arquitectura de Implementação. Java RMI Características. Interfaces e Objectos Remotos JVM e Java RMI. Passagem de Argumentos e Serialização. Class Downloading. 1 RMI e RPC RPC significou

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível

Leia mais

Sistemas Operacionais II

Sistemas Operacionais II Modelo orientado a objetos: uma pequena revisão Instituto de Informátic ca - UFRGS Sistemas Operacionais II Modelos para programação distribuída (Remote Method Invocation) Aula 14 Programa é visto como

Leia mais

Java RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo

Java RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo 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

Java RMI Remote Method Invocation

Java RMI Remote Method Invocation Java RMI Remote Method Invocation Prof. Tiago Garcia de Senna Carneiro Sistemas Distribuídos - 2006 Conteúdo Passos para implementar um aplicação RMI Executando e compilando uma aplicação RMI Exemplo:

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Chamada Remota de Procedimento março de 2019 RPC: motivação A B send (B, &pedido) receive (B, &resposta) como facilitar esse padrão tão comum? encapsulamento de detalhes de comunicação criação, envio e

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com 1. Que são sistemas abertos? É um sistema que oferece serviços de acordo com

Leia mais

Invocação de Métodos Remotos RMI (Remote Method Invocation)

Invocação de Métodos Remotos RMI (Remote Method Invocation) Invocação de Métodos Remotos RMI (Remote Method Invocation) Programação com Objetos Distribuídos Um sistema de objetos distribuídos permite a operação com objetos remotos A partir de uma aplicação cliente

Leia mais

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Camada de aplicação Um protocolo da camada de aplicação define como processos de uma aplicação, que funcionam em sistemas finais diferentes,

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 3 Invocação de Objetos

Leia mais

INTRODUÇÃO. RPC x RMI

INTRODUÇÃO. RPC x RMI 1 INTRODUÇÃO RPC x RMI 2 INTRODUÇÃO RPC Remote procedure call Este termo é utilizado para aplicativos clientes que fazem normalmente chamadas a procedimentos remotos que estão em outro processo e hosts.

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Orientação a Objetos Encapsulamento: Parte interna (privada) dos objetos Implementação: métodos Estado: atributos, variáveis,

Leia mais

Programação com Sockets

Programação com Sockets Programação com LP4 Ciência da Computação 1 Comunicação entre processos Nível mais baixo É um tipo particular de modelo de programação em redes utilizado em várias linguagens como: C, C++ e Java São estruturas

Leia mais

Sistemas Paralelos e Distribuídos - 2003/2004 Curso: Matemática /Informática Sistemas Distribuídos - 2003/2004 Curso: Ensino da Informática

Sistemas Paralelos e Distribuídos - 2003/2004 Curso: Matemática /Informática Sistemas Distribuídos - 2003/2004 Curso: Ensino da Informática Java RMI - Remote Method Invocation Folha 5-1 No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus

Leia mais

Java RMI - Remote Method Invocation. Programação com Objetos Distribuídos (C. Geyer) Java-RMI 1

Java RMI - Remote Method Invocation. Programação com Objetos Distribuídos (C. Geyer) Java-RMI 1 Java RMI - Remote Method Invocation Programação com Objetos Distribuídos (C. Geyer) Java-RMI 1 ! Autores Autoria " Cláudio Geyer " Marcelo Castiglia Pereira! Local " Instituto de Informática " UFRGS "

Leia mais

Exemplo de Aplicação Distribuída Serviço de Nomes Gerente de Segurança. Callbacks. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR

Exemplo de Aplicação Distribuída Serviço de Nomes Gerente de Segurança. Callbacks. Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR n n n n Exemplo de Aplicação Distribuída Serviço de Nomes Gerente de Segurança Callbacks Prof a Ana Cristina B. Kochem Vendramin DAINF / UTFPR Introdução Estende o modelo de objeto Java para fornecer suporte

Leia mais

Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução

Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite

Leia mais

Num sistema de objectos distribuídos, dois conceitos são fundamentais.

Num sistema de objectos distribuídos, dois conceitos são fundamentais. Folha 10-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus

Leia mais

User Datagram Protocol

User Datagram Protocol User Datagram Protocol UDP: Protocolo utiliza para distinguir para qual usuário ou aplicativo deve ser encaminhado um datagrama destinado a uma máquina que esteja executando mais de um processo. Problemas:

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Transporte Parte I Prof. Thiago Dutra Agenda n Parte I n Introdução n Protocolos de Transporte Internet n Multiplexação e n UDP n Parte II n TCP

Leia mais

Java RMI. Alcides Calsavara

Java RMI. Alcides Calsavara Java RMI Alcides Calsavara Objetivos Permitir que um método de uma classe Java em execução em uma máquina virtual JVM chame um método de um objeto (instância de uma classe Java) situado em outra máquina

Leia mais

Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br

Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br Java 2 Standard Edition Fundamentos de Objetos Remotos Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo tem como objetivo dar uma visão geral, porém prática, da criação e uso de objetos

Leia mais

RPC e RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo

RPC e RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo 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

Principais conceitos de CORBA

Principais conceitos de CORBA Principais conceitos de CORBA Tecgraf PUC-Rio fevereiro de 2011 Common Object Request Broker Architecture Uma arquitetura aberta para o desenvolvimento de aplicações distribuídas em um ambiente multilinguagem

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com Relembrando... Mecanismos de Comunicação Middleware Cenário em uma rede Local

Leia mais

Invocação Remota. Prof. Leonardo Barreto Campos. 1/29

Invocação Remota. Prof. Leonardo Barreto Campos.   1/29 Invocação Remota Prof. Leonardo Barreto Campos 1/29 Sumário Introdução Chamada de Procedimento Remoto Invocação a Método Remoto Leitura Complementar Bibliografia 2/29 Introdução Essa aula trata como os

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

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

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes

Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação

Leia mais

FUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão

FUNDAMENTOS DE REDES DE COMPUTADORES Unidade 5 Camada de Transporte e Aplicação. Luiz Leão Unidade 5 Camada de Transporte e Aplicação Luiz Leão luizleao@gmail.com http://www.luizleao.com Conteúdo Programático 5.1 Protocolo UDP 5.2 Protocolo TCP 5.3 Principias Protocolos de Aplicação 5.3.1 SMTP

Leia mais

REDES DE COMPUTADORES

REDES DE COMPUTADORES REDES DE COMPUTADORES Prof. Esp. Fabiano Taguchi fabianotaguchi@gmail.com http://fabianotaguchi.wordpress.com BENEFÍCIOS MODELO OSI Menor complexidade; Interfaces padronizadas; Interoperabilidade entre

Leia mais

Comunicação entre Processos

Comunicação entre Processos Comunicação entre Processos Prof. Leonardo Barreto Campos http://sites.google.com/sitew/leonardobcampos 1/29 Sumário Introdução Comunicação entre Processos: Soquetes Comunicação por datagrama UDP Comunicação

Leia mais

Implementação de um Sistema de Objetos Remoto baseado em Java RMI. Ricardo Couto Antunes da Rocha INF/UFG

Implementação de um Sistema de Objetos Remoto baseado em Java RMI. Ricardo Couto Antunes da Rocha INF/UFG Implementação de um Sistema de Objetos Remoto baseado em Java RMI Ricardo Couto Antunes da Rocha INF/UFG Declaração da Interface do Objeto Remoto Declaração de uma interface Java, com os métodos que são

Leia mais

Tutorial RMI (Remote Method Invocation) por Alabê Duarte

Tutorial RMI (Remote Method Invocation) por Alabê Duarte Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos

Leia mais

Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo

Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo Níkolas Timóteo Paulino da Silva Redes de Computadores I ADS 2ºTermo 1) Desenhe duas redes com 7 e 8 computadores e defina a configuração IP de cada máquina com classe B e C, respectivamente. REDE A (7

Leia mais

Adriano Reine Bueno Rafael Barros Silva

Adriano Reine Bueno Rafael Barros Silva Adriano Reine Bueno Rafael Barros Silva Introdução RMI Tecnologias Semelhantes Arquitetura RMI Funcionamento Serialização dos dados Criando Aplicações Distribuídas com RMI Segurança Exemplo prático Referências

Leia mais

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO RIO GRANDE DO NORTE DEPARTAMENTO ACADÊMICO DE TECNOLOGIA DA INFORMAÇÃO

CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO RIO GRANDE DO NORTE DEPARTAMENTO ACADÊMICO DE TECNOLOGIA DA INFORMAÇÃO CENTRO FEDERAL DE EDUCAÇÃO TECNOLÓGICA DO RIO GRANDE DO NORTE DEPARTAMENTO ACADÊMICO DE TECNOLOGIA DA INFORMAÇÃO http:// www.cefetrn.br/datinf ARQUITETURA TCP/IP Nome: Curso: Turma: LISTA DE EXERCÍCIO

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

Sistemas de Objetos DistribuídosPrimeira Aplicação Java ORB p.1/21

Sistemas de Objetos DistribuídosPrimeira Aplicação Java ORB p.1/21 Sistemas de Objetos Distribuídos Primeira Aplicação Java ORB Francisco José da Silva e Silva Departamento de Informática da Universidade Federal do Maranhão Sistemas de Objetos DistribuídosPrimeira Aplicação

Leia mais

Protocolos e Serviços de Redes

Protocolos e Serviços de Redes Protocolos e Serviços de Redes Redes de Computadores Charles Tim Batista Garrocho Instituto Federal de São Paulo IFSP Campus Campos do Jordão garrocho.ifspcjo.edu.br/rdc charles.garrocho@ifsp.edu.br Técnico

Leia mais

CAPÍTULO 7 JAVA 7.1 CARACTERÍSTICAS DA LINGUAGEM

CAPÍTULO 7 JAVA 7.1 CARACTERÍSTICAS DA LINGUAGEM CAPÍTULO 7 JAVA Java é uma linguagem orientada a objeto cujo projeto foi desenvolvido pela Sun Microsystems no início de 1991. Ela foi originalmente concebida para ser utilizada na programação de dispositivos

Leia mais

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC:

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC: Número: Nome: Página 1 de 7 LEIC/LETI 2016/17, Repescagem do 1º Teste de Sistemas Distribuídos 4 de julho de 2017 Responda no enunciado, usando apenas o espaço fornecido. Identifique todas as folhas. Uma

Leia mais

Sistemas Distribuídos: Conceitos e Projeto RPC e RMI

Sistemas Distribuídos: Conceitos e Projeto RPC e RMI Sistemas Distribuídos: Conceitos e Projeto RPC e RMI Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br 15 de abril

Leia mais

ATENÇÃO O TCP/IP não é um protocolo. TCP/IP é um conjunto de diversos protocolos em 04 camadas próprias que se relaciona com o modelo OSI.

ATENÇÃO O TCP/IP não é um protocolo. TCP/IP é um conjunto de diversos protocolos em 04 camadas próprias que se relaciona com o modelo OSI. PROTOCOLOS DE TRANSMISSÃO DE DADOS PROTOCOLO TCP/IP Trata-se da sigla da palavra inglesa Transmission Control Protocol / Internet Protocol ou, simplesmente Protocolo de Controle de Transmissão / Protocolo

Leia mais

HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP

HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP Aluno: Abel Luiz Cechinel Orientador: Paulo Fernando da Silva Sumário Introdução; Fundamentação Teórica; Desenvolvimento; Conclusão;

Leia mais

Compilação dos trabalhos: questões de concurso

Compilação dos trabalhos: questões de concurso 1 Compilação dos trabalhos: questões de concurso UFBA/DCC/Linguagens para Aplicação Comercial/2009.1 MPU/2007 (Equipe 1) 1 Quanto às variáveis Java, um inteiro de 64 bits em notação de complemento de dois

Leia mais

Protocolos e Serviços de Redes

Protocolos e Serviços de Redes Protocolos e Serviços de Redes Redes de Computadores Charles Tim Batista Garrocho Instituto Federal de Minas Gerais IFMG Campus Ouro Branco garrocho.github.io charles.garrocho@ifmg.edu.br Sistemas de Informação

Leia mais

Sistemas de Objectos Distribuídos

Sistemas de Objectos Distribuídos From: Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, Addison-Wesley 2001 From: Wolfgang Emmerich Engineering Distributed Objects John Wiley & Sons, Ltd 2000 Paula

Leia mais

Common Object Request Broker Architecture

Common Object Request Broker Architecture Common Object Request Broker Architecture OMG: Object Management Group. Organização internacional, sem fins lucrativos, fundada em 1989. Mais de 800 membros (incluindo fabricantes de sistemas, produtores

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Marcelo Lobosco DCC/UFJF Comunicação em Sistemas Distribuídos Aula 06 Agenda Modelo Cliente-Servidor (cont.) Invocação Remota de Método (Remote Method Invocation RMI) Visão Geral

Leia mais

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

REDES DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar - Aula 7 - MODELO DE REFERÊNCIA TCP O modelo de referência TCP, foi muito usado pela rede ARPANET, e atualmente usado pela sua sucessora, a Internet Mundial. A ARPANET é de grande utilidade para entender

Leia mais

Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte

Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte Estruturas de Comunicação de Dados Aula 3 Camadas de Aplicação e Transporte Escola Maria Eduarda Ramos de Barros Curso técnico em redes de computadores Carpina - PE Roteiro Aplicações de Rede Transporte

Leia mais

Prof. Me. Sérgio Carlos Portari Júnior

Prof. Me. Sérgio Carlos Portari Júnior Prof. Me. Sérgio Carlos Portari Júnior Ambientes que visam desenvolver aplicações que precisam de um processamento paralelo e distribuído deverão saber lidar com algumas dificuldades. Isto decorre da heterogeneidade

Leia mais

Java RMI (parte I) Luís Lopes DCC-FCUP

Java RMI (parte I) Luís Lopes DCC-FCUP (parte I) Luís Lopes DCC-FCUP RMI (Remote Method Invocation) é uma API que permite a implementação de aplicações distribuídas baseadas em objectos o objectivo principal dos arquitectos da API era o de

Leia mais

Redes de Computadores e Aplicações

Redes de Computadores e Aplicações Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Norte Campus Currais Novos Redes de Computadores e Aplicações Aula 13 - Camada de Aplicação Visão Geral Prof. Diego Pereira

Leia mais

Arquitetura de Rede. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I

Arquitetura de Rede. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I Arquitetura de Rede Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina: Redes de Computadores I 2 Tipos de arquiteturas Cliente-Servidor Peer-to-Peer Arquitetura Híbrida Cliente-Servidor

Leia mais

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente

A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente Java RMI - Remote Method Invocation Callbacks Folha 9-1 Vimos, na folha prática anterior, um exemplo muito simples de uma aplicação cliente/ servidor em que o cliente acede à referência remota de um objecto

Leia mais

Sockets e Threads em Java

Sockets e Threads em Java Sockets e Threads em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R Y A N O Comunicação

Leia mais

TRATAMENTO DE EXCEÇÕES

TRATAMENTO DE EXCEÇÕES Uma exceção em Java é um sinal que alguma condição excepcional aconteceu; Algo de errado aconteceu! Exemplos: solicitação de abertura de um arquivo não encontrado; índice de um array fora de faixa; uma

Leia mais

Chamada Remota de Procedimento (RPC)

Chamada Remota de Procedimento (RPC) Chamada Remota de Procedimento (RPC) cont semântica de chamadas pelo menos uma vez no máximo uma vez exatamente uma vez relação com protocolo subjacente falhas e reinicializações de servidores funções

Leia mais

PMR3507 Fábrica digital

PMR3507 Fábrica digital LSA Laboratório de Sistemas de Automação www.pmrlsa.poli.usp.br PMR3507 Fábrica digital Do EDI ao SOA Escola Politécnica da Universidade de São Paulo Departamento de Engenharia Mecatrônica e de Sistemas

Leia mais

Camada de Aplicação da Arquitetura TCP/IP

Camada de Aplicação da Arquitetura TCP/IP Arquitetura de Redes de Computadores e Tecnologia de Implementação de Redes 2016.1 Camada de Aplicação da Arquitetura TCP/IP Curso Técnico Integrado em Informática Turma: INT.INF.3M Arquitetura de Redes

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 28 de abril de 2010 Principais suportes de Java RMI (Remote Method Invocation), da Sun Microsystems DCOM (Distributed Component Object Model), da

Leia mais

Modelos de referência de arquiteturas de redes: OSI e TCP/IP Profsº Luciano / Roberto

Modelos de referência de arquiteturas de redes: OSI e TCP/IP Profsº Luciano / Roberto Modelos de referência de arquiteturas de redes: OSI e TCP/IP Profsº Luciano / Roberto Modelo OSI / ISO Nomenclaturas OSI - Open Systems Interconnect ISO International Organization for Standardization Conceitos

Leia mais

Vamos fazer um pequeno experimento

Vamos fazer um pequeno experimento 1 Vamos fazer um pequeno experimento Dividam-se em dois grupos: Mestre Escravo Projeto de Sistemas Distribuídos Comunicação entre Processos Prof. Msc. Marcelo Iury de Sousa Oliveira marceloiury@gmail.com

Leia mais

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

Roteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens Roteiro... Conceitos de SD, vantagens e desvantagens Infra-estrutura de um SD Considerações de projeto Sistemas Distribuídos Aula 4 Karine de Pinho Peralta Modelos de Comunicação - comunicação entre processos

Leia mais

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles.

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles. Web Services Web Service é um componente de software identificado por uma URI que independe de implementação ou de plataforma e pode ser descrito, publicado e invocado sobre uma rede por meio de mensagens

Leia mais

Aspectos para Construção de Aplicações Distribuídas

Aspectos para Construção de Aplicações Distribuídas Aspectos para Construção de Aplicações Distribuídas Cristiano Amaral Maffort maffort@gmail.com Programa de Pós-Graduação em Informática PUC Minas Belo Horizonte MG 12 de junho de 2007 Middleware Objetivo:

Leia mais

Transferência de Arquivo: Protocolo FTP

Transferência de Arquivo: Protocolo FTP Para iniciar uma sessão FTP (File Transfer Protocol) típica e acessar uma conta, o usuário deve fornecer uma identificação e uma senha; Após a identificação o usuário pode realizar operações de transferência

Leia mais

Redes de Computadores

Redes de Computadores Redes de Computadores Camada de Aplicação Slide 1 Protocolo da Camada de Aplicação Tipos de mensagens trocadas; A sintaxe dos vários tipos de mensagens; A semântica dos campos; Regras para determinar quando

Leia mais

Resumo das Propriedades de UDP e de TCP

Resumo das Propriedades de UDP e de TCP Relembrando... Processos duma aplicação distribuída comunicam via mensagens. O formato e o significado destas mensagens depende do protocolo usado. As mensagens são transportadas entre processos através

Leia mais

Rede de computadores Protocolos UDP. Professor Carlos Muniz

Rede de computadores Protocolos UDP. Professor Carlos Muniz Rede de computadores Professor Carlos Muniz User Datagram Protocol O User Datagram Protocol (UDP) é um protocolo simples da camada de transporte. Ele é descrito na RFC 768 [1] e permite que a aplicação

Leia mais

STD29006 Sistemas Distribuídos

STD29006 Sistemas Distribuídos STD29006 Sistemas Distribuídos Comunicação II 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 05 de setembro

Leia mais

Comunicação. Carlos A. G. Ferraz 25/6/2003. Sistemas Distribuídos 1. Tópicos. Camadas. Transmissão de dados. Marshalling/Unmarshalling.

Comunicação. Carlos A. G. Ferraz 25/6/2003. Sistemas Distribuídos 1. Tópicos. Camadas. Transmissão de dados. Marshalling/Unmarshalling. Tópicos Comunicação Carlos Ferraz cagf@cin.ufpe.br Elementos básicos de comunicação Transmissão de dados Endereçamento Sincronismo Enfileiramento (Bufferização) Confiabilidade Portas e sockets UDP RPC:

Leia mais

INFO3M ARQ REDES. Prova 1 Bimestre. Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO

INFO3M ARQ REDES. Prova 1 Bimestre. Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO INFO3M 2018.1 ARQ REDES Prova 1 Bimestre Obs: Questões RASURADAS são consideradas como ERRADAS GABARITO NOME: MATRÍCULA: Q U E S T Õ E S O B J E T I V A S (Valor de cada questão: 0,5 pts) 1. A técnica

Leia mais

Java TM Applets. Java Deployment Course: Aula 3. por Jorge H. C. Fernandes DI-UFPE 30 de Abril de 1999

Java TM Applets. Java Deployment Course: Aula 3. por Jorge H. C. Fernandes DI-UFPE 30 de Abril de 1999 Java TM Applets Java Deployment Course: Aula 3 por Jorge H. C. Fernandes (jhcf@di.ufpe.br) DI-UFPE 30 de Abril de 1999 Java Applets Copyright 1999, 1998, 1997 Jorge H. C. Fernandes (jhcf@di.ufpe.br) Todos

Leia mais

Programação Paralela OO. projeto ProActive www-sop.inria.fr/oasis/proactive/home.html

Programação Paralela OO. projeto ProActive www-sop.inria.fr/oasis/proactive/home.html Programação Paralela OO projeto ProActive www-sop.inria.fr/oasis/proactive/home.html motivação integracão de programacão paralela e distribuida com POO programacão mpi-like trabalha em baixo nivel de abstracão

Leia mais

Redes de Computadores. Prof. André Y. Kusumoto

Redes de Computadores. Prof. André Y. Kusumoto Redes de Computadores Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Nível de Transporte Responsável pela comunicação fim-a-fim entre dois ou mais computadores As redes são normalmente complexas

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

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

JAVA. Professor: Bruno Toledo

JAVA. Professor: Bruno Toledo JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código

Leia mais

Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano. Middleware de Aplicações Paralelas/Distribuídas

Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano. Middleware de Aplicações Paralelas/Distribuídas Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano Middleware de Aplicações Paralelas/Distribuídas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro

Leia mais

Prof. Marcelo Cunha Parte 6

Prof. Marcelo Cunha Parte 6 Prof. Marcelo Cunha Parte 6 www.marcelomachado.com ARP (Address Resolution Protocol) Protocolo responsável por fazer a conversão entre os endereços IPs e os endereços MAC da rede; Exemplo: Em uma rede

Leia mais

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) November 1, 2009 Sumário RMI Conceito Implementação Exemplos Java RMI Características Objectos Remotos e Interfaces Remotas Implementação de Java RMI Argumentos e serialização

Leia mais

Prof. Samuel Henrique Bucke Brito

Prof. Samuel Henrique Bucke Brito RM-OSI: Modelo de Referência www.labcisco.com.br ::: shbbrito@labcisco.com.br Prof. Samuel Henrique Bucke Brito Quando surgiram as redes de computadores havia um grande problema de compatibilidade entre

Leia mais

Arquiteturas de Redes de Computadores Os Modelos RM-OSI e TCP/IP. Prof. M.e Helber Wagner da Silva

Arquiteturas de Redes de Computadores Os Modelos RM-OSI e TCP/IP. Prof. M.e Helber Wagner da Silva Arquiteturas de Redes de Computadores Os Modelos RM-OSI e TCP/IP Prof. M.e Helber Wagner da Silva helber.silva@ifrn.edu.br 1 Arquiteturas de Protocolos de Redes de Computadores Rede de computadores Sistema

Leia mais

COMPUTAÇÃO DISTRIBUÍDA

COMPUTAÇÃO DISTRIBUÍDA COMPUTAÇÃO DISTRIBUÍDA INTRODUÇÃO Carlos Ferraz MOTIVAÇÃO Computação em evolução Antes disso Sistemas de Software (Aplicações) Infraestrutura de Software Infraestrutura de Hardware Infraestrutura

Leia mais

Programação com sockets (em Java)

Programação com sockets (em Java) com sockets (em Java) Prof. Dr. Julio Arakaki Depto. Ciência da 1 Comunicação entre processos // aplicações - é um dos mecanismos mais utilizados - Java oferece modos de utilização:. TCP ( Transmission

Leia mais

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

Grupo de Usuários Java do Noroeste Paulista. Introdução à tecnologia Java Grupo de Usuários Java do Noroeste Paulista Introdução à tecnologia Java Referências http://www.java.sun.com; Ivan Luiz Marques Ricarte, Faculdade de Engenharia Elétrica e de Computação-UNICAMP (http://www.dca.fee.unicamp.br/~ricarte/welcome.html);

Leia mais

Comunicação entre processos

Comunicação entre processos Comunicação entre processos Fernando Afonso Santos UNIFEI Campus Itabira Processos Processos e Programas Um programa é uma entidade estática Fornece as instruções necessárias para realizar tarefas Não

Leia mais

Paradigmas de Computação Paralela

Paradigmas de Computação Paralela Paradigmas de Computação Paralela Middleware de Aplicações Paralelas/Distribuídas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho 9 Novembro 2017 Paradigmas de Computação Paralela

Leia mais