objective interface systems...embedded systems are constrained swap – size, weight and power...
TRANSCRIPT
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e CORBA for embedded
OBJECTIVE INTERFACE SYSTEMS
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
Why CORBA for Embedded Systems
Common Object Request Broker Architecture – CORBAOpen standard maintained by Object Management Group consortiumHigh performance, low footprint implementations
Why middleware?Standalone systems are a thing of the pastPlatform flexibility is essentialSoftware is becoming larger part of embedded systems
Why CORBA?Distribution – integrate into “system of systems” and enterprise management environmentPortability – migrate across processors, operating systems, communications infrastructuresInteroperability – interoperate with older models and new enterprise systems
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e
Embedded systems are constrainedSWaP – size, weight and powerHigher unit counts – different economics
Different processing infrastructuresProcessors PeripheralsCommunications
CORBA/e – “CORBA for embedded”Standalone specification Proven performance and utility in the embedded marketRetains interoperability
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Overview
Purpose – to reduceResource usage – to extend CORBA’s applicability to systems constrained by
FootprintCPU
Complexity of implementation – higher assuranceComplexity of specification – fewer choices
Result - two profiles containing “static” parts of CORBACompact profile – embedded 32-bit µprocessorsMicro profile – smaller µprocessors, high-end DSPs
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Profiles Overview
CORBA/e Compact ProfileReplaces “minimum CORBA” profileIncludes
“Static” parts of CORBAEssential parts of Real-time CORBABasic services – Naming, Events, Logging
CORBA/e Micro Profile Restricts typesFurther simplifies serversReal-time predictability
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Table of Contents
1. CORBA Overview2. Object Model 3. OMG IDL Syntax and
Semantics4. Repository IDs 5. ORB Interface 6. Object Interfaces7. Policies8. The Portable Object Adapter9. Real-time
10. Naming Service11. Event Service12. Lightweight Logging13. General Inter-ORB Protocol14. CDR Transfer Syntax15. GIOP Messages16. Internet Interoperability
Protocol (IIOP)A. OMG IDL Tags and
ExceptionsB. Legal Information
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
1. CORBA Overview2. Object Model3. OMG IDL Syntax and Semantics
Full grammar must be accepted (parsed)Can ignore
context clauses (in errata)abstract interfacesvalue boxescustom valuetypesvalue “supports” interfaceimport
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
4. Repository IDs – OMG IDL formats only5. ORB Interface
No dynamic TypeCode creationNo domain managersAdded back: shutdown, destroy
6. Object Interfaces Object - added back: is_a, nonexistentValueType Semantics
Lightweight valuetypeNo “polylithic” valuetype instances
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact ProfileLightweight Value Types
Syntactically eliminates Value boxesAbstract interfacesDerivation from interfaces
Semantically eliminate “polylithic” valuetypes containingOther valuetypesType Any – which could contain other value typeAny other components (structs,unions, etc.) transitively containing
Other valuetypesType Any
Eliminates need for garbage collection (complexity, unpredictability)
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
7. Policies Policy objectsEffectivenessMessaging QoS Policies
Rebind supportSyncScope supportRoundTrip Timeout support
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
8. The Portable Object Adapter “Static parts” of POA specification
A la MinCORBANo servant managersNo default servantsNo POA policies to support above
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
9. Real-time Features “Hard real-time” parts of RTCORBA
Priorities DefinitionMappingClient propagated model
MutexesBindingBandingInvocation timeout
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
Services10.Naming Service11.Event Services – Untyped only12.Lightweight Log Service
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Compact Profile
Interoperability13.General Inter-ORB Protocol (GIOP)14.CDR Transfer Syntax15.GIOP Messages16.Internet Interoperability Protocol (IIOP)
AnnexesA. OMG IDL Tags and ExceptionB. Legal Information
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Micro Profile
1. CORBA Overview2. Object Model3. OMG IDL Syntax and Semantics
Full grammar must be accepted (parsed)Can ignore
context clauses (in errata)abstract interfacesvalue typestype Anyimport (in errata)
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Micro Profile
4. Repository IDs – OMG IDL formats only5. ORB Interface
All sub-clauses requiredNo dynamic TypeCode creationNo domain managersAdded back shutdown, destroy
6. Object Interfaces Object - added back: is_a, nonexistentNo ValueType Semantics
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Micro Profile
7. Policies All sub-clauses requiredPolicy objectsEffectivenessMessaging QoS Policies
Rebind supportSyncScope supportRoundTrip Timeout support
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Micro Profile
8. The Portable Object Adapter Single root POA – default policies“Static parts” of POA specification
Ala MinCORBANo servant managersNo default servantsNo POA policies to support above
9. Real-timeMutexes only
Services – not required
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
CORBA/e Micro Profile
Interoperability (common with CORBA/i)- all sub-clauses13.General Inter-ORB Protocol (GIOP)14.CDR Transfer Syntax15.GIOP Messages16.Internet Interoperability Protocol (IIOP)
AnnexesA. OMG IDL Tags and ExceptionB. Legal InformationC. Acknowledgement
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
Summary
CORBA/e Compact ProfileCompact, yet powerful – targeted to resource-constrained 32-bit µpDeterministic
Combines static core of CORBA with core of Real-time CORBAPriority propagation, priority banding
Server options – transient or persistent retained servantsCORBA Services – Naming, Events, LoggingInteroperable – native IIOP
CORBA/e Micro ProfileTruly micro – mobile or low-power µp, high-end DSPDeterministic core – real-time internalsCompact server-sideInteroperable – native IIOP
REAL-TIME AND EMBEDDED MIDDLEWARE PRODUCTS
© 2004 Objective Interface Systems, Inc.
Further Information
CORBA/e Specificationhttp://www.omg.org/cgi-bin?doc/realtime/2006-02-02
PIDL & IDL for profiles http://www.omg.org/cgi-bin?doc/realtime/2006-01-03