One of the classic dilemmas in embedded Linux development has been whether to do it yourself (DIY), rolling your own distribution, or invest in a soup-to-nuts solution from a commercial supplier like Wind River or MontaVista. The DIY approach, which involves cherry-picking and aligning kernels and components from open source repositories, has been eased over the years with an increasing number of board support packages (BSPs) and more up-to-date components provided by semiconductor vendors and open board projects.
Still, with the growing complexity of embedded devices, one-stop-shop commercial solutions have maintained their appeal -- at least to those who can afford them. They are especially popular among big networking, industrial, and mil/aero equipment manufacturers that need extras like Carrier Grade Linux (CGL) certification and kernels "hardened" for greater reliability and real-time performance.
In 2012, the DIY approach grew easier with the help of maturing open source standards, including the Linux Foundation's Yocto Project and Linaro's standardized open source ARM Linux and Android code. In addition, there has been growing support for the open source in-vehicle infotainment (IVI) spec maintained by the Genivi Alliance.
These standardization initiatives are posing new challenges to commercial vendors, which must add new services to justify their licensing fees, says Jared Weiner, an analyst at VDC Research.
"Traditionally, there's been a lot of patching things together when you go it alone," says Weiner. "But open source projects are making it easier. The Yocto Project in particular is letting engineers more easily customize their own distros."
Yocto Project Gains Wide Adoption
While the Yocto Project (YP) may encourage open source DIY development, it also benefits commercial vendors. In fact, most of the major vendors have contributed to the project, and have begun to integrate YP code. In recent months, three distributions have been certified compliant with YP 1.3: Enea Linux, Mentor Embedded Linux, and Wind River Linux.
"The Yocto Project is helping commercial operating system vendors the same way it is helping independent developers: with standard tools and processes that offer a common language and context," says Jeffrey Osier-Mixon, Community Manager for the Yocto Project at Intel Corp. "If someone is working with YP code and decides to move to a commercial offering, the transition will be easy if the commercial product is YP compatible."
Based on an OpenEmbedded core, YP comprises a set of standardized templates, tools, and methods backed up by a thriving, collaborative community. YP 1.3 improvements include a revised terminal interface for build operations, and an improved checksum system for tracking source modifications and triggering recipe rebuilds.
YP now designates a standard set of "BSP contents" along with tools to help create those BSPs, explains Osier-Mixon. "So when someone develops hardware enablement bits for a given board, that code can be reused for similar boards very easily," he adds.
YP is particularly helpful in sorting out licensing. "License compliance is a pain for roll-your-own distros," says Osier-Mixon. "It gets very hairy for derived projects where, for example, someone starts with Fedora or Ubuntu and hacks out the stuff they don't need. They end up with a maze of packages and dependencies with varying licenses. Sorting it out is so painful that a large percentage of embedded projects are out of compliance. YP makes it easy to generate a complete license manifest and a tar file containing all of the project's source code."
Genivi and Linaro Step Up
The Yocto Project has followed in the footsteps of the Genivi Alliance. While this is a more vertically focused, industry-driven project, it has had a similar effect in bringing together commercial Linux vendors around a common open source spec. Already, Mentor Graphics, MontaVista, Wind River, Canonical (Ubuntu), and Tizen have introduced Genivi-compliant IVI versions of their distributions.
"It looks like Genivi is going to be incredibly influential moving forward," says VDC's Weiner. "It's going to be a significant threat to Microsoft and automotive-focused real-time operating systems like QNX."
Meanwhile, Linaro, a company launched by ARM and many of its semiconductor vendor licensees, is consolidating and optimizing upstream Linux and Android code for ARM Cortex processors. The primary focus is on Ubuntu and Android, but broader based embedded distribution vendors like Mentor Graphics and Adeneo have also signed up as partners.
Linaro caught the attention of Android developers last June when it demonstrated a Linaro-enhanced version of Android 4.0 with benchmark improvements of between 30-100 percent. Google's AOSP, as well as the Cyanogenmod project, are now in the process of integrating Linaro code.
Linaro's impact is being felt in ARM-based Linux projects of all flavors, but it may be especially influential as the Linux-based Android spreads out beyond smartphones and tablets, says Weiner. "Android is increasingly driving the future of embedded" he says.
Commercial Distros Expand to Services
Along with the pressure from open source standards, commercial Linux vendors are facing competition from processor manufacturers, says VDC Research's Weiner. "The semiconductor companies are increasingly providing free or low-cost development tools and components to their customers," he says.
To differentiate and add value, commercial vendors are adding vertical market versions, as well as more integrated tools ranging from to test management to debugging to GUI add-ons. But the main focus has been on expanding services.
"With the commoditization of embedded platforms, and the increasing complexity of embedded technology, Linux vendors are seeing growing demand for services," says Weiner. "Commercial vendors are integrating consulting, training, and customization services."
Most commercial vendors gain much of their revenue from big networking and industrial equipment manufacturers concerned with issues like CGL compliance, multicore support, real-time Linux, and security. As vendors address these issues with new features, they are continuing to attract new customers switching over from real-time operating systems (RTOSes). This process is growing as requirements increase for improved intelligence, wireless networking, and human-machine interface (HMI) capabilities.
Faced with this market shift, RTOS vendors are trying to maintain their customers by adding Linux to their menu. Following the lead of RTOS vendors Wind River and Sysgo, in 2009, Mentor Graphics expanded beyond its Nucleus RTOS to add Mentor Embedded Linux. This year Enea, which did not make VDC's list, launched Enea Linux as an alternative to its telecom-oriented OSe RTOS.
Snapshot of the Commercial Linux Market
According to VDC's 2012 estimates, Wind River has now grown to represent just over 50 percent of commercial embedded Linux distribution and tools revenue, followed by MontaVista, which has about half that. Other vendors making VDC's list include Lineo Solutions, Mentor Graphics, Sysgo, and Timesys. Here's a summary on what these vendors have been up to in 2012, by alpha order:
Lineo Solutions -- Japan-based Lineo was an early leader in embedded Linux with its minimalist, fast-booting uLinux distribution. Lineo has since launched a uLinux Elite IDE and build platform, and also provides a custom version of Timesys' LinuxLink platform.
Recent Linux-based products include a Warp fast-boot environment, an LL-rescue failure analysis service, and a Vzet trace-visualization application. In November, Lineo announced a collaboration with hardware vendor NewSoft on a LiNeOS development service based on Warp.
Mentor Graphics -- Oregon-based EDA and RTOS (Nucleus) vendor Mentor Graphics acquired Linux development firm Embedded Alley in 2009 and GNU Toolchain vendor CodeSourcery in 2010. Its Mentor Embedded Linux distribution and bitbake build service has since gone through several iterations, and has been spun into a Genivi-compliant IVI version.
Touted for its broad BSP selection, Mentor Embedded Linux was recently upgraded with Yocto Project 1.3 compliance. Add-ons include Sourcery CodeBench and Sourcery Analyzer, as well as its Inflexion UI platform. Mentor Graphics was responsible for the first Android ports to MIPS and PowerPC, and now offers Android development services, as well as Inflexion UI for Android.
MontaVista -- The original embedded Linux leader now ranks second, according to VDC. Owned by semiconductor manufacturer Cavium, MontaVista's last major update came in late 2009 with MontaVista Linux 6. MV6 added a new build engine and content server, and was rejiggered into various"Market Specific Distributions," including an Android version.
MontaVista's related MontaVista Linux Carrier Grade Edition (CGE), has been updated in recent years with 4G support and Linux Containers virtualization. In February, MontaVista released a CGE version that added ARM support, reflecting ARM's inroads into a networking market dominated by x86, MIPS, and PowerPC processors.
Recently, MontaVista has been focused on its Automotive Technology Platform (ATP) spin-off, which is compliant with Genivi 3.0. In November, the company announced a Proof-of-Concept program for ATP, providing low-cost rapid prototyping services for IVI systems.
Sysgo -- Acquired in November by French aero-defense giant Thales, Sysgo has long been a major player in the European industrial market with its ELinOS distribution. Incorporating hardened real-time features based on OSADL's PREEMPT RT patch, ELinOS was recently upgraded to a 5.2 release that added new scheduling, memory management, networking, and security features. Sysgo, which continues as an independent subsidiary based in Germany, also offers its PikeOS RTOS.
Timesys -- Pittsburgh-based Timesys has been supporting embedded Linux developers for over a decade, and in 2009 overhauled its LinuxLink development service with a new Factory build system, among other features. It now offers a free online prototyping version of LinuxLink, as well as a more customizable, desktop-based LinuxLink Pro, which adds features including its TimeStorm IDE.
Timesys offers numerous custom versions of LinuxLink tied to specific processors and BSPs, including some fairly obscure processors, such as the FPGA-enabled Xilinx Zynq-7000. In addition to its partnership with Lineo, Timesys collaborated with Enea on a jointly developed version of LinuxLink for MIPS-based processors. Enea has since introduced a separate, YP-compliant Enea Linux product.
Wind River -- Wind River's VxWorks RTOS, which powers NASA's Curiosity rover, still represents a major portion of the Intel subsidiary's revenues. However, Wind River Linux has been moving up steadily, and for several years has been the commercial Linux market leader. In August, Wind River Linux was upgraded to the YP-compliant version 5.0.
Wind River Linux spinoffs include a Genivi-compliant IVI version called Wind River Platform for Infotainment, as well as market-specific versions for industries ranging from medical devices to network equipment. In September, the company introduced Wind River Intelligent Device Platform, an M2M-focused product compatible with Intel's Intelligent Systems Framework. There's also Wind River for Android, which has its own vertical "accelerators" and test management suite.
Ancillary tools include the Wind River Workbench IDE, as well as related debugging, compiling, and test management software. The company also provides Wind River Hypervisor, Simics (simulations), and Tilcon Graphics Suite packages.