Embedded Battle Royale
Faster chips and the need for connectivity help Linux and Windows challenge traditional embedded operating systems
ILLUSTRATIONS: DAN VASCONCELLOS
Microsoft Talisker [center] prepares to slam the Linux penguin, while fending off the FreeBSD devil [lower left]. Wind River Tornado [upper left] and Red Hat [lower right] join the fray
Around 90 percent of the microprocessors sold commercially end up in embedded systems, often not even recognizable as computers. Cell phones, factory controls, microwave ovens, network switches, automobiles, printers, MP3 players, and singing greeting cards fall into this category. As such systems connect to the Internet and the trend toward ubiquitous computing accelerates, the market for the operating systems that run embedded processors is on the verge of exploding.
Click on graph for larger view.
Anticipating this boom, Microsoft Corp., Redmond, Wash., the 800-pound gorilla of the software world, entered the embedded operating systems (OSs) market about five years ago with WinCE. Less than two years ago, another contender stepped into the ring--Linux, an OS championed by the open-source software community. Microsoft and the Linux crowd are just beginning to wrest market share from companies such as Wind River Systems, OSE Systems, QNX Software Systems, and Green Hills Software; all cater to embedded system developers with specialized real-time OSs (RTOSs) and have long dominated the market [see table].
The competition affects more than the number of OSs sold. Whereas software companies charge a per-copy royalty for their OSs, plus fees for associated products and services, Linux is royalty free. No two Linux vendors have the same strategy for making money, but basically they all offer software for little or nothing, while also charging for associated goods and services such as development tools (compiler, debugger, simulator, and so on) and support. And whereas commercial OS companies bar all access to their source code, Linux vendors give programmers access to the source code, and let them add or subtract anything to or from it. An OS that is royalty free and open source is a shot fired across the bow of every company that sells embedded OSs.
A spreading market
Many embedded systems employ an RTOS, distinguished for its ability to respond correctly to a stimulus within a set period of time, usually a few microseconds. For a number of reasons, real-time operation is beyond the capabilities of OSs designed for computers, such as Microsoft Windows and NT, MacOS, and Unix [see "Defining Real-Time Operating Systems"].
Computer OSs such as Unix or Windows occupy between hundreds of kilobytes and hundreds of megabytes of memory, so large that they must reside on capacious hard drives. An RTOS may require as little as 10KB of memory and almost never more than 100KB. Any embedded OS must reside in non-volatile read-only memory (ROM). Depending on the system, it's the designer's choice to run the OS either from ROM or, if the OS must run faster, volatile random access memory (RAM). Whether ROM or RAM, all IC memory is relatively expensive. Since embedded systems tend to be highly cost-sensitive, memory costs, and therefore system costs, can be reduced when the OS is reduced to its absolute minimum size.
Now a confluence of factors, including denser IC memories and more powerful microprocessors, has expanded the market for embedded operating systems beyond traditional RTOSs.
As IC memories get denser, embedded system developers are finding that they can use scaled down versions of standard OSs that allow them to add more features to their systems. There are miniature versions of Linux or Windows that can fit in a few megabytes of memory. Using a larger OS and more IC memory than an RTOS would have required is more expensive, but system developers hope to compensate by cutting system and application development time.
Embedded microprocessors have also gotten more powerful, migrating from 8- to 16- to 32-bit devices. "We saw the fat part of the market in 32-bit applications," said Phil Shigo, lead product manager for Microsoft's embedded appliance platform group. "We can create a 32-bitbased system with memory and network interfaces [on a single chip] and drive it down to costs that would've been associated with 16-bit systems in the past."
Rice cookers, industrial robots, and other less demanding systems can make do with an 8-bit processor, but consumer electronics and communications equipment--the "fat part of the market"--benefit from 32-bit power and flexibility. Processors with 32-bit architectures can directly address a much larger memory space and so can handle much bigger data sets. Moreover, they will almost always have many more registers available for processing data. That means more data can be kept in the microprocessor itself, resulting in less frequent memory accesses than 8- or 16-bit devices, which saves clock cycles.
Still another factor is contributing to the rise of Windows and Linux in the embedded world. Many newer products that use embedded microprocessors, such as networked game consoles, set-top boxes, and cell phones, have either relaxed timing requirements or have no real-time requirements at all, so don't need an RTOS.
After Microsoft began to target the embedded market, the Linux community saw that many of the same trends that make an embedded version of Windows viable also suit Linux.
Linux, first released in 1991, is inherently modular. The kernel (the fundamental elements of an OS, such as memory management and file management functions) is approximately one megabyte in size. It can be easily extracted and then supplemented with modules appropriate for embedded systems.
Microsoft and Linux's proponents--Lineo, MontaVista Software, and Red Hat, among others--have sculpted pint-sized versions of their respective OSs to run on a host of embedded devices that don't require real-time performance. All are excited by a thriving embedded OS market (counting in development tools and services as well). According to Venture Development Corp., of Natick, Mass., the US $1.11 billion market of the year 2000 should more than double to $2.62 billion by 2005, not including the value of OSs that embedded systems developers write themselves. The market researcher estimates that OSs and OS services such as support and maintenance represented 56 percent or so of the 2000 total, or about $626.8 million.
Embedded Linux OSs made but a small splash in their first year of commercial availability. Worldwide shipments of such software, development tools, and related services in 2000 took in an estimated $28.2 million, or about 2.5 percent of the market. But Linux's slice of the embedded pie will grow quickly: Venture Development estimates that by 2005, shipments will soar to $306.6 million, a compound annual growth rate of 61.2 percent that will give Linux 11.7 percent of the projected 2005 market.
Notable wins over the last 18 months include TiVo personal video recorders, Sharp's Zaurus personal digital assistant (PDA), Motorola's DCT-5000 set-top box, and Ericsson Business Innovation's BLIP (Bluetooth Local Infotainment Point). This last is a communications hub based on the Bluetooth short-range wireless standard that facilitates interconnectivity between Bluetooth-enabled devices, such as PDAs and mobile phones, and the Web.
Behind the growth of high-octane embedded OSs is the push to connect more and more devices to the Internet. "Devices that can communicate with other devices are becoming dominant in the embedded market," said a recent Venture Development report. The company identifies telecom/datacom equipment and consumer electronics as the two largest growth categories in embedded systems.
"Consumer electronics is a major category where developers are looking to use Linux," said Stephen Balacco, a Venture Development analyst. The area is high volume and cost-sensitive, so "if you can reduce licensing costs by reducing run-time royalties, you will be more competitive."
A huge coup for Linux would be to make it into cell phones--and at least one large Linux vendor is trying to do just that. Red Hat Inc., Research Triangle Park, N.C., which provides Linux-based operating systems for servers, computers, and embedded systems, has partnered with 3G LAB, Cambridge, UK, developer of mobile communication system software for 2 1/2- and third-generation mobile wireless handsets. The new cell phone OS will be based on Red Hat's open-source embedded real-time eCos (for embedded Configurable operating system).
Manufacturers in Asia are trying to beat Red Hat to the punch. Some are now targeting the European market with low-end mobile phones that incorporate Linux, according to Julian Harris, 3G LAB marketing manager. They chose Linux, he explained, because it enables them to develop phones and get them to market quickly. "I wouldn't expect to see high-end, feature-rich models for some time, but do expect to see some competent, less feature-rich models soon," he said.
Reacting to Linux
The entry of Linux and WinCE has roiled embedded-OS waters. Wind River Systems Inc.'s fortunes are emblematic. Its stock has withered from $50.62, the 52-week high as of late July, to the $13$16 range at press time. In part that's due to the economy. The Alameda, Calif., company's stock price tracks with the downtrodden technology sector at large, but observers say Wind River's troubles also reflect investor concern about the threats from Microsoft and especially Linux.
embed02.jpg In reaction to the open-source onslaught, Wind River purchased Berkeley Software Design Inc. (BSDI), whose BSD Unix is often used in networking equipment. For Wind River, this is a new market in which both Linux and Microsoft's NT OS are strong. With the purchase, the company also gains stewardship of FreeBSD, a free version of BSD Unix, and thereby a position in the open-source market.
Other RTOS companies are trying to parry the Linux challenge as well. In Canada, QNX Software Systems Ltd., Kanata, Ont., has moved to address the royalty-free issue by offering free downloads of its QNX 6.1 OS for evaluation purposes.
Increasing time-to-market pressures dictate that products start being developed as soon as possible. A developer may have made a determination to use a traditional RTOS, but does not want to wait to initiate product development while it evaluates the RTOSs available or negotiates the best price with various vendors. So some system designers start developing their products around Linux because it is freely and easily available and can be used immediately; but once the project is under way, these developers switch to a commercial OS. QNX is betting that some developers will start development projects with QNX 6.1 (just as some now start with Linux) because it is easily available, but that in the end, they will stick with QNX.
Green Hills Software Inc., Santa Barbara, Calif., is also shifting to a business model in which it offers its OSs on a royalty-free basis. The company charges for services and tools for its Integrity and ThreadX RTOSs, which are aimed at applications with the strictest real-time and OS size requirements.
Linux is never appropriate for embedded applications, according to John Carbone, the company's marketing vice president. It's "a square peg for a round hole," he said. At the same time, the company recognizes that some people want only Linux and it has modified its Multi 2000 tool set to support Linux development.
Mentor Graphics' Embedded Software Division, based in San Jose, Calif., is trying to fight on two fronts. The company recently acquired the VRTX RTOS, and has allied itself with OSE Software, San Jose, Calif., to take on Wind River.
"OSE has a very robust real-time OS," said Jerry Krasner, an analyst with Electronic Market Forecasters, Waltham, Mass. "It's got the security features, it has features for network interconnectivity. But it lacks [development] tools. Mentor Graphics has VRTX, which isn't growing, but it does have the tools. Mentor and OSE are a threat to Wind River with a robust telecom-oriented RTOS with good tools."
Mentor Graphics is also pursuing the consumer business with an interesting pitch. It expects that companies in that field will be moving toward a system-on-chip approach, where functions once implemented in discrete parts are brought on board the microprocessor. And when entire systems are implemented on a single chip, including an OS, performance can be increased, and costs reduced. As Mentor's primary business is design-automation tools, the company hopes its unique combination of hardware design expertise and OS experience will appeal to developers of embedded systems-on-a-chip.
Back in the state of Washington, Microsoft has not been idle. It aims to blanket the entire electronics market with a family of OSs that span the spectrum from the smallest embedded applications to large computing systems. To that end, the company stripped Windows down to essentials and rebuilt it as Windows CE (WinCE), which it introduced in late 1996. This OS has a relatively compact kernel and accommodates additional features for embedded applications such as add-on modules or components. Microsoft recently rewrote the WinCE kernel to make it capable of real-time operation. That was version 3.0, released in the latter half of 2000.
Microsoft has also released an embedded version of Windows NT and is developing a super-small OS, called Stinger, suited to smart cards. Scheduled for next year is a new version of WinCE that is now in beta test. Code-named Talisker, it is being optimized for smart phones, PDAs, and cable set-top boxes.
But even mighty Microsoft has been compelled to counter Linux. It has offered to share access to its source code with its customers, a first for the company, which has jealously guarded the source code of its PC OSs. It has also reduced its licensing fees and royalties, according to Venture Development's Balacco.
Selecting an embedded OS
OS vendors of all stripes agree: the technical differences among RTOSs, WinCE, and embedded Linux are minimal. By now, the choice of OS is so much a business decision, it is often made at the corporate level, according to Jim Ready, CEO of Linux vendor MontaVista Software Inc., Sunnyvale, Calif. "Sometimes it comes down to which side of the iron curtain you want to be on: open source or proprietary," Ready said. "If either can meet your requirements, it can be a top-level decision to go open or closed. It's getting to be a matter of predisposition."
The assumption that the OS is important enough to drive a system developer's choice of hardware and development tools is sound--sometimes. But when any given developer sits down to create a new system, the choice of OS will be just as likely a secondary or even tertiary consideration behind the processor and the development tools.
A case can be made that hardware is slightly more often the chief concern. The developer will first seek a processor that can support the functions wanted in her product. Hardware is the most expensive category in any product's bill of materials, so this is the first and best place to contain costs.
Once a company decides upon a processor, its OS options tend to narrow. Every OS has to be modified to support any given processor, and with so many processors available, no OS vendor has the resources to support them all. So every OS is associated with a finite set of chips.
Similarly, each suite of development tools is associated with a specific OS or set of OSs. Linux is tightly coupled with GNU tools, which also happen to support a number of commercial RTOSs. (GNU stands for GNU's Not Unix, a project of Boston's Free Software Foundation.) Wind River's RTOS, VxWorks, is closely linked with the company's Tornado tool suite, and WinCE is tied to Microsoft's Platform Builder tools [see table].
"Tools are an important concern--if my application will work as well with this OS as with that OS, then I look at tools," said Alex Doumani, vice president of engineering at a leading vendor of development tools, Applied Microsystems Corp., Redmond, Wash.
Another point: is the pool of developers large enough to write applications a company can't develop on its own? For WinCE and Linux, the answer is a loud "yes." Microsoft regularly boasts of the millions of developers worldwide familiar with its development tools, while estimates of the developers familiar with GNU tools range from the high hundreds of thousands to low millions. Programmers may begin using one or both of these tool sets in college. Wind River's Tornado tools are favored by embedded system developers, who, however, aren't nearly as numerous as the people familiar with the Linux or WinCE toolsets.
Whom do you trust?
If Linux isn't technologically superior, and the popularity of its tools is only mildly compelling, why is its potential impact on the embedded OS market so huge? Simply stated, many view it as the check and the balance to Microsoft.
Microsoft has a history of taking open standards, engineering proprietary improvements, attempting to establish its re-engineered version as the standard, then charging handsomely for it. It also has a history of wresting control of markets from partners, marginalizing rivals, and driving others out of business. Whether its activities are in fact legal or ethical, some people believe they are neither.
"There is a real, deep distrust and animosity against Microsoft," said Arthur Orduna, a former Wind River executive, now with Canal+ Technologies, Paris, an interactive TV company. The embedded community is an old one and has the hacker mentality that comes from the advanced computer sciences. Its members pride themselves on elegance and compactness of code, and their prime example of what not to do is Microsoft. These developers will not use a Microsoft OS unless absolutely necessary. And in the embedded market, rarely is any one OS an absolute necessity.
Linux marketers play on the anti-Microsoft bias, pointing out how often computers that run Windows and Windows NT crash. It's not entirely fair to tar WinCE with that same brush, but in a competitive market, it's common for rivals to try to spread fear, uncertainty, and doubt (FUD) about each other.
MontaVista's Ready brought up another issue: "The scourge of worms and viruses when the world is based on one platform with known weaknesses." Microsoft has over 90 percent of the desktop OS market. The size and uniformity of that market makes it vulnerable to computer viruses and worms, which attack weaknesses in OSs. Now imagine that one embedded OS comes to dominate the embedded systems market. Then a virus could affect heating systems, kitchen appliances, motor vehicles, everything that runs that OS and is linked to the Internet. That scenario is highly speculative, but it is an argument for ensuring true competition in the embedded OS market.
Of course, Microsoft and the commercial RTOS companies are not above doing some FUD-mongering of their own. Microsoft's Shigo referred to two chinks in Linux's armor: "Linux in and of itself is not a real-time OS. You need to license real-time extensions. Is real-time important to you as a developer? Real-time systems typically require long-term support and maintenance. You have to ask, 'Where's my Linux vendor going to be five years from now?' "
Detractors of Linux also fan concern about the requirements imposed by the GNU Public License (GPL) system. The concern is that if a developer using embedded Linux creates a differentiating feature by writing an extension to Linux, that extension cannot be proprietary and must become the property of GNU, and therefore part of open-source Linux.
"Tools are an important concern--if my application will work as well with
this OS as with that OS, then I look at tools"
Rich Larson, senior vice president of sales and marketing, at Lineo Inc., Lindon, Utah, a vendor of Linux-based operating systems, tools, and services, said that's simply false. "You can create your own [intellectual property], retain the rights, and we can ensure there are no violations," he said.
The GPL system does preside over the licensing of proprietary additions to Linux. The issue of violations arises when a developer uses a block of code licensed under that system, makes a few million copies of a product, and then finds out that someone else owns that block of code and wants 50 cents a copy for it. Lineo said it would indemnify its customers against that by means of its new GPL scanning tool, which scans the Linux source code used by Lineo customers in their products. If the scanner finds any code that must be licensed for a fee, Lineo will write new code to replace it.
So who will come out on top in this OS battle royale? Industry analyst Krasner is among those who are leaning toward Linux, in part on the merits, but also because he's skeptical of Microsoft's prospects, at least with WinCE. "Less than 5 percent of embedded system developers are willing to use CE. Many feel that Microsoft has over-promised and under-delivered again," he said. "Plus it continues to charge royalties."
MontaVista's Ready is not prepared to discount Microsoft. He noted that companies with broad product portfolios employ many OSs in different products, and they would like to standardize. "Customers do complain that there is a Tower of Babel of OSs, and they'd like to get down to one or two," he said. "Eventually there will be Linux and Microsoft and that's it. Both have the benefit of being standards. Linux has the charm of not being from one vendor."
Green Hills' Carbone is less sanguine about Linux's chances. "There will be a squeeze," he said. "We're O.K., Wind River will be, too, but the Linux vendors aren't making a lot of money, and I don't know how long they all can survive in that mode."
Whoever remains, Venture Development predicts that embedded Linux is going to have its effects. The research firm says it expects that growth from run-time royalties (charged on a per device basis) will slow as a result of market forces from both the open-source movement and embedded OS vendors offering royalty-free solutions.
About the Author
BRIAN SANTO is a former editor of Spectrum. Now, in between PTA meetings in Portland, Ore., watering the garden, and making dinner, he plays traditional Zimbabwean music with Dziva, an eight-piece marimba ensemble.
To Probe Further
The competition among vendors of operating systems for embedded microprocessors will not conclude any time soon. New developments occur weekly, if not daily.
Fortunately, the trade press is invaluable for keeping up on the subject; and while subscriptions may be hard to come by unless you're in the business, they all maintain publicly accessible Web sites. Notable resources on embedded design include Electronic Engineering Times (http://www.eet.com) and EDN (http://www.e-insite.net/ednmag/). ZDnet is a good source on software in general and operating systems (OSs) in particular (http://www.zdnet.com/zdnn/software/). Slashdot (http://slashdot.org) provides insider views on OSs and embedded system development that are informative and entertaining, although often esoteric.
Peter Wayner's Free For All: How Linux and the Free Software Movement Undercut the High Tech Titans (ISBN: 066620503) provides a look into the current OS wars and goes into detail on the stakes involved. The book was published in 2000 by Harperbusiness.