Novos RRS: Round Robin Scheduling Environment – Time-Sliced Cooperative Multitasking
An Application Framework for Round Robin architectures where Background tasks have a set time limit
The Novos RRS Environment employs a multitasking model for Background tasks (BG tasks). In addition, Novos RRS offers a second mode of operation – the execution of Foreground tasks (FG tasks).
The Round Robin multitasking model is a form of Cooperative Task Scheduling but unlike FCFS scheduling, a BG task maintains control of the CPU only for a limited amount of time, ensuring democratic sharing of the CPU.
This enforced cooperation with the other tasks means that all of the tasks have access to the CPU in turn, ensuring the work of the application gets done in a timely and orderly manner.
Why use the Novos RRS Environment?
Round Robin scheduling is very easy to control and use. Interference from other BG tasks is eliminated, which simplifies debugging and testing. All BG tasks in the Novos RRS Environment share the same priority, executing is what is called “Round Robin” fashion, and every BG task in the Robin has a time quantum property. The Novos RRS Task Scheduler forces the task to give up CPU control so that the next eligible task can have its turn.
The Novos RRS Environment is useful for applications that have soft real-time control requirements because it avoids the long task/short response issue found in cooperative FCFS scheduling.
It’s the easy way to develop application code quickly and efficiently
Novos RRS provides:
- multitasking of Background tasks using Round Robin scheduling
- pre-emptive scheduling of all Foreground execution entities
- each BG task has its own stack and time quantum
- one stack for all Foreground entities
- data passing between the execution entities, including interrupt service routines
- recognition and synchronization of application code with external or internal events
- a standard model for interrupt servicing
- handling of time-based operations
- complete documentation available for sustainable system development and evolution
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
Robust Two-Level Interrupt Service Model
Novos RRS uses two-level interrupt Service model that is common to all Novos operating environments, 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 RRS Environment embodies a set of 78 Services that support ten classes. View the Services Matrix
The Novos RRS Environment is fully documented. We offer two separately available volumes of documentation for the Novos RRS Environment, for a small charge. A System Reference Guide explains the Novos RRS Environment design, its classes and how to use it. A Services Reference Guide gives a complete description of each Novos RRS Environment API. Get the code and the docs and see how all of it can help on your next application.