1 / 17

CORBA (Common Object Request Broker Architechture)

CORBA (Common Object Request Broker Architechture). Aniket Prabhune Varun Saini Balaprasuna Chennupati Lally Singh. CORBA. Day1: Aniket : Introduction, OMA, ORB Core, OMG IDL, IDL Stubs and Skeletons Varun : Interface Repository, Dynamic Invocation and Dispatch (DII, DSI) Day2:

minh
Download Presentation

CORBA (Common Object Request Broker Architechture)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CORBA (Common Object Request Broker Architechture) • Aniket Prabhune • Varun Saini • Balaprasuna Chennupati • Lally Singh

  2. CORBA • Day1: • Aniket : Introduction, OMA, ORB Core, OMG IDL, IDL Stubs and Skeletons • Varun : Interface Repository, Dynamic Invocation and Dispatch (DII, DSI) • Day2: • Prasuna : Object Adapters, Inter-ORB protocols (IIOP/GIOP), Services (Event, Naming, Trading, Transaction) • Lally: COM vs CORBA, QoS, Examples and Applications

  3. CORBA • Heterogeneous and Open Systems • Engineering tradeoffs • Cost Effectiveness • Legacy Systems • Need for integrating diverse applications within Distributed heterogeneous environments [SV97]

  4. OMG (Object Management Group) • Formed in 1989 to develop, adopt and promote standards for the development and deployment of applications in distributed heterogeneous environments. • Largest software consortium in world with 800 + developers, vendors and end users on member list • CORBA – Industry Standard for open distributed processing [SV97]

  5. OMA (Object Management Architecture) • Object Model and Reference Model • Object Model • Defines how objects distributed across a heterogeneous environment can be described • Object is an encapsulated entity with a distinct immutable identity whose services can be accessed only through well defined interfaces • Object References [SV97]

  6. OMA Reference Model • Characterizes the interactions between the objects • Interface Categories in OMA Reference Model Application Interfaces Domain Interfaces Object Request Broker Object Services [ACP99]

  7. OMA Object Frameworks AI OS DI DI AI ORB DI AI OS OS AI = Application Interface OS = Object Service DI = Domain Interface ORB = Object Request Broker [ACP99]

  8. Features of CORBA: • ORB Core • OMG Interface Definition Language • Language Mappings • Stubs and Skeletons • Interface Repository • Dynamic Invocation and Dispatch • Object Adapters • Inter-ORB protocols • Services [SV97]

  9. Relation between features: Client Application Server Application Static Stub ORB Interface ORB Interface Sktn DSI OA DII n/w Server ORB Core Client ORB Core IDL Dependant Same for all applications Multiple OAs [ACP99]

  10. ORB Core • Deliver request to target object • Return response to the clients • Transparent Client/Object Communication • Object Location • Object implementation • Object Execution State • Object communication mechanism [SV97]

  11. IDL (Interface Definition Language) • Interfaces are defined in the OMG IDL • Language-Independent declarative language • eg: // OMG IDL interface Factory { Object create(); }; [SV97]

  12. IDL • Includes • Built-in Types: long, short, float, double, char, boolean, octet, enum, etc • Constructed Types: struct, union • Template Types: string, sequence, fixed point decimal • Interface Inheritance: Open-Closed Principle • Object Interface [SV97]

  13. Language Mappings • Determines how the OMG IDL features are mapped to the facilities of a given programming language • e.g.: [SV97]

  14. Stubs and Skeletons IDL interface Stub Compiler Stubs (Client Side) Skeletons (Server Side) • Fixed for a given language and interface • Hide the ORB from application programmer [NE95]

  15. Marshalling & Unmarshalling • eg: Acct -> List(); program language request buffer client stub client ORB marshalling n/w buffer target object skeleton server ORB operation invocation unmarshalling [SV97] [NE95]

  16. Design Patterns (Stubs and Skeletons) • Connect programming Language world to the underlying ORB transparently • Stub adapts function call style of its language mapping to the request invocation mechanism of the ORB • Skeleton adapts request dispatching mechanism of the ORB to the upcall method form expected by the object implementation • Form of Adapter and Proxy patterns • Proxy: Provide a surrogate or placeholder for another object to control access to it • Adapter: Convert the interface of class to another interface clients expect [SV97] [DP95]

  17. References: • [SV97] Vinoski, S., CORBA: Integrating Diverse Applications Within Distributed Heterogeneous Environments IEEE Communications Magazine, Vol. 35, No. 2, February 1997 • [NE95] Edwards, N., CORBA: An Industrial Approach to Open Distributed Computing • [ACP99] Henning, M., Vinoski, S., Advanced CORBA Programming with C++, Addison Wesley, 1999. • [DP95] Gamma Erich., Helm Richard, Johnson Ralph, Vlissides, John, Design Patterns: Elements of Reusable Object-Oriented Software,Addison Wesley, 1995.

More Related