Novos Features

Developers of embedded systems that use resource-constrained processors often have to make a choice when it comes to an operating environment for their application – Don’t use anything, or, cut an available RTOS down to size, or, custom build something.

The goal is simply to get a suitable architecture with the features and services that fit the application’s requirements. Usually, these choices are not simple and can have significant cost or risk factors associated with them.

Embedded Environments Co. offers you another choice – use one of our five full-featured, fully tested Novos Operating Environments. Each one represents a commonly used embedded system architecture and has the services and features to support it.

Take a look at the features of the Novos Operating Environments. Choose the one that best suits your application’s requirements and download the FREE source code to it. It’s the smart choice.

Novos is based on extensive experience
Our Novos Operating Environments are based on over four decades of embedded systems experience of our lead developer Tom Barrett. He has personally built many embedded systems and has designed well-known RTOS products including RTXC™, RTXC Quadros™, plus the Freeware Kernels MCX-11™, MCX-16™ and RTEK™ from Motorola. You get the benefit of that experience in each Novos Operating Environment.

FREE Source Code
The Source Code to each of the Novos Operating Environments is completely FREE. Download it and use it. It’s that simple. And if you want to improve your experience, reduce your learning curve or would just like to know more about the intelligent design of embedded environments, we have some user guides available for a modest charge.

Novos Environments
All five current Novos Operating Environments target processor ports to resource-constrained 8-, 16- and 32-bit processors. Even though we have taken great pains to keep the memory requirements of each Novos Operating Environment to a minimum, some of the smaller processors may not be able to support every Environment due to insufficient ROM or RAM available on the device.

C Source Code
Source code to the Novos Operating Environments is mostly ANSI C and we have compiled it with C compilers from various providers for the processors to which we have ported the code.

Minimal Assembly Language
In order to support different processors, some assembly language is required and we have taken steps to minimize it. You don’t have to bother with it.

Commonsense Licenses
Our goal is for you to be able to use the Novos Operating Environment of your choice with as few restrictions as possible. To that end, we have straightforward licenses for three types of usage:

  • Unsupported License: A basic source code license for FREE use with no support, no maintenance, no updates and no user documentation. User documentation is optional and requires payment of a fee. more…
  • Supported License: A basic source code license for FREE use, but includes limited email support, and updates to code and ofuser documentation. more…
  • Commercial License: A reasonably-priced commercial license for users who want support, documentation and source code maintenance and updates. more…

For any license type, we do not ask for royalties nor require a portion of any compensation you might receive from your efforts that incorporate a Novos Operating Environment. What we ask in return is that you treat us in a fair and equitable manner. Our compensation comes from your purchase of Novos user documentation or a supported or commercial license. When you do make such a purchase, you are enabling us to continue to make these quality products available to the embedded systems market.

Easy to Use
Each Novos Operating Environment includes the classes and supporting services needed for easy and efficient use. As delivered, the code is ready to build into your project. Just compile it, link it with your application and go. However, there is an option that allows you to extend Foreground operations beyond the default configuration. We keep it simple, giving you the benefit of many years of our experience in delivering easy to use, solid foundations for building embedded systems.

Small Code and Data Footprint
Novos Operating Environments are designed for specific types of system architectures, resulting in code and data requirements that are very efficient. Each Environment gives you the services and features you expect and need without unnecessary code and data overhead.

Debug Assistance
There are configuration options to assist early development and debugging. Checking the calling sequences to Novos services, including parameter evaluations is one option. Checking for stack overflows is another. They increase the footprint of the default configuration and cost some cycles but they can help you get through early debug or test stages more rapidly than a “burn and learn” approach.

Services Callable from ISRs (Interrupt Service Routines)
Unlike many RTOS products, almost all Novos services, excluding those in the Mutex class, are available for use in high priority operations such as ISRs and other Foreground entities. An ISR can communicate with a Background task, which can pass data to a Foreground task, which can take action when a specific event occurs, and so on. The combinations are endless. More

No Critical Regions in Services
The design of Novos services avoids critical regions whose handling tends to reduce performance and responsiveness. However, some low level operations in the Novos kernel make it necessary to disable interrupts for a brief period, usually a few instructions, in order to protect internal data or structures. More

No Race Conditions
Novos Operating Environments eliminate the race conditions often encountered in some RTOS and ad hoc designs. With Novos, there is inherent, built-in protection against them, meaning every service produces results with 100% integrity. More

Common interrupt service model
All Novos Operating Environments utilize the same model for handling interrupts. You can develop interrupt-driven device drivers in one Environment that have a high probability of being used with another Novos environment. That saves you time and money. More