CORBA
Ashwini patil
CORBA
What is CORBA?
CORBA: Common Object Request Broker Architecture.
CORBA is a distributed object technology.
Objects call operations (methods) on other objects,
either locally or on a remote objects.
CORBA provides interoperability between vendors and
languages (e.g. objects developed in
one programming language like C++ may call
operations on objects developed in another
language like Java).
CORBA Architecture
Application software
client Object implementation
skeleton Object
stub DLL Adapter
adapter
Object Request Broker, (ORB)
2. CORBA Elements
ORB: The Object Request Broker dispatches
operation calls to the right server object.
Stub: The stub is a component that connects the
client object to the ORB.
Skeleton:
The skeleton is a server-side component that,
like the client stub, connects the server object to
the ORB.
CORBA IDL
IDL (Interface Description Language) defines an object
interface in an abstract and implementation neutral way.
The IDL of an object represents an interface contract.
This separates interface definition from
the interface implementation.
The IDL compiler generates stub / skeleton code for
specific languages (=language mapping or
language binding).
Language mappings exist for a range of languages (Java,
C++, Python, Ruby, COBOL etc.).
CORBA Services
APIs for low-level, common tasks
Life Cycle Service
creating, copying, moving, removing objects
Naming Service
Register objects with a name
Look up objects by name
Copyright © 1998 Purple Technology, Inc.
CORBA Services
Concurrency Control Service
Obtain and release exclusive locks
Transaction Service
Two-phase commit coordination
Supports nested transactions
Persistence Service
Storing objects in a variety of databases
RDBMS, OODBMS, file systems
Copyright © 1998 Purple Technology, Inc.
CORBA Services
Security Service
Authentication, ACLs, encryption, etc.
Event Service
Uncoupled notifications
Copyright © 1998 Purple Technology, Inc.
CORBA Services
Relationship
Externalization
Query
Licensing
Properties
Time
Trader
Collection
… and so on…
See what I mean about it never being implemented?
Copyright © 1998 Purple Technology, Inc.
CORBA Facilities
Frameworks for specialized applications
Distributed Document Component Facility
OpenDoc
In progress:
Agents
Business Objects
Internationalization
Copyright © 1998 Purple Technology, Inc.
Advantages of CORBA
Server Transparency:-
The client is, as far as the programming model is
concerned, ignorant of the existence of servers. The
client does not know (and cannot find out) which
server hosts a particular object, and does not care
whether the server is running at the time the client
invokes a request.
Presentation By :- Nupur Makhija, CSE 7th se
Advantages of CORBA
Language Transparency :-
Client and server can be written in different
languages. This fact encapsulates the whole point of
CORBA; that is, the strengths of different languages
can be utilized to develop different aspects of a system,
which can interoperate through IDL. A server can be
implemented in a different language without clients
being aware of this.
Presentation By :- Nupur Makhija, CSE 7th se
Advantages of CORBA
Implementation Transparency :-
The client is unaware of how objects are implemented.
A server can use ordinary flat files as its persistent
store today and use an OO database tomorrow,
without clients ever noticing a difference (other than
performance).
Presentation By :- Nupur Makhija, CSE 7th se
Advantages of CORBA
Architecture Transparency :-
The idiosyncrasies of CPU architectures are hidden
from both clients and servers. A little-endian client
can communicate with a big-endian server with
different alignment restrictions.
Presentation By :- Nupur Makhija, CSE 7th se
Thank You