Developing the control and payload software on the top of a middleware provides the maximum of modularity today.
On top of the kernel we have the middleware (layer 3) which enables communication between BBs using a publisher subscriber multicast protocol.
And on the top of the middleware the user may implement his applications (layer 4) as a distributed software network of simple BBs.
A networkCentric core avionics machine consists of several harmonized components which work together to implement dependable computing in a simple way.
In an NetworkCentric system we have a software network of BBs and a hardware Network interconnecting vehicles (radio communication), computers inside of vehicles (buses and point to point links), intelligent devices (attached to buses) and simple devices attached to front end computers.
For instance, several replicas of the same software can run in different nodes and publish the result using the same topic, without knowing each other.
[1] Rodos enables the user to write realtime applications for different architectures in an easy, efficient way.
The class Thread is extended by a custom run() procedure, which writes Hello World to the standard output with PRINTF.
Example: The Publisher-Thread post every three seconds an ascending counter value, while the Subscriber-Thread simply displays the received integer value.
Supported instruction set architectures: Furthermore, Rodos can run as a guest on a different host operating system.