Novos EFB: Extended Foreground/Background Environment – Super Loop on Steroids
An Application Framework for Super Loop architectures, when applications need even more power
The Novos EFB Application Framework enhances the classic Super Loop architecture by improving its utility – you get an efficient set of 53 highly flexible Services to provide the functionality you’re likely to use, including a highly responsive model for the management of interrupt-driven devices, time-based events and queued data passing.
Novos EFB takes the simple but proven Foreground/Background organization of the classic Super Loop design and extends it. Along with the Deferred Interrupt Handlers and Event Action Routines found in the Novos FB Framework, we’ve added high priority Foreground tasks and allow pre-emptive scheduling amongst all Foreground execution entities. The Super Loop is still retained as the sole Background entity.
Highly flexible services for prioritized Foreground operations
Foreground tasks have no context that requires saving and restoring, except during a pre-emption, thereby minimizing scheduling latency. Between their run-to-completion execution model, their prioritization and their efficient scheduling, you have everything working in your favor.
You can assign all Foreground tasks to a single priority and the Scheduler will select them First Come, First Served. Or have all Foreground tasks at a single priority but have one very high priority task that can pre-empt the others. Or, you can have different Foreground tasks at different priorities. In all cases, the Scheduler sorts out which Foreground entity gets CPU control, giving you the responsiveness you want. Lots of possibilities with Novos EFB.
You have at your disposal an efficient design supported by a set of highly flexible services for prioritized Foreground operations and Background handling of external or internal events and data movement.
And it’s all done with a single stack for use with tight RAM budgets.
Why Use the Novos EFB Application Framework?
You can do a lot with Super Loop design but the Foreground tasks in the Novos EFB Framework enable complex applications. Running a DSP algorithm? The FG tasks are ideal for it. Need to build a Finite State Machine? Again, the Foreground tasks are just the ticket.
Provable Hard Real-Time Performance
Do you need real-time responses to external events or interrupts? Couple the event to a Foreground task and get the responsiveness you need. More
It’s the easy way to develop application code quickly and efficiently
The Novos EFB Application Framework gives you choices for both Foreground and Background operations. You use Foreground entities to service interrupts and take action on the occurrence of specified events. The Background is the Super Loop and Novos EFB imposes no design requirement on the model you choose.
Foreground operations take precedence over Super Loop operations to provide responsiveness that approaches real-time performance. In short, Novos EFB is simply a flexible Application Framework – a library of 53 Services ready to apply to your Application – and it requires only one stack, conserving precious RAM.
Novos EFB provides:
- one stack for both Foreground and Super Loop operation
- a standard model for interrupt servicing that simplifies device driver design
- recognition and synchronization of application code with external or internal events
- data passing between the application code entities, including interrupt Service routines
- handling of time-based operations
- complete documentation available for sustainable system development and evolution
Robust Two-Level Interrupt Service Model
The Novos EFB Application Framework uses two-level interrupt Service model that is common to all Novos Frameworks, providing a robust design and ease of handling interrupts. More
Minimized Event Jitter
“Jitter” can be defined as the variable response time to each instance of an event. Novos virtually eliminates jitter by supporting preemptively scheduled Foreground activities such as Event Action Routines (EARs) that respond to events in a timely, predictable manner. More
Highly Flexible Services
The Novos EFB Application Framework embodies a set of 53 Services that support eight classes. View the Services Matrix
The Novos EFB Environment is fully documented. We offer two separately available volumes of documentation for the Novos EFB Environment, for a small charge. A System Reference Guide explains the Novos EFB Environment design, its classes and how to use it. A Services Reference Guide gives a complete description of each Novos EFB Environment API. Get the code and the docs and see how all of it can help on your next application.