Embedded industrial Linux drives Mars Rover

The proximity of Linux to server-side back-office heavyweight environments has been a characteristic of open source operating system environments since their early beginnings.

It should be of no major surprise then to see that our embedded industrial computing world is embracing open computing and working hard to embed (excuse the pun) the technology to ever-deeper levels.

Intel-owned Wind River is the latest to “cement” its industrial computing position (excuse the pun again) with its new membership of the Open Source Automation Development Lab (OSADL).


With its membership, Wind River says it will collaborate with other OSADL members to promote and support Linux solutions for the embedded and industrial markets.

Founded in 2005, OSADL fosters the development of open source projects in the areas of embedded systems and industrial design, including projects focused on real-time and safety-related systems, and special drivers for the Linux kernel required by the automation industry.

Wind River itself concentrates on middleware software and operating systems for information appliances and devices including mobile phones, auto braking systems, traffic signals and (according to Wikipedia) Mars Rovers (as if there were two!).

… and you thought embedded industrial Linux wasn’t sexy?

For programmers, Intel itself offers some good additional reading on its developer blog. David Stewart writes in “Why is Embedded Linux so hard” saying the following:

Why is building a custom embedded Linux so hard? Typcially, when you get the source code for an operating system or any large software system, there also must be a way to “build” the source into a runnable binary. This involves compiling, linking, creating libraries and a final binary image.


But the thing we know of as “Linux” is not a complete operating system. In fact, it’s only the OS kernel. If you want applications, libraries, shells, or games to run on that kernel – in short, if you want a complete operating system – you need to find them on the internet in their separate projects. And there is no standard build system for this collection of stuff. Instead, every project has its own scripts and makefiles for building its little component.