Real-Time Operating Systems
Power Connected Intelligent Systems
The operating systems that have been running our servers, PCs, laptops, and portable devices for decades have effectively supported an abundance of application requirements, from productivity applications to today’s artificial intelligence. Now, however, things are moving to the edge.
The systems we have relied on in the past are not necessarily equipped to manage sophisticated functions on the edge. A highly automated assembly line, for example, will include automated visual inspection of parts, photographing and analyzing them in real time for errors or abnormalities. That same assembly line may consist of robotic arms that need to react, again in real time, to pick up and build components, or to redirect parts that have been identified as defective by the visual inspection system. An autonomous construction vehicle requires the ability to detect objects ahead of it to avoid collisions or to redirect its routes as it goes about its tasks. A power grid may need to reroute and balance shifting loads in the event of outages or surges in demand.
The traditional general-purpose operating systems used to run laptops — such as Windows, Linux, or Mac OS — cannot meet the precise demands, extremely low latency, persistent uptime, and hands-off performance required within small-footprint embedded systems.
Such capabilities call for the power and function of real-time operating systems (RTOSes). Unlike their general-purpose counterparts, RTOSes are deterministic, meaning they are deadline oriented and consistent in their outputs. They schedule operations tasks for execution based on priorities set to those tasks.1
Today’s generation of edge applications requires intelligence, including robots, industrial equipment, energy management systems, autonomous vehicles, delivery drones, and other services and functions. These edge systems also demand precision, with a level of responsiveness that crosses into millisecond or microsecond response times, along with flawless around-the-clock performance without human intervention.
A majority of developers employ or intend to employ RTOSes within their embedded projects, according to a survey published by EETimes/Embedded.com.2 Forty-two percent employ open source RTOSes, a number projected to grow to 49% in future embedded projects. Another 24% use commercial RTOSes, a number that will remain consistent for future initiatives. RTOSes straddle both the proprietary and open source worlds, with each delivering advantages tuned to the requirements of the processes and products being developed.
Commercially available RTOSes offer built-in real-time capabilities, robust software tools, ease of future maintenance, and technical support. An open source RTOS provides building-block components that can rapidly be leveraged by developers. This is adding a new dimension to the process of building and deploying the applications that support intelligent, connected environments, leveraging pre-built components. Close to nine in 10 developers — 88% — reuse code within their embedded systems projects, the EETimes/Embedded.com survey finds. Another 63% reuse hardware from previous projects.
This is critical, as “we’re dealing with larger and larger systems,” says Maarten Koning, computer scientist at Wind River®. “It’s important to have an integration platform capability, where you can take bigger and bigger pieces and combine them, to be able to integrate them into your system and then take that resulting payload or system and easily deploy it — perhaps once, perhaps many times, in cloud-native systems.”