Nucleos is a new runtime system for ultra-lightweight embedded systems. Central to Nucleos is a dispatcher based on the concept of e threaded code, which enables layers of abstraction from the runtime system and interrupt handlers to application tasks to be composed in a structured, powerful way, all with minimal program code. When used in conjunction with models of computation with behavioral transparency such as synchronous dataflow (SDF), Nucleos can support efficient memory allocation policies for multiple communicating actors with minimal runtime overhead. This recursive structure also lends itself to in-field code update and dynamic execution. Nucleos's low runtime overhead and low RAM/ROM requirements enable it to run on compact platforms previously unsupported by the most popular sensor OSes while still providing high flexibility and composability. In some cases, applications running on Nucleos actually outperform hand-crafted code running without an OS, thanks to non-obv...
Jiwon Hahn, Pai H. Chou