You are on page 1of 5

Direccin General de Educacin Superior Tecnolgica

Instituto Tecnolgico de San Juan del Ro

Sistemas Operativos II
Configuracin e instalacin de CORBA
Presenta: Garca Barrera Diana Palmira Prez Espinoza Virginia Ingeniera en Tecnologas de la Informacin y Comunicaciones

San Juan del Ro, Quertaro, Noviembre de 2013

1. Introduccin
La arquitectura CORBA permite la realizacin de aplicaciones distribuidas heterogneas siguiendo la metodologa de objetos. El objetivo de esta prctica es crear y ejecutar una aplicacin cliente/servidor "echo" realizada en Java, siguiendo la metodologa de objetos distribuidos de CORBA. La segunda parte de la prctica demuestra que la tecnologa CORBA funciona tambin en un entorno heterogneo. Para ello se proporciona una implementacin de la misma aplicacin realizada en lenguaje C++ y se hacen interaccionar clientes y servidores Java con clientes y servidores C++.

2. Estructura de la aplicacin
Esta aplicacin consta de una interfaz IDL y tres paquetes: el cliente, el servidor, y corba, los cuales se describen a continuacin.

2.1 La interfaz IDL


Ficheros: 1. Echo.idl: definicin de la interfaz en el lenguaje IDL (estandarizado por CORBA para definir interfaces) del servicio "Echo".

2.2 El paquete servidor (server)


Ficheros: 1. EchoServer.java: tiene la estructura tpica de un servidor CORBA. Realiza la inicializacin del objeto y se encarga de publicar su IOR: 2. EchoImpl.java: el objeto que implementa las operaciones definidas por el interfaz IDL. Se basa en crear una instancia del objeto EchoObject (que es el mismo que en las dos prcticas anteriores) y delegar en el la implementacin del mtodo echo. 3. EchoObject.java : implementa el mtodo echo.

2.3 El paquete cliente (client)

ii

Ficheros: 1. EchoClient.java: tiene la estructura tpica de un cliente CORBA. Se encarga de realizar la inicializacin del objeto, obtener un IOR al objeto servidor y realizar el bucle:
o o o

Leer de teclado Invocar el mtodo echo del objeto remoto Imprimir el resultado por pantalla.

2.4 El paquete corba


Este paquete se genera automticamente al procesar la interfaz IDL (Echo.idl) y contiene los stubs y soporte CORBA necesario. Los distintos ficheros generados no son, en principio, de mucho inters pues no se han de ser modificados.

3.5 Publicacin del IOR


Aunque el entorno Orbacus dispone de un Naming Service y un Trading Service, no se hace uso de ellos en la primera parte de esta prctica. As pues, la publicacin de los servicios y el IOR de un servidor no se publica en un servicio de nombres, sino que se opta por la siguiente estrategia:

El servidor escribir su IOR (referencia a si mismo) en forma de string en un fichero Echo.ref el cliente obtendr el IOR del servidor a partir del fichero Echo.ref. Este fichero se proporcionar al cliente (que normalmente residir en otra mquina), en la forma que se considere oportuna: publicndolo en una web, enviandolo un correo-e, enviandolo en un disquette, compartiendo un directorio que contenga el fichero,...).

3. Creacin de la estructura de directorios y del proyecto


1. Cree el subdirectorio %USER%\prj-corba 2. Visite la pgina de prcticas de la Web de la asignatura, descargue en el directorio %USER%\prj-corba el fichero zip con los ficheros de apoyo a esta prctica y descomprmalo. 3. Observe los ficheros descargados:

iii

Un subdirectorio %USER%\prj-corba\src con dos subdirectorios (client, server) para los fuentes de cliente y servidor. Un fichero %USER%\prj-corba\src\echo.idl con la interfaz IDL del servicio un subdirectorio %USER%\prj-corba\orbacus inicialmente vacio para descargar el entorno CORBA:

o o

Procesador de IDL, constituido por los ficheros jidl.exe e idlcpp.exe, ambos en el directorio de fuentes %USER%\prj-corba\src

Biblioteca de clases CORBA OB.jar, OBNaming.jar, OBUtils.jar en el directorio de trabajo %USER%\prj-corba

Un subdirectorio %USER%\prj-corba\c++ con la implementacin en C++ de la aplicacin.

3.1. Instalacin de la plataforma CORBA


La plataforma CORBA utilizada es Orbacus, disponible para Java y C++ sobre Linux y Windows. Para instalarlo, proceda como se indica: 1. Instalacin de bibliotecas de clases CORBA: Descargue el fichero Orbacus4.0.3/JOB-4_0_3_jars.zip y extraiga los ficheros OB.jar, OBNaming.jar y OBUtils al directorio%USER%\prj-corba\Orbacus. 2. Instalacin del procesador de IDL, constituido por los ficheros jidl.exe e idlcpp.exe contenidos en el fichero Orbacus-4.0.3/win32/JOB-4_0_3-binwin32.zip

3.2. Creacin del proyecto


1. Abra el entorno JBuilder 2. Cree el proyecto prj-rmi y configure adecuadamente las rutas, tal como se explica en la prctica de introduccin a Java. 3. Observe que los paquetes y ficheros obtenidos del fichero zip han sido automticamente incluidos en el proyecto. 4. Incluya la biblioteca OB.jar con las clases CORBA en el proyecto. Para ello en la ventana de Project Properties -> Required Libraries, seleccione:

iv

o o

Add->User Home->New y especifique Name: OB y Add->OB.jar, OBNaming.jar, OButils.jar

4. El proyecto Echo con CORBA


El desarrollo de una aplicacin CORBA consta de los siguientes pasos:

4.1 Procesamiento de la interfaz IDL del servicio echo


1. Abra el fichero Echo.idl y complete los EJERCICIOS propuestos. Bsicamente consisten en la declaracin del mtodo echo_. 2. Abra un intrprete de MS-DOS en el directorio %USER%prj-corba\src, incluya el directorio %USER%prj-corba\orbacus en la ruta de ejecucin (%PATH%) y procese la interfazEcho.idl:
o

$ jidl Echo.idl

3. Observe que se crea un directorio %USER%prj-corba\orbacus\corba con los ficheros Echo.java, EchoHelper.java, EchoHolder.java, EchoOperations.java, EchoPOA.java

y _EchoStub.java.

4. Refresque la ventana con la estructura del proyecto en JBuilder y observe que dichos ficheros han sido incluidos en el proyecto.

You might also like