Wind River brings a 20 Kbyte microkernel to the VxWorks RTOS
Depending on how you look at the new RTOS, Wind River is either playing catchup with competitors such as Green Hills, Mentor Graphics, Express Logic, QNX, and several others who long ago shifted to the use of smaller, faster and more resource-efficient microkernels to deal with many embedded applications that require even on 32-bit microcontrollers to run lean and mean.
On the other hand, with the announcement of the new modular version, the company is directly addressing the needs of the newly emerging mass market for IP-connected Internet of Things devices, the first of the commercial RTOS vendors to directly do so.
According to Prashant Dubal, Wind River's manager of VxWorks development tools and infrastructure, a combination of the microkernel and the standard kernel, built on the same VxWorks platform, will allow developers to reduce development and maintenance costs by leveraging one RTOS foundation across different classes of connected devices, from small-footprint consumer wearables to large networking equipment and everything in between.
“The IoT has significantly changed the embedded landscape,” he said. “An RTOS must deliver not only the expected core real-time, deterministic performance and reliability, but an entirely new level of value that is demanded by the highly connected, security conscious, remotely-managed IoT world.”
In the modular, two RTOS kernel solution it has developed, Wind River has used a modular approach, similar to that used in most microkernels - separating the VxWorks core operating system kernel from service packages such as the file system or networking stack.
The VxWorks 7 microkernel requires about 20 kilobytes, even though it is build on the same VxWorks platform as the standard kernel. However, said Dubal, a combination of the two allows developers to reduce development and maintenance costs by leveraging one common scalable RTOS foundation across different classes of devices.
An additional advantage said Dubal is that multiple versions of packages can coexist, which lets developers try out patches or new versions and roll them back if required. Individual applications can now be updated at any time without requiring a rework or retest of the entire system, increasing scalability and the ability to quickly adjust to market changes.
This latter capability will do much to allow Wind River to do things: (1) pursue new markets in IoT and other older MCU-based sensor designs that thus far gone to competitors using microkernel based RTOSes, and (2) allow it to continue to support the traditional customer base for its monolithic kernel in aerospace, defense, medical, and industrial.
Even before the current enthusiasm for the still relatively undefined and Internet of Things, the company often had to share its customer base with competitive microkernels - VxWorks or Wind River’s Linux distribution getting the portion of the application requiring the extra services of a monolithic kernel and its microkernel RTOS compeitors getting the more numerous device-level implementations.
Attractive to its traditional user base is that the modular approach Wind River has used allows developers to apply targeted, efficient upgrades to packages and protocols without changing the system core which minimizes testing and recertification efforts in key markets in automotive and military/aerospace.
Among the services packages that have been enhanced for the various Internet of Things markets it is targeting with VxWorks 7.0 are such protocols as USB, CAN, Bluetooth, FireWire, and Continua, as well as out-of-the-box, high-performance networking capabilities.
While a key market for VxWorks has always been security critical applications in military and aerospace, the company is aware that the IoT will make most embedded and ubiquitously connected IoT applications even more naked to hacking than they were previously.
To that end, said Dubal, security features on Version 7.0 have been enhanced with a comprehensive set of built-in security features includes secure data storage, tamper proof design, secure upgrade, root of trust, and user and policy management.
Other important enhancements of note include memory management unit (MMU)–based memory protection for increased reliability using a process-based model that provides user-mode application execution in addition to its kernel-mode execution and an enhanced scheduler that makes possible time partitioning for applications requiring extreme reliability making it necessary to prevent applications from overloading the CPU.