Corba

Only available on StudyMode
  • Download(s) : 73
  • Published : February 19, 2013
Open Document
Text Preview
CORBA
Prepared By
Arti Singh

What CORBA is???
• CORBA is not a distributed system but rather the specification of DS, drawn up by OMG(Object Management Group).
• An important goal of the OMG with respect to CORBA was to define a distributed system that could overcome many of the
interoperability problems with integrating networked applications. • At present, implementations of CORBA version 2.4 are widely deployed, whereas the first CORBA version 3 systems are becoming available.

 The CORBA specification was developed by the Object Management Group (OMG).
 The initial CORBA specification came out in 1992.
 Version 2.0, which defined a common protocol for specifying how implementations from different vendors can communicate, was released in the mid-nineties.
 The current version of CORBA is 3.0, which introduced the CORBA Component Model.
 Today, CORBA serves as middleware for a variety of large enterprise level applications.
 CORBA, as defined by the OMG, is a standard or specification and not a particular piece of software.

What CORBA do???
• Enables an object written in one programming language, running on one platform to interact with objects across the network that are written in other programming languages and running on other
platforms.

• E.g. a client object written in C++ and running under Windows can communicate with an object on a remote machine written in Java running under UNIX.

CORBA Architecture

A more General Organization

The Primary Elements
• IDL
▫ Interface Definition Language

• Client / Server CORBA Objects
▫ Abstract objects based upon a concrete implementation

• ORBs
▫ Object Request Brokers

• GIOP / IIOP
▫ General and Internet Inter-Object Protocols

IDL (Interface Definition Lang.)
• Objects and services are specified in the IDL.
• IDL is similar to other interface definition languages in that it provides a precise syntax for expressing methods and their parameters • An interface is a collection of methods, and objects specify which interfaces they implement.

• Interface specifications can be given only by means of IDL. • C++ like syntax
• OMG has defined language mappings for:
▫ C, C++, Java, COBOL, Smalltalk, ADA, Lisp, Python, and IDLscript

Highlighted IDL Features
• Pass by reference and by value
• In, out, and inout parameters
• Inheritance
• Throwing of exceptions

• The Any Type
• Callbacks
▫ Enables Peer-to-Peer Object Communication.
• Also supports:
▫ structs, unions, enumerations, all c++ scalars, arrays, sequences, octets, strings, constants, and typedefs.

The Primary Elements
• IDL
▫ Interface Definition Language

• Client / Server CORBA Objects
▫ Abstract objects based upon a concrete implementation

• ORBs
▫ Object Request Brokers

• GIOP / IIOP
▫ General and Internet Inter-Object Protocols

Client/Server CORBA Object
• Abstract
▫ Do not have their own implementation. The elements of a CORBA object (interface, implementation, and location) are held rendered via other elements.

• Implemented via a Servant
▫ A servant is a block of code (usually an instance of a class) which implements the public interface of the CORBA object. Depending on the server policies, there may or may not be multiple instances of the servant and it may or may not be multi-threaded.

• Configured in code or at server startup
▫ Unlike COM+ and EJB the policies for a CORBA object which control things such as Security, threading, and persistence are not console configurable

• Objects: individual units of running software that combine functionality and data, and that frequently (but not always) represent something in the real world. Typically, there are many instances of an object of a single type. • E.g., an e-commerce website would have many shopping cart object instances, all identical in functionality but differing in that each is assigned to a different customer, and contains data representing the...
tracking img