feature article
Subscribe Now

Doin’ Hard Time

Wind River Adds RTLinux

If the concepts of “Linux” and “Real Time” are stored in different sections of your brain, you are not alone.  Real-time Linux has always felt to me like a kind of operating system oxymoron – analogous to a hybrid SUV or a concrete canoe.  In my mind, Linux’s heritage was the land of virtuality, dynamic allocation, and squishy priorities – all catch-as-catch-can on processor strokes.  In such a place, the idea of soft real-time is palatable.  You can imagine Linux “trying real hard” to get to your process and occasionally dropping a video frame or two if things don’t work out.  No one would be the wiser.

Hard real-time, however, is another story.  You don’t want to think about your pacemaker processor dallying a little too long servicing an unexpected interrupt or your automobile airbag handler getting confused worrying about a damaged headlamp before it gives the “deploy” order.  We want more significant guarantees on those items than even a soft real-time Linux could provide.

Wind River has been providing commercial-grade Linux solutions for a while now, but the company’s hard real-time efforts were focused on their venerable VxWorks operating system.  Today, however, Wind River announced that it is acquiring the intellectual property rights for RTLinux, a hard real-time version of Linux developed by FSMLabs.  RTLinux was originally developed and patented at NMT (New Mexico Institute of Mining and Technology) and has been available in an open-source version (RTLinuxFree) and the commercial version RTLinuxPro from FSMLabs.

RTLinux gains its hard real-time capability by controlling interrupts preemptively.  First, any interrupts required for deterministic, hard-RT processes are handled by a real-time core, and any remaining “soft” interrupts are passed along to the non-real-time core.  Our old friend non-RT Linux runs as a lower priority thread, so hard real-time operations are guaranteed to be handled on schedule, and soft operations are processed during any slack time.  The usual goodies that one expects from Linux, including file system management, networking, and other OS utilities are still available.

Using RTLinux, you can have non-critical portions of your application running on the conventional Linux kernel while schedule-critical ops are processed with the same integrity you’d get from any full-blown hard-RT OS.  In devices such as cell phones, this can simplify development by using a completely Linux-based solution for both the RT and non-RT components.

Wind River is not replacing its VxWorks OS with the new offering.  “RTLinux broadens our Linux offering to include hard real-time capability,” says Glenn Seiler, Director of Linux Platforms at Wind River Systems.  “We are not trying to move people from VxWorks – it is still the preferred OS for many users.  VxWorks has a smaller footprint and fits the requirements for many types of applications.”

According to the company, VxWorks supports applications requiring multiple real-time processes within a fully real-time operating system, where RTLinux supports applications requiring a single real-time process within a non-real-time operating system.  The company also offers Wind River Linux for applications requiring one or more processes with soft real-time priority.

Many applications would previously have avoided Linux because of the lack of hard RT capabilities or gone with a multi-OS strategy – splitting processes up according to their real-time needs.  The RTLinux capability brings those requirements together and rounds out Wind River’s Linux portfolio even more.  Wind River plans to offer RTLinux integrated with the “Wind River Platform for Consumer Devices, Linux Edition” for applications like streaming media in feature phones.  It will also offer the new OS with the “Wind River Platform for Network Equipment, Linux Edition” for packet-switching applications that require hard RT performance for IP packet routing. 

Wind River has poured significant resources into Linux-based solutions for the past few years.  Once a highly-proprietary embedded OS vendor, the company has successfully completed a major identity shift – embracing and adding value to open-source development, Linux, and Eclipse, while maintaining their former strength in proprietary tools and software.  In doing so, they have future-proofed themselves in the market – a smart strategy in an area as fast-changing as device software development.

Rather than betting on one particular horse and staking the company’s future on the success or failure of a single technology thread, Wind River is betting on the entire race, insulating themselves from many unpredictable and uncontrollable technology and market trends.

Leave a Reply

featured blogs
Aug 18, 2018
Once upon a time, the Santa Clara Valley was called the Valley of Heart'€™s Delight; the main industry was growing prunes; and there were orchards filled with apricot and cherry trees all over the place. Then in 1955, a future Nobel Prize winner named William Shockley moved...
Aug 17, 2018
Samtec’s growing portfolio of high-performance Silicon-to-Silicon'„¢ Applications Solutions answer the design challenges of routing 56 Gbps signals through a system. However, finding the ideal solution in a single-click probably is an obstacle. Samtec last updated the...
Aug 17, 2018
If you read my post Who Put the Silicon in Silicon Valley? then you know my conclusion: Let's go with Shockley. He invented the transistor, came here, hired a bunch of young PhDs, and sent them out (by accident, not design) to create the companies, that created the compa...
Aug 16, 2018
All of the little details were squared up when the check-plots came out for "final" review. Those same preliminary files were shared with the fab and assembly units and, of course, the vendors have c...
Jul 30, 2018
As discussed in part 1 of this blog post, each instance of an Achronix Speedcore eFPGA in your ASIC or SoC design must be configured after the system powers up because Speedcore eFPGAs employ nonvolatile SRAM technology to store its configuration bits. The time required to pr...