INTEGRANTES: BERMÚDEZ YANAY VLADIMIR
ROSALES SILVA SILVA ORFILA
Arquitectura de objetos distribuidos que permite a los objetos interactuar a través de redes de comunicaciones utilizando plataformas heterogéneas y lenguajes diferentes.
Define un: modelo de objetos basado en la definición de las interfaces de los objetos mediante el lenguaje IDL
Logra la: Separación entre la interfaz de los objetos y la implementación de los mismos
Construir componentes con los siguientes pasos:
Definir la interfaz remota. Implementar el servidor Compilar la interfaz remota Implementar el cliente Arrancar los programas
Permite invocar métodos de objetivos remotos sin que importe el lenguaje en el que estén escritos el llamador y el llamado.
Incluye un buen número de servicios: nombres, trading (comercio), seguridad, transacciones, persistencia, notificaciones, etc.
Estandarizado por el OMG (Object Management Group): También estandariza UML. También estandariza UML.
Sistema HETEROGÉNEO, elementos interconectados de hardware y software de diferentes fabricantes.
TIEMEPO DEDESEMPEÑO en la gestion terminacion de tarea, reduce el trafico en la red
Saturación, embotellamiento, interrupción o pérdidas de mensajes por la red
EFICIENCIA Y ADAPTACION ADAPT ACION al cliente MOVILIDAD para la migración de procesos en sistemas distribuidos. no existe mucha experiencia en el diseño, implantación y uso de software
Falta de seguridad adecuada
APLICACIONES
Procesos clientes y servidores que representan la lógica del negocio como objetos que pueden residir en distintas máquinas... máquinas.
Provee servicios básicos de hardware
SISTEMA OPERATIVO
Ejemplo, bases de datos y administrado res de transacciones .
MIDDLEWARE
Soporte que permite la comunicación entre aplicaciones. •
•
SERVICIOS LOCALES
SERVICIOS DE RED
Transporta la información entre computadores.
1. INTERFACES
2. TRANSPARENCIA DE UBICACION
3. INVOCACION A METODOS REMOTOS
4. ACTIVICION DE LOS OBJETVOS
5. CREACION DE OBJETVOS
CORBA soporta el trabajo en entornos heterogéneos (permite interoperabilidad entre distintas máquinas y con objetos escritos en diferentes lenguajes)
INTERFACES
CORBA define un lenguaje de definición de interfaces (IDL), a través del cual c ual cada objeto define su interfaz, la cual consiste del nombre del objeto, el nombre de los servicios que brinda (junto con los parámetros que necesita) y posibles atributos y excepciones a los cuales se puede acceder.
Cualquier programa nuevo o existente puede convertirse a un objeto CORBA definiendo su interfaz en este lenguaje (IDL).
El cliente envía el pedido a su stub correspondiente, y queda esperando el resultado en forma pasiva. El stub transforma la invocación a una forma común para todos los objetos (en (en lenguaje IDL). Y la envía al ORB. El ORB determina la ubicación física del servidor y pasa el pedido al objeto Adapter. El objeto Adapter invoca al skeleton del servidor. El Skeleton transforma la invocación en IDL a una forma conocida por el lenguaje de implementación del objeto servidor y realiza dicha invocación. Al terminar el servicio, el resultado es retornado al cliente.
Invocación Estática
CORBA mantiene un depósito de interfaces, la cual almacena todas las interfaces del sistema
Invocación Dinámica
CORBA soporta:
Object Services: Servicios generales Common Facilities: Usuario final Domain Interfaces: Dominio específico Application Interfaces: Interfaces no estandarizadas Permite la comunicación entre el cliente y objeto en un ambiente distribuido
ORB residente en el e l Cliente e Implementación ORB Server ORB basado en Sistemas operativos ORB basado en Librerías
CLIENTE
Innovación Dinámica
Plantilla IDL
IMPLEMENTACION DEL OBJETO
Interfaz con el ORB
Esqueleto del IDL estático
Esqueleto Dinámico
NUCLEO DE ORB
Interfaz independiente de cualquier ORB Interfaz dependiente de ORB Pueden haber múltiples adaptadores de objeto Varias plantillas y un esqueleto para cada tipo de objeto
Adaptador del objeto
El repositorio de interfaces (IR) Objetos que representan la información IDL
La interfaz de invocación dinámica (DII)
Interfaz que la construcción dinámica de invocaciones
es el: Medio por el cual una implementación de un objeto en particular dice a sus potenciales clientes que operaciones están disponibles y como ellas podrían ser invocadas
OBJETIVO:
Mapear objetos CORBA dentro de lenguajes de programación particulares o sistemas de objetos
Describir la asignatura de los objetos que especifica
F U N C I O N E S
Generación e interpretación de las referencias a objetos. Invocación de métodos. Seguridad en las interacciones. Activación y desactivación de objetos e implementaciones.
Módulo que permite a las implementaciones de los objetos acceder a servicios ofrecidos por el ORB
Registro de las implementaciones. Exporta una interfaz pública y una interfaz privada
Referencia a los objetos Esqueleto
¿QUÉ ES? Logra que el programador no se ocupe de las instrucciones de programación remotas
Intermediario entre el cliente y el ORB Pedir servicios a las implementaciones de los objetos invocando operaciones específicas
Componente que actúa como servidor Mediador = Object Adpater
El servidor es el programa que contiene la implementación del objeto
Se identifica: Host, puerto e identificador del objeto
ESTRUCTURA DEL CLIENTE
ESTRUCTURA DEL SERVIDOR
Intermediario entre ORB y los objetos del servidor
Recibe llamadas del ORB y ejecuta los métodos correspondientes en el servidor sobre el objeto que corresponda.
El servidor busca el objeto definido (compara el esqueleto del método en el módulo esqueleto)
Código generado que el desarrollador tiene que rellenar para implementar los métodos del objeto.
SISTEMAS DISTRIBUIDOS
CORBA PARA SISTEMAS DE CONTROL
CORBA COMO PLATAFORMA DE DISTRIBUCIÓN E INTEGRACIÓN
CORBA proporciona una infraestructura y un modelo común desde donde los requisitos expresados en diferentes lenguajes CORBA ofrece un conjunto de mecanismos muy útiles a la hora de desarrollar aplicaciones distribuidas, junto con un soporte tecnológico suficientemente maduro como para construir aplicaciones robustas, eficientes y competitivas, a la vez que integrables con otros sistemas que cumplan estos estándares. Los sistemas que son desarrollados con tecnologías antiguas pueden ser integrados con las nuevas a través de CORBA. CORBA es una tecnología adecuada para implementar sistemas distribuidos y en particular es muy adecuada para la implementación de sistemas distribuidos de control porque simplifica el proceso de diseño, construcción, despliegue y mantenimiento cuando las aplicaciones superan un nivel mínimo de complejidad.