SlideShare uma empresa Scribd logo
UNIVERSIDADE AGOSTINHO NETO
FACULDADE DE CIÊNCIAS
DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO
TEMA:
Pesquizadores: Fernando Fortuna Bernardo de Araújo
Jeremias Kugingama Capemba
Grupo nº:
Disciplina: Tópicos Avançados
Regente: Mateus Padoca Calado, MSc.
quarta-feira, 8 de abril de 2015 1
RPC, RMI e CORBA
Sumário
Introdução
• Conceitos Sobre Sistemas Distribuidos
• Apoio conceitual de Tanenbaum/Van Steen
• Característica Principais
• Exemplos
Desenvolvimento
• Chamada do Procedimento Remoto (RPC-Remote Procedure Call)
• Metódo de Invocação Remota (RMI-Remote Method Invocation)
• Desvantagens entre RPC vs RMI
• CORBA
Conclusão
Bibliografia
quarta-feira, 8 de abril de 2015 2
Introdução
• Sistemas Distribuidos
– é uma coleção de Hardwares e Software s independentes, interconectados por uma rede a
partir de um Software projectado para produzir acções somente por envio Mensagens em
suas comunicações.
– Segundo Tanenbaum/Van Steen , 2002
“Um sistema distribuído é um conjunto de computadores independentes entre
si, que se apresenta a seus usuários como um sistema único e coerente.”
• Características Principais
– Existência de várias máquinas(Computadores/Processadores)
– Existência de Redes (Elemento de InterComunicação)
– Existência do critério de Partilhamento (Trocar Informações)
• Exemplos
– Aplicações comerciais (reservas de bilhetes,
bancos)
– Aplicações Internet (WWW)
– Aplicações de acesso a informações multimídia
(Áudio (voz) e vídeo conferência, P2P-TV)
– Groupware (trabalho cooperativo)
quarta-feira, 8 de abril de 2015 3
Chamada de Procedimento Remoto
(RPC-Remote Procedure Call)
• Breve resumo
– 1984, Birrel e Nelson apresentaram um conjunto de questões de métodos remotos
denominados por: “Chamada de Procedimento Remoto”, e com todas essas questões eles
pretendiam que havesse permissão nos programas para chamarem procedimentos
localizados em outras máquinas, mas que o conjunto formasse uma ou várias aplicações
compostas.
Exemplo:
Embora a ideia fora objectiva , existe problemas e tais problemas têm sido detectados
automaticamente.
Destes temos alguns principais:
 Problemas no Servidor
 Problemas no Cliente
 Arquitecturas distintas difere nos tipos de dados
 Passgens de Parametros(assinaturas distintas)
 Demo read(int x, char *cadeia, long numBytes);
p1= read(valor1, vectNome, qtdBytes);
p2= read(valor2, vectNome2, qtdBytes2, tipo);
quarta-feira, 8 de abril de 2015 4
A B
pc1
pc2
pn
p1
p2
p1
x
pcn
Resposta do procedimento
Máquina A Máquina B
Informações do Chamdor
x
Chamada de Procedimento Remoto
(RPC-Remote Procedure Call)
Entretanto, o princípio básico das chamadas de procedimento Remoto consiste do processo de
requisição e resposta no contexto de SDs denomina-se “Cliente/Servidor”.
Onde os comandos básicos consistem em Escrita e Leitura( write«»Escrita ou read«»Leitura ) e destes
são manipulados a cada nova interação para cada RPC.
Análise estrutural e funcional de uma chamada remota, abaixo temos uma Ilustração:
quarta-feira, 8 de abril de 2015 5
Linha do tempo
Linha do tempo
RespostaRequisição
Tempo de Espera do Resultado
Figura Ilustrativa de uma chamada Local
Retorno da ChamdaChamada do procedimento Remoto
B
pc1
pc2
pcn
Servidor
A
pn
p1
p2
xCliente
Chamada de Procedimento Remoto
(RPC-Remote Procedure Call)
• Passos de demonstração de um RPC funcional
1. O processo do Cliente chama a sua parte integrante para construção da mensagem(modo padrão).
2. A parte integrante constroi(empacota) a mensagem, posteriormente chama o S.O(Kernel Local) do Cliente.
3. O S.O(Kernel Local) do Cliente envia a mensagem(requisição) construida para o S.O remoto(Kernel Remoto).
4. O S.O remoto(Kernel Remoto) envia a mensagem para parte integrante do Servidor.
5. A parte integrante do Servidor desempacota os paramentros da mensagem e chama o Servidor.
6. O Servidor chama o procedimento com o tipo de assinatura requisitado para prestar serviço e retorna para a
parte integrante do Servidor com a resposta.
7. Aparte integrante do Servidor empacota a resposta(mensagem), posteriormente chama o S.O(Kernel Local) do
Servidor.
8. O S.O(Kernel Local) do Servidor envia a mensagem(resposta) construida para o S.O remoto(Kernel Remoto).
9. O S.O remoto(Kernel Remoto) envia a mensagem(resposta) para S.O(Kernel Local) do Cliente.
10. O S.O(Kernel Local) do Cliente envia-na para a parte integrante.
11. A parte integrante desempacota a mensagem(resposta), posteriormente retorna para ao Cliente(modo padrão).
Obs.: O objectivo principal de uma parte integrante é de Empacotar/Desempacotar os
parâmetros de uma mensagem.
quarta-feira, 8 de abril de 2015 6
Chamada de Procedimento Remoto
(RPC-Remote Procedure Call)
• 1- Algoritmia Usando RPC na linguagem C
– Exercício: Dado um programa com um procedimento que acha a soma entre dois números,
crie um Cliente e Servidor e registe-os usando RPC. Obs.: Efectue algumas demonstrações.
// Definição das estrutura para os procedimento de entrada e saída
struct campos{
long num1; // pararametro de entrada
long num2; // pararametro de saída
};
program SOMA{
version ADICAO {
int ADD(campos) = 1;
} = 1; // Numero da versão: 1
} = 0x2fffffff; // valor de identificação do programa
Obs.: Agora basta termos instalado em nosso computador(PC) o RPCGen(Gerador de RPCs) e
executar o programa add com a extensão .x, Ex: “ add.x” após ter sido salvo. Será gerado 7
ficheiros para posseguirmos com a DEMONSTRAÇÃO...
quarta-feira, 8 de abril de 2015 7
Chamada de Procedimento Remoto
(RPC-Remote Procedure Call)
• 2- Algoritmia Usando RPC na linguagem C
– Exercício: Dado um programa com um procedimento que acha a raiz quadrada de um
numero, crie um Servidor e registe-o usando RPC. Obs.: Efectue algumas demonstrações.
// Definição das estrutura para os procedimento de entrada e saída
struct quadrado_in{
long argumento; // pararametro de entrada
};
struct quadrado_out{
long resultado; // pararametro de saída
};
program quadrado{
version versao_quadrado {
quadrado_out = SQUAREPROC(quadrado_in) = 1;
} = 1; // Numero da versão: 1
} = 0x31230000; // valor de identificação do programa
Obs.: Agora basta termos instalado em nosso computador(PC) o RPCGen(Gerador de RPCs) e
executar o programa quadrado com a extensão .x, Ex: “ quadrado.x” após ter sido salvo será
gerado 7 ficheiros para posseguirmos com a DEMONSTRAÇÃO...
quarta-feira, 8 de abril de 2015 8
quarta-feira, 8 de abril de 2015 9
quarta-feira, 8 de abril de 2015 10
quarta-feira, 8 de abril de 2015 11
quarta-feira, 8 de abril de 2015 12
quarta-feira, 8 de abril de 2015 13
Método de Invocação Remota (RMI-
Remote Method Invocation)
quarta-feira, 8 de abril de 2015 14
quarta-feira, 8 de abril de 2015 15
quarta-feira, 8 de abril de 2015 16
quarta-feira, 8 de abril de 2015 17
quarta-feira, 8 de abril de 2015 18
Objecto Comum de Requisição na
Arquitectura de Falhas(CORBA-Common
Object Request Broker Architecture)
quarta-feira, 8 de abril de 2015 19
quarta-feira, 8 de abril de 2015 20
quarta-feira, 8 de abril de 2015 21
Conclusão
quarta-feira, 8 de abril de 2015 22
Bibliografia
• Acetatos da Universidade Federal do ABC
quarta-feira, 8 de abril de 2015 23

Mais conteúdo relacionado

PDF
Aula 05 subprogramas
ODP
Aula c++ estruturas de dados
PDF
Algoritmos e Lógica de Programação
PPTX
Sistemas Distribuídos - Aula 05
PDF
Introdução à Linguagem de Programação C
PPT
Alocação Dinâmica em Linguagem C
PDF
IAsyncResult Pattern ou Asynchronous Programming Model (APM)
PDF
AulaPython.pdf
Aula 05 subprogramas
Aula c++ estruturas de dados
Algoritmos e Lógica de Programação
Sistemas Distribuídos - Aula 05
Introdução à Linguagem de Programação C
Alocação Dinâmica em Linguagem C
IAsyncResult Pattern ou Asynchronous Programming Model (APM)
AulaPython.pdf

Destaque (15)

PDF
Posturi complete viabilitate cel putin 4 ani arges 19.04.2016 edu.ro
PDF
State Library of Ohio Competency-Based Resources (Sample)
DOC
Objetivos generales
PPT
climate
PPTX
El internet
PPT
Web Services XML - .NET framework
PDF
Posturi incomplete arges 07.03.2016 edu.ro
PDF
02 - Conexões físicas dos componentes v1.0
PDF
01- Introdução ao XML
PDF
Κατάλογος Health 01-2017
PDF
02 - Orientação a objetos e revisão de C# v1.5
PPTX
Aula poo x pe
PDF
02 - Marketing ferramentas e técnicas
PPTX
A review of machine learning based anomaly detection
PPTX
Curiosity en marte.
Posturi complete viabilitate cel putin 4 ani arges 19.04.2016 edu.ro
State Library of Ohio Competency-Based Resources (Sample)
Objetivos generales
climate
El internet
Web Services XML - .NET framework
Posturi incomplete arges 07.03.2016 edu.ro
02 - Conexões físicas dos componentes v1.0
01- Introdução ao XML
Κατάλογος Health 01-2017
02 - Orientação a objetos e revisão de C# v1.5
Aula poo x pe
02 - Marketing ferramentas e técnicas
A review of machine learning based anomaly detection
Curiosity en marte.
Anúncio

Semelhante a Trabalho t.a 2015 (20)

PPT
Invocação Remota de Procedimentos (RPC)
PDF
XML-RPC: Tópicos Introdutórios
PPTX
Sistemas Distribuídos - Aula 06
PDF
gRPC - uma breve introdução.pdf
PDF
6-RMI.pdf
PDF
Introdução à sistemas distribuídos
PPTX
Sistemas DistribuÃ_dos - RPC - MÓDULO II
PDF
XML-RPC.pdf
PDF
Sistemas Distribuídos - Comunicação Distribuída – RPC
PPT
Objetos distribuídos e invocação remota - CORBA
PPT
Servidores de Aplicações
PDF
Computacao distribuida com rmi
PPT
Sistemas distribuídos com RMI
PPTX
gRPC: Por que você ainda usa REST?
PDF
Apresentação Sistemas Distribuídos - Conceito
PPTX
Rmi (remote method invocation)
PPT
Gerência de Processos: Processos
PDF
Funmentos de Objetos Remotos
PDF
Fundamentos de Objetos Remotos
PPTX
Trabalho de sistemas operativos
Invocação Remota de Procedimentos (RPC)
XML-RPC: Tópicos Introdutórios
Sistemas Distribuídos - Aula 06
gRPC - uma breve introdução.pdf
6-RMI.pdf
Introdução à sistemas distribuídos
Sistemas DistribuÃ_dos - RPC - MÓDULO II
XML-RPC.pdf
Sistemas Distribuídos - Comunicação Distribuída – RPC
Objetos distribuídos e invocação remota - CORBA
Servidores de Aplicações
Computacao distribuida com rmi
Sistemas distribuídos com RMI
gRPC: Por que você ainda usa REST?
Apresentação Sistemas Distribuídos - Conceito
Rmi (remote method invocation)
Gerência de Processos: Processos
Funmentos de Objetos Remotos
Fundamentos de Objetos Remotos
Trabalho de sistemas operativos
Anúncio

Último (11)

PPTX
Tipos de servidor em redes de computador.pptx
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PDF
Manejo integrado de pragas na cultura do algodão
PPT
Conceitos básicos de Redes Neurais Artificiais
PPTX
Eng. Software - pontos essenciais para o início
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Utilizando code blockes por andre backes
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PDF
Jira Software projetos completos com scrum
Tipos de servidor em redes de computador.pptx
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Manejo integrado de pragas na cultura do algodão
Conceitos básicos de Redes Neurais Artificiais
Eng. Software - pontos essenciais para o início
Viasol Energia Solar -Soluções para geração e economia de energia
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Utilizando code blockes por andre backes
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Jira Software projetos completos com scrum

Trabalho t.a 2015

  • 1. UNIVERSIDADE AGOSTINHO NETO FACULDADE DE CIÊNCIAS DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO TEMA: Pesquizadores: Fernando Fortuna Bernardo de Araújo Jeremias Kugingama Capemba Grupo nº: Disciplina: Tópicos Avançados Regente: Mateus Padoca Calado, MSc. quarta-feira, 8 de abril de 2015 1 RPC, RMI e CORBA
  • 2. Sumário Introdução • Conceitos Sobre Sistemas Distribuidos • Apoio conceitual de Tanenbaum/Van Steen • Característica Principais • Exemplos Desenvolvimento • Chamada do Procedimento Remoto (RPC-Remote Procedure Call) • Metódo de Invocação Remota (RMI-Remote Method Invocation) • Desvantagens entre RPC vs RMI • CORBA Conclusão Bibliografia quarta-feira, 8 de abril de 2015 2
  • 3. Introdução • Sistemas Distribuidos – é uma coleção de Hardwares e Software s independentes, interconectados por uma rede a partir de um Software projectado para produzir acções somente por envio Mensagens em suas comunicações. – Segundo Tanenbaum/Van Steen , 2002 “Um sistema distribuído é um conjunto de computadores independentes entre si, que se apresenta a seus usuários como um sistema único e coerente.” • Características Principais – Existência de várias máquinas(Computadores/Processadores) – Existência de Redes (Elemento de InterComunicação) – Existência do critério de Partilhamento (Trocar Informações) • Exemplos – Aplicações comerciais (reservas de bilhetes, bancos) – Aplicações Internet (WWW) – Aplicações de acesso a informações multimídia (Áudio (voz) e vídeo conferência, P2P-TV) – Groupware (trabalho cooperativo) quarta-feira, 8 de abril de 2015 3
  • 4. Chamada de Procedimento Remoto (RPC-Remote Procedure Call) • Breve resumo – 1984, Birrel e Nelson apresentaram um conjunto de questões de métodos remotos denominados por: “Chamada de Procedimento Remoto”, e com todas essas questões eles pretendiam que havesse permissão nos programas para chamarem procedimentos localizados em outras máquinas, mas que o conjunto formasse uma ou várias aplicações compostas. Exemplo: Embora a ideia fora objectiva , existe problemas e tais problemas têm sido detectados automaticamente. Destes temos alguns principais:  Problemas no Servidor  Problemas no Cliente  Arquitecturas distintas difere nos tipos de dados  Passgens de Parametros(assinaturas distintas)  Demo read(int x, char *cadeia, long numBytes); p1= read(valor1, vectNome, qtdBytes); p2= read(valor2, vectNome2, qtdBytes2, tipo); quarta-feira, 8 de abril de 2015 4 A B pc1 pc2 pn p1 p2 p1 x pcn Resposta do procedimento Máquina A Máquina B Informações do Chamdor x
  • 5. Chamada de Procedimento Remoto (RPC-Remote Procedure Call) Entretanto, o princípio básico das chamadas de procedimento Remoto consiste do processo de requisição e resposta no contexto de SDs denomina-se “Cliente/Servidor”. Onde os comandos básicos consistem em Escrita e Leitura( write«»Escrita ou read«»Leitura ) e destes são manipulados a cada nova interação para cada RPC. Análise estrutural e funcional de uma chamada remota, abaixo temos uma Ilustração: quarta-feira, 8 de abril de 2015 5 Linha do tempo Linha do tempo RespostaRequisição Tempo de Espera do Resultado Figura Ilustrativa de uma chamada Local Retorno da ChamdaChamada do procedimento Remoto B pc1 pc2 pcn Servidor A pn p1 p2 xCliente
  • 6. Chamada de Procedimento Remoto (RPC-Remote Procedure Call) • Passos de demonstração de um RPC funcional 1. O processo do Cliente chama a sua parte integrante para construção da mensagem(modo padrão). 2. A parte integrante constroi(empacota) a mensagem, posteriormente chama o S.O(Kernel Local) do Cliente. 3. O S.O(Kernel Local) do Cliente envia a mensagem(requisição) construida para o S.O remoto(Kernel Remoto). 4. O S.O remoto(Kernel Remoto) envia a mensagem para parte integrante do Servidor. 5. A parte integrante do Servidor desempacota os paramentros da mensagem e chama o Servidor. 6. O Servidor chama o procedimento com o tipo de assinatura requisitado para prestar serviço e retorna para a parte integrante do Servidor com a resposta. 7. Aparte integrante do Servidor empacota a resposta(mensagem), posteriormente chama o S.O(Kernel Local) do Servidor. 8. O S.O(Kernel Local) do Servidor envia a mensagem(resposta) construida para o S.O remoto(Kernel Remoto). 9. O S.O remoto(Kernel Remoto) envia a mensagem(resposta) para S.O(Kernel Local) do Cliente. 10. O S.O(Kernel Local) do Cliente envia-na para a parte integrante. 11. A parte integrante desempacota a mensagem(resposta), posteriormente retorna para ao Cliente(modo padrão). Obs.: O objectivo principal de uma parte integrante é de Empacotar/Desempacotar os parâmetros de uma mensagem. quarta-feira, 8 de abril de 2015 6
  • 7. Chamada de Procedimento Remoto (RPC-Remote Procedure Call) • 1- Algoritmia Usando RPC na linguagem C – Exercício: Dado um programa com um procedimento que acha a soma entre dois números, crie um Cliente e Servidor e registe-os usando RPC. Obs.: Efectue algumas demonstrações. // Definição das estrutura para os procedimento de entrada e saída struct campos{ long num1; // pararametro de entrada long num2; // pararametro de saída }; program SOMA{ version ADICAO { int ADD(campos) = 1; } = 1; // Numero da versão: 1 } = 0x2fffffff; // valor de identificação do programa Obs.: Agora basta termos instalado em nosso computador(PC) o RPCGen(Gerador de RPCs) e executar o programa add com a extensão .x, Ex: “ add.x” após ter sido salvo. Será gerado 7 ficheiros para posseguirmos com a DEMONSTRAÇÃO... quarta-feira, 8 de abril de 2015 7
  • 8. Chamada de Procedimento Remoto (RPC-Remote Procedure Call) • 2- Algoritmia Usando RPC na linguagem C – Exercício: Dado um programa com um procedimento que acha a raiz quadrada de um numero, crie um Servidor e registe-o usando RPC. Obs.: Efectue algumas demonstrações. // Definição das estrutura para os procedimento de entrada e saída struct quadrado_in{ long argumento; // pararametro de entrada }; struct quadrado_out{ long resultado; // pararametro de saída }; program quadrado{ version versao_quadrado { quadrado_out = SQUAREPROC(quadrado_in) = 1; } = 1; // Numero da versão: 1 } = 0x31230000; // valor de identificação do programa Obs.: Agora basta termos instalado em nosso computador(PC) o RPCGen(Gerador de RPCs) e executar o programa quadrado com a extensão .x, Ex: “ quadrado.x” após ter sido salvo será gerado 7 ficheiros para posseguirmos com a DEMONSTRAÇÃO... quarta-feira, 8 de abril de 2015 8
  • 9. quarta-feira, 8 de abril de 2015 9
  • 10. quarta-feira, 8 de abril de 2015 10
  • 11. quarta-feira, 8 de abril de 2015 11
  • 12. quarta-feira, 8 de abril de 2015 12
  • 13. quarta-feira, 8 de abril de 2015 13 Método de Invocação Remota (RMI- Remote Method Invocation)
  • 14. quarta-feira, 8 de abril de 2015 14
  • 15. quarta-feira, 8 de abril de 2015 15
  • 16. quarta-feira, 8 de abril de 2015 16
  • 17. quarta-feira, 8 de abril de 2015 17
  • 18. quarta-feira, 8 de abril de 2015 18
  • 19. Objecto Comum de Requisição na Arquitectura de Falhas(CORBA-Common Object Request Broker Architecture) quarta-feira, 8 de abril de 2015 19
  • 20. quarta-feira, 8 de abril de 2015 20
  • 21. quarta-feira, 8 de abril de 2015 21
  • 22. Conclusão quarta-feira, 8 de abril de 2015 22
  • 23. Bibliografia • Acetatos da Universidade Federal do ABC quarta-feira, 8 de abril de 2015 23