Does your Application use an Arm CPU?
The OS Dilemma
1) General purpose OS and RTOS products are not best suited to real-time applications using small to medium power CPUs. They try to be everything to everyone, covering applications from simple to complex and processors from low power to high power. As a result, they are complicated, “top-down” products, needing to be pared back to suit the application in hand.
2) Linux, for example, is not designed for low-latency, real-time responses to external or internal events. And an RTOS could be scaled back to say a few services, but what’s the point? – most of the useful features would be lost.
3) Novos is different – it is focused on the huge, ever-growing market of low to medium power CPUs. In particular CPUs from market leader Arm.
4) This focus on CPUs like the Arm range enables Novos to take two unique approaches:
• A “ground-up” approach – simply select only the Services the application requires, making it a very quick and painless set-up.
• A family of FIVE pre-configured, ready-to-go Novos environments optimised for five different, widely used embedded organisations (First Come First Served, Round Robin etc – see below).
5) The Services in each of the Novos environments are very flexible and very powerful. Uniquely and very importantly, the Services are optimised for the organisation they support. This is a very important point and no RTOS or OS offers this optimisation. The number of Services ranges from 31 to 96, depending on the chosen environment. Although Novos is simple to set up, it is very powerful in terms of capability, supporting both simple and complex applications.
6) Novos documentation is comprehensive and very clear, so that if the developer leaves the company, another developer can easily take over.
A Novos Engine for every Application
Two of the five Novos environments are based on “Turbocharged Super Loop” and “Super Loop on Steroids” (Novos FB and Novos EFB). The other three use multitasking architectures of First-Come-First-Served, Round Robin and Pre-emptive Priority Scheduling (Novos FCFS, Novos RRS, and Novos PPS, respectively). All five Novos environments are off-the-shelf, fully documented, Ready-to-Go products taking only a few minutes to set up. What you need is a Novos “Application Engine”. More…
Let’s look at one of the Five Novos Environments:
Super Loop on Steroids
One of the five Novos Environments, Novos EFB, is based on the Super Loop architecture, but Turbocharges it by adding a new and very efficient means for high priority foreground operations. EFB offers a highly-organized, rule-based way of providing order to handling events such that timeliness is not impacted, race conditions eliminated and spaghetti code avoided. And it’s “Ready-to-Go”.
Novos EFB has only one task – the Background. The Background task is the application (except for what goes on at the Foreground level). There is no system requirement as to how the application must be structured as compared to the strict structuring of an RTOS task.
There are 53 bespoke Novos services supporting five object classes in EFB. But those can be whittled down to a very few and still have the organization and responsiveness to support the application.
Novos EFB Foreground Tasks – Prioritized Multitasking
The clever bit is that Novos EFB adds a new, unique and very efficient means for prioritized multitasking amongst the Foreground tasks. Those tasks result from external or internal events that take place and need timely handling such as processing data from an interrupting device or taking action if a queue reaches its limit.
Novos EFB is Very Organised and uses just a Single Stack
More than a simplistic callback model, Novos EFB provides a highly-organized, rule-based way of giving order to handling Foreground tasks so that timeliness is not impacted, race conditions eliminated and spaghetti code avoided. An RTOS requires each task to have its own stack, but Novos EFB uses only a single stack for all Foreground operations, making it highly efficient with respect to RAM utilization. More…
Impressively, Novos EFB provides Hard Real-Time performance
Because of the use of a simple, but turbocharged Super Loop architecture, EFB can provide hard real-time performance. This is achieved through the use of bespoke Novos foreground entities, regardless of what the application is doing in the background – a very efficient way to achieve a low level prioritization of background processes. The result is hard real-time performance, making Novos EFB a very powerful and excellent fit for most small applications.
FREE Source Code and Very Quick to Set Up and Use
Novos is available in source code form for FREE. User Manuals are offered at a modest cost. Configuration is minimal, if any, because Novos EFB comes with a default configuration, enabling you to start using Novos with minimum effort. Coupled with our Getting Started Guides, you get to concentrate on the application.
In the end, it’s all about money
Applications without documented organization and coding are most likely to wither and die, if they even make it to market at all. And all the monies spent on them are lost. Novos EFB is a way to secure the investment and the product’s future. Why waste money? Or product reliability? Or product or company reputation? Novos EFB reduces the risk of failure. This benefits both the company and the developer. More…
If Novos EFB is not quite what your application needs, then have a look at the whole Novos family:
Novos EFB – Extended Foreground / Background – 53 Services
Super Loop Background with pre-emptive priority scheduling of Foreground entities, including a highly responsive model for the management of interrupt-driven devices, time-based events and queued data passing. More…
Novos FCFS – First Come First Served – 76 Services
Simple, cooperative multitasking in which Background tasks are scheduled the order of arrival plus pre-emptive, priority scheduling of Foreground entities. More…
Novos PPS – Pre-emptive Priority Scheduling RTOS – 96 Services
Comprehensive multitasking RTOS kernel using pre-emptive priority, FCFS and RRS scheduling of Background tasks plus pre-emptive priority scheduling of Foreground entities. More…
Novos Compiler Compatibility