CS 775875: Fall 2001 - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

CS 775875: Fall 2001

Description:

This is a multi-language RMICORBA object model: (I) has an IDL ... argument sin request messages and marshalls exceptions and results in reply messages. ... – PowerPoint PPT presentation

Number of Views:35
Avg rating:3.0/5.0
Slides: 9
Provided by: muk1
Learn more at: https://www.cs.odu.edu
Category:
Tags: fall | marshalls

less

Transcript and Presenter's Notes

Title: CS 775875: Fall 2001


1
CS 775/875 Fall 2001
  • Chapter 17 CORBA Case Study

2
Terminology
  • CORBA---Common Object Request Broker Architecture
  • ORB--- Object Request Broker
  • OMG---Object Management Group
  • IDL---Interface Definition language
  • RMI---Remote Method Interface
  • GIOP---General Inter-ORB protocol

3
CORBA RMI
  • This is a multi-language RMICORBA object model
    (I) has an IDL interface (ii) has a remote object
    reference, and (iii) can respond to invocations
    of methods in its IDL interface
  • CORBA IDL (I) in, out, and inout parameter
    types. The return value is an additional out
    parameter.
  • Any parameter whose type is specified by the name
    of an IDL interface is a reference to a CORBA
    object and the value of a remote object reference
    is passed.
  • Arguments of primitive and constructed types
    (e.g., struct) are copied and passed by value.
  • Exceptions Defined in the interfaces and thrown
    by their methods
  • Invocation semantics Default is At-most-once
    semantic. But a client could also specify maybe
    semantics so it is not blocked.

4
CORBA RMI (contd)
  • CORBA Naming Service Rebind for servers to
    register the remote object references by name and
    resolve for clients to look them up by name.
  • Callback Similar to AFSs callbacks where a
    server callbacks a client whenever an interesting
    event has occurred. For this to happen,
  • (i) The client creates a remote object that
    implements an interface that contains a method
    for server to call. This is a callback object.
  • (ii) The server provides an operation
    allowing interested clients to inform it of the
    remote object reference of their callback
    objects. These are maintained in a list.
  • (iii) Whenever an event of interest
    occurs, the server calls the remote objects in
    its list.

5
CORBA Architecture
  • See Fig. 17.6 http//www.cdk3.net/ig/slides/Chapte
    r17Slides.pdf
  • ORB Core Similar to communications module in
    java RMI
  • Object adapter (I) Creates remote object
    references for CORBA objects (ii) Dispatches each
    RMI via a skeleton to the appropriate servant
    (iii) Activates objects.
  • Each CORBA object is registered with its object
    adapter.
  • Skeletons RMIs are dispatched via the
    appropriate skeleton to a particular servant, and
    the skeleton unmarshalls the argument sin request
    messages and marshalls exceptions and results in
    reply messages.

6
CORBA Architecture (Contd)
  • Client stubs/proxies These are in the client
    language. They marshal the arguments in
    invocation and unmarshall exceptions and results
    in replies.
  • Implementation repository (I) Stores a mapping
    from the names of object adapters to the
    pathnames of files containing object
    implementations.(ii) Object implementations and
    object adapter names are registered with the
    implementation repository when server programs
    are installed. 9iii) When object implementations
    are activated in servers, the hostname and the
    port number of the servers are added to the
    mapping.
  • Interface repository (i) Provides information
    about registered IDL interfaces to clients and
    servers that require it. (ii) For an interface,
    it can supply the names of the methods and for
    each method, the names and types of arguments and
    exceptions. (iii) Not all ORBs provide an
    interface repository. For example, applications
    that use static invocations with stubs and IDL
    skeletons do not require an interface repository.

7
CORBA Architecture (Contd.)
  • Dynamic invocation interface (I) Allows clients
    to make dynamic invocations on remote CORBA
    objects. It is used when it is not practical to
    employ proxies. (ii) The clients can obtain from
    the interface repository the necessary
    information about the methods available for a
    given CORBA object and then construct an
    invocation with suitable arguments to be sent to
    the server.

8
CORBA Services
  • Naming service
  • Event service and Notification Service
  • Security Service
  • Trading Service
  • Transaction service and concurrency control
  • Persistent object service
Write a Comment
User Comments (0)
About PowerShow.com