Professional Documents
Culture Documents
• Distributed Programming
• Middleware
• Introduction to CORBA
• What is the purpose / goals of CORBA?
• Generic Architecture
Distributed Programming
Middleware (CORBA)
2
12
Middleware
3
12
Middleware
6
12
Introduction to CORBA
A middleware
Vendor-independent architecture;
Standard architecture;
7
12
Introduction to CORBA
CORBA enables:
10
12
What is the purpose / goals of CORBA?
11
12
Generic Architecture
Client Server
Object Object
Middleware
12
12
02 CORBA architecture
• CORBA Architecture
• CORBA Framework Elements
• CORBA Implementation
• Interface Definition Language (IDL)
• Internet Inter-ORB Protocol (IIOP)
CORBA Architecture
3
19
CORBA Framework Elements
Interface
Definition
for static interface definitions
Language
(IDL)
4
19
CORBA Framework Elements
5
19
CORBA Implementation
An Object Request
ORB Broker (ORB)
implementation
An Interface Definition
IDL Language compiler
CORBA
Common Frameworks
facilities
7
19
Interface Definition Language (IDL)
Language Independence
8
19
Interface Definition Language (IDL)
9
19
IDL Compiler
IDL Definitions
IDL Compiler
Stubs Skeletons
10
19
IDL Compiler
11
19
Object Request Broker (ORB)
12
19
Object Request Broker (ORB)
13
19
Object Request Broker (ORB)
Communication infrastructure:
Communication type:
14
19
Object Request Broker (ORB)
15
19
Object Request Broker (ORB)
16
19
Internet Inter-ORB Protocol (IIOP)
18
19
Internet Inter-ORB Protocol (IIOP)
Client stub
• Each stub represents an object operation
which a client invokes in a language-
dependent manner.
• A client may dynamically construct and
invoke objects which can represent any
object operation.
2
13
CORBA Components
Implementation Skeleton
3
13
CORBA Components
Object Adapter
Purpose is to interface an object's implementation with its
ORB.
Each object adapter provides access to those services of an
ORB used by a particular type of object implementation.
activation deactivation
Object creation
ORB Interface
5
13
Stub
Provides interface between client object and ORB
6
13
Skeleton
Provides interface between server object and ORB
7
13
CORBA Application
2 Compile interface
3 Implement interface
4 Instantiate server:
Register object as a CORBA object
5 Instantiate client:
8 Invoke CORBA object
13
When to use CORBA
Use CORBA if
interoperability is important.
Performance is important.
9
13
Standard CORBA services
Naming
Supports federation.
Notification
10
13
Standard CORBA services
Interface repository
Trading
11
13
IDL and its Python mapping
#include #define //
/ /* */
13
13