Some embedded systems cannot afford the luxury of object-oriented communication middleware due to memory constraints and real-time
requirements. Asynchrony, on the other hand, allows higher degrees of
concurrent processing in distributed systems as we have shown in the
project "Asynchrony in Middleware". However asynchrony is more complex
to program.
AMO will address the needs of DRE systems by providing a minimal ORB,
supporting core features of CORBA IDL interfaces, asynchronous
communication, real-time support, and legacy communication support (e.g.
queues and semaphores). Furthermore AMO will support hierarchical
networks to leverage the knowledge about the network layout the embedded
system designer has.
We believe in compliance to the CORBA standard as much as possible, but
deviation when necessary. An adaptor, designed for use on desktop
applications, will adapt any non-standard communication to the CORBA
standard to allow interoperability with other ORBs. We believe AMO
provides the best of both worlds, an embedded optimization for internal
communication and the versatility of the CORBA standard for external
communication.