[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
omniORB
Hello Datafolks,
The ORB I mentioned (MICO) doesn't look interesting to us. (They don't
mention multithreading and say performance isn't a goal.) omniORB,
however, looks very interesting. They seem to pay a lot of attention to
threads and exceptions. Which makes us feel all warm and cozy inside,
right?
Is this useful to us?
- Henrik
Ps. note that omniORB is missing some CORBA features (see below), but I
can't tell if we can live without them, so please have a look.
The following info was taken from:
http://www.orl.co.uk/omniORB/omniORBTechnical.html
Technical highlights
* C++ language binding is supported.
* The IDL compiler uses the compiler front end from Sun, and generates C++
language mapping conforming to the latest revision of the CORBA
specification.
* The Internet Inter-ORB Protocol (IIOP) is used as the native protocol.
* The omniORB2 runtime is fully multithreaded. It uses native platform
thread support encapsulated with a small class library, omnithread, to
abstract away from differences in native thread APIs.
* `Typecode' and the type `Any' are supported.
* A COS Naming Service, omniNames, is provided.
* The following platforms are supported:
Solaris 2.5/ Sun SparcCompiler C++ version 4.2
Digital Unix 3.2/ DEC C++ compiler version 5.5
x86 Linux 2.0 / GNU C++ compiler version 2.7.2 / Linuxthreads 0.5
x86 Windows NT / Windows 95 / Visual C++ version 5.0
* Ports to the following platforms are available. These ports are done by
external contributors and have been integrated into the source tree. For
these platforms, no pre-compiled binary is available.
IBM AIX 4.2/ IBM C Set++ 3.1.4
HPUX 10.20/ aC++ (B3910 A.01.04)
OpenVMS Alpha 6.2/ DEC C++ compiler 5.5 (UCX 4.1 ECO 8)
OpenVMS Vax 6.1/ DEC C++ compiler 5.5 (UCX 4.0 ECO 1)
NextStep 3.3/ gcc-2.7.2
* This release has also been tested with egcc-1.0 that has been patched to
support thread-safe exception handling.
* The ports to Mac OS and SGI Irix 6.x are known to exist. However, the
ports have not been merged into the source tree yet.
* It should be straightforward to port omniORB2 to any platform which
supports POSIX style threads, BSD style sockets and has a decent C++
compiler which supports exceptions.
* It has been tested for interoperability via IIOP with other ORBs, such
as Iona Orbix 2.2 MT, Iona OrbixWeb 2.0.1, Visigenic Visibroker
for C++, and HP ORB Plus 2.5.
Work in progress
omniORB2 is not yet a complete implementation of the CORBA core. The
following features are not supported in the current release.
* Dynamic Any (DynAny) not yet supported. This is currently being
implemented. Please visit the omniORB home page for latest updates.
* The Dynamic Invocation Interface (DII) is not supported.
* The Dynamic Skeleton Interface (DSI) is not supported.
Missing features
The following features are missing from omniORB2. We are not currently
planning on adding support for these features.
* The BOA only supports the persistent server activation policy. Other
dynamic activation and deactivation polices are not supported.
* omniORB2 does not has its own Interface Repository.
___________________________________________________________
Henrik Nordberg <HNordberg@lbl.gov> http://nordberg.lbl.gov
Scientific Data Management Research & Development Group
Lawrence Berkeley Laboratory