ORBexpress
FAQs
Does ORBexpress® support the OMG CORBA Real-time Specification?
ORBexpress RT is our implementation of the CORBA Real-time Specification and includes the standard features as well as additional support for setting transport Quality of Service (QoS) levels. Some highlights of the standard include Distributed Priority Inheritance, Priority Banded Connections, resource partitioning, and preallocation controls. To view the complete standard, look at the CORBA Resources section for additional information.
How does ORBexpress RT and its real-time implementation differ from other ORBs?
The Real-time CORBA specification identifies interfaces and policies that an ORB must support in order to comply with the real-time specification. Building multi-threaded real-time software, including real-time ORB’s, requires knowledge of the characteristics of real-time systems and the careful use of resources and the mutexes protecting them. ORBexpress provides a ceiling locking protocol mutex used in the ORB, as well as by the developer.
ORBexpress supports replaceable transports, so you can replace the not-so-predictable TCP/IP with a transport more conducive to real-time behavior. Most importantly, ORBexpress was built from the “ground up”, with real-time internals – so it’s not just an Enterprise ORB ported to real-time operating systems.
What services does ORBexpress provide?
ORBexpress includes the CORBA services Names, Events and Lightweight Logging for many of our supported platforms.
What's the difference between ORBexpress for Ada, ORBexpress for C++, ORBexpress for Java and ORBexpress for C#?
ORBexpress for Ada, ORBexpress for C++, ORBexpress for Java and ORBexpress for C# are completely separate products.
They are licensed separately.
Each product shares a common architecture, yet is coded entirely in its native language to maintain consistency for threading, exceptions, etc.
How many objects or interfaces can ORBexpress support?
ORBexpress does not inherently limit the number of objects, interfaces, clients, servers, threads, or message sizes in your system, although we provide the ability to configure the ORB to optimize your system’s characteristics.
Limitations will, of course, exist due to the amount of system resources you have available.
Can I place ORBexpress RT on a non-real-time operating system? If I do, what type of results can I expect?
Yes, in fact many of our customers use ORBexpress RT on a non-real-time OS. The results you get will vary depending on which OS you’re using. Some non-real-time OSs give quite predictable results when configured properly.
What type of interoperability exists between ORBexpress and other ORBs supporting different languages?
The combination of IIOP and POA support, along with the features we support from the Interoperable Naming Service standard, ensure that ORBexpress operates with all other IIOP compliant CORBA products.
Does ORBexpress RT interoperate with other non-real-time ORBs?
One of the main requirements in the development of Real-time CORBA is to ensure that real-time ORBs interoperate with non-real-time ORBs. ORBexpress is carefully designed to ensure interoperability.
Many customers use ORBexpress RT for their real-time system requirements and use a non-real-time ORB for the enterprise connection.