Yes, Linux is now powering a number of brand name mobile phones, but there’s a great deal yet to do to transform Linux into a credible alternative to proprietary mobile operating systems. Here’s a look at the challenges ahead– and a dark horse entering the mobile race this month.
Almost immediately, the mobile phone will become the primary vehicle for content consumption. Communication, entertainment, and information in the form of mobile television, push email, and software radio, among others, will be delivered as a software service. In many instances, these services are already available to the public.
Computing’s old friend, Moore’s Law, is one of the trends that has enabled the mobile phone to become the capable device that it is. In the last year alone, RAM has increased from 64 MB to 128 MB in popular high-end devices, while processor speeds have gone from 208 to 312 MHz in those same models.
Additionally, mobile network operators are now focusing on growing revenue from new services. Because the market for traditional voice services is now saturated, future revenues must come from selling existing customers new kinds of services. New services mean new and increasingly complex software. Talk about a revolution.
In general, the mobile telephone is a classic embedded device. In a phone, a small, highly tuned real-time executive, often proprietary to the handset vendor, is augmented with a small number of special purpose applications, and is then baked as a whole into the device.
Practically speaking, there is no opportunity to modify or add software once the handset ships. Indeed, the whole software package can be extraordinarily brittle, requiring significant time and expense to change or add features to applications, introduce new applications to the mix, or port the software to a new device or platform architecture. Even Java ME– which facilitates secure software downloads and is virtually ubiquitous in mobile phones– requires an underlying operating system and is just another expensive application to port to a handset.
Clearly, the” one phone, one solution” model is archaic and cannot keep pace with consumer demand for novel and emerging capabilities. Hence, there is an obvious and growing need to field mobile phones with a modern operating system, one capable of fully preemptive multitasking, a robust process model, virtual memory, and inter-application communication.
Platform infrastructure support, such as dynamically-loaded and- shared libraries and loadable device drivers, would bring modern software development techniques and process to handset platform development. Additionally, true, mature, and full-featured APIs would streamline the development of services and provide for independent development of shared features, including user interface frameworks, common I/O and device abstractions, and essential system services.
Finally and critically, a fully-featured, modern operating system is more easily hardened. With tens of millions of phones in active use, and more sophisticated phones and applications on the way, security remains a considerable and onerous concern.
Selling Symbian
If, four years ago, you asked for a complete platform based on a fully-featured operating system, two names would have leapt to mind: Symbian and Microsoft. At the time, Palm OS had limited features and and was relegated to PDAs, and no Linux-based products were available. Moreover, only a small number of devices were powerful enough to host such a capable software stack.
Since then, Symbian has come to dominate the market (though its influence may be waning). In the beginning of 2005, the Gartner Group, a market research firm, put Symbian at 76.3 percent of the smartphone market, Linux at 13.7 percent, Palm at 4.6 percent, Microsoft at 4.5 percent, and Research in Motion (RIM, makers of the Blackberry) at 1 percent. By the end of 2005, The Diffusion Group, another research firm, reported Symbian at 51 percent, Linux at 23 percent, and Windows CE at 17 percent. In roughly a year, a substantial number of more muscular phones were sold, reflecting strong demand for smarter devices, with Linux and Windows CE gaining at the expense of Symbian. (For more information about Symbian, see the short sidebar” Shares of Symbian.”)
Shares of Symbian
Symbian is owned by a group of six telecommunications and consumer electronics companies: Nokia, Ericsson, Sony-Ericsson, Panasonic, Siemens, and Samsung. Nokia is the largest shareholder with 47 percent ownership; next is Ericsson with a 15.6 percent stake; Samsung has the smallest share, with only 4.5 percent.)
Given Symbian’s ownership, the company is focused on solving the unique problems of mobile phones. The result is a full-featured operating system designed explicitly for the mobile handset.
An emphasis on compact size, performance, the special needs of a mobile phone, and a significant developer community have all combined to make Symbian a good choice for manufacturers. One important feature of the Symbian OS is a strong separation between the operating system and the user interface. The Symbian offering is restricted to what’s called the Core OS. The operating system doesn’t require or mandate a particular user interface framework or suite of applications. Those choices are left to manufacturers.
On one hand, such flexibility permits a manufacturer the opportunity to differentiate its product, customizing the user interface and supplying proprietary applications. On the other hand, each manufacturer must complete the Symbian platform by choosing a compatible user interface framework. Today, there are four user interface frameworks available for Symbian phones:
*S60 (sometimes known as Series 60) is a product developed and licensed by Nokia. S60 is used widely on Nokia phones, including the N-Gage, and is also deployed on phones by other manufacturers.
*S90 is an enterprise-oriented product available only on Nokia phones (at least so far).
*UIQ is developed and licensed by UIQ Technology of Sweden.
*MOAP is a framework available from NTT DoCmo for phones connecting to its network. MOAP is also supported on Linux.
Of the currently available phones using Symbian, a majority of models are based on Series 60. A very large majority of the volume shipped is based on Series 60 and come from Nokia.
Microsoft’s Mobile Moves
For years, Microsoft has struggled in the mobile phone space. However, the company’s latest release, Windows Mobile 5, seems to actually work (making it the Windows 3.1 or Windows 98 of the phone space). There are now real mobile phones, as opposed to glorified PDAs, from major manufacturers, that ship with a Microsoft operating system. Windows Mobile is no longer an experiment.
Unlike Symbian, Microsoft doesn’t allow for much differentiation. Instead, the company seems content that the predominant brand of a Windows Mobile-based phone is Microsoft. Customization of the software is practically unattainable– Microsoft prefers the” WWHISWYG” (” What We Have Is What You Get”) approach. Oddly, the company’s attitude runs counter to the prevailing practice in the industry where differentiation is a requirement.
Judging from the world wide advertising campaign supporting Windows Mobile 5, the lack of customization is supposed to be a feature. The idea is to leverage familiarity with the Windows desktop onto the mobile phone. However, recent reviews of the newest Microsoft devices suggest that the prized Windows desktop user interface doesn’t translate very well to a phone– too many clicks.
Ironically, that may not impede sales. Microsoft has a tremendous number of Exchange servers in the enterprise, and interoperability with the corporate mail server is a critical feature for most users of these devices. Though Microsoft states Windows Mobile 5 is more than just email, presumably suggesting that you want to run Office on your phone, users may not agree.
Reading Palm
Palm OS is curious. For starters, the company that owns Palm OS is PalmSource, Inc., a wholly-owned subsidiary of Access LTD., a Japanese company that provides a leading mobile browser and now provides a Linux system that supports Palm OS.
For quite a while, Palm OS was kept lean and mean. In the past, Palm OS looked more like a traditional mobile phone operating system, with a real-time executive tightly integrated with the category-defining Palm OS applications and application platform APIs. A few years ago, though, PalmSource realized that it needed to update Palm OS to support advanced OS features. The result was Palm OS 6, or Cobalt. (Cobalt was based on intellectual property purchased from BeOS, the very capable operating system that supported the BeBox, circa 1995.)
To date, no Cobalt devices have actually shipped. The latest Palm OS-based Treo PDA’s, including the 700P, run an older version of Palm OS. It appears that Cobalt has been shelved in favor of a Linux platform that integrates a Palm emulation layer.
But the Cobalt story doesn’t end there. In producing Cobalt, PalmSource seems to have completed a transition of Palm OS into an application platform. One version of Palm OS ran on Cobalt, and the newest Palm OS will run on Linux. Thus, PalmOS currently is less a complete operating system, and more a set of APIs and applications that can be hosted on a supporting operating system kernel. (Nokia’s S60 and Trolltech’s QTopia are similar.)
Looking Like Lock-In?
Windows Mobile 5, Symbian/S60, and Palm OS are complete platforms. The vendor supplies everything necessary to port the platform to a system, including all of the applications and necessary third-party components like codecs, graphics engines, and application platforms. Developers and manufacturers find tools, training, and a community of professional services to provide additional expertise where needed.
Of course, all of the mobile operating systems described so far are proprietary. And, recalling the” monopoly” of the PC industry, no mobile device manufacturer wants a single vendor to control the entire platform, essentially dictating what innovation is widely supported and when it becomes supported. Additionally, along with the proprietary nature of the technology, each vendor has additional baggage that prevents it from attaining ubiquity:
*Everyone is wary of Microsoft, and for obvious and compelling reasons.
*Symbian, by itself, is not particularly threatening. However, Nokia’s significant ownership stake in Symbian, coupled with Nokia’s predominant S60, make Symbian a risky proposition for many manufacturers. After all, would you buy your operating system from a major competitor who also happens to be the market share leader?
*Access/PalmSource is burdened by the tight coupling of its applications to its platform. Applications can be a key differentiator for many manufacturers. In addition, Access/PalmSource is a leading mobile browser vendor, one that competes with many of the preferred choices in the industry.
The Linux Alternative
Linux is the only alternative to the proprietary, advanced operating systems available in the market today. Linux can compete with any of the proprietary kernels, and is able to fit within the memory and power constraints of an advanced mobile handset. In fact, Linux may be as much as 25% of the volume of the advanced phone market already.
Because Linux is available under an open source license, it assuages concerns about control that proprietary systems raise. In particular, no single organization can hold the platform hostage. If it looks like that might happen, because Linux is open, the most likely result is a competitor with a better alternative.
While there are Linux phones in the market today, it hasn’t been an easy road for the manufacturers. Kernels that are appropriate for the mobile phone are indeed different from the traditional Linux kernel. Key issues, including power consumption and management, memory management, integration of telephony control, kernel start-up time, in-place execution from flash, compressed file systems, and non-traditional file system integration, high performance, and near-real-time support, all must be addressed. The folks at MontaVista have been crucial in getting many critical kernel issues resolved, and now chip vendors such as Texas Instruments, Intel, and Freescale have started to offer board support packages with tuned Linux kernels often based on features provided by MontaVista.
However, central as it is, the kernel is really just the beginning. The more advanced phone requires a large collection of components to make up a complete platform. For instance, in addition to the kernel, you need a user interface and application framework, and a multimedia framework must be integrated to support the media processing available on the device and the increasing demand for media support and codec management by consumers.
Of course, applications must be integrated as well. The idle or” phonetop” application, phone dialer, phone book, call list, calendar, messaging, media management and display, and preferences settings are just the basics. System Preferences is an application or set of applications that require deep integration with most of the systems on the device including the user interface (skins and localization, for example), telephony, networking, kernel, media (ring tones and usage profiles). just to name a few. This set of applications represents the entry level offering necessary to support basic phone features.
Java ME, a Web browser, and support for Flash are also requirements. Mobile phones are increasingly being used as enterprise devices and push-email is now a requirement, too. Lower-level components used by applications or the system that require integration include device management, firmware over the air update, data synchronization, and graphics engines.
The integration, system testing, and licensing of these separate components are dominant factors in the cost and time needed to develop the platform. In addition, once the manufacturer has built the system and performed the necessary internal testing to make it ready for delivery to an operator, additional interoperability testing with the operators network must be completed. Finally, the entire system needs to be supported. As the device becomes more widely deployed, developer support for applications built to the platform is mandatory.
With all of this, volume deployments of a Linux platform for mobile phones can only be accomplished by the largest manufacturers. Reports indicate that it can cost in the hundreds of millions to field a high-volume, Linux-based phone.
So, What’s It Going to Take?
In an important white paper released in February of this year (see http://www.osdl.org/lab_activities/mobile_linux/mli/), Bill Weinberg of the Open Source Development Labs (OSDL) suggested that the pre-integration of Linux platform components would be necessary for Linux to achieve ubiquity with end-users. He also pointed to other important gaps that needed to be filled in the industry: increased ease of development; improved integration, testing and documentation processes; standardization of the platform APIs; a customizable platform; and support for telephony software integration on single and multi-core processors. Of course he’s right, this all needs doing and much of it is getting done. But more is needed.
For Linux to be successful as a mobile operating system, Linux must be supported as a platform for mobile phones rather than simply a kernel and associated components requiring integration. This requires a platform vendor to stand by a fully-integrated stack, and provide technical support, developer support, porting services, integration services, application and technology validation and certification, and application development services.
Today, OEMs can get a fully supported, well-integrated stack, including all necessary applications from Microsoft, Symbian/S60, and Access/PalmSource. A successful platform vendor must be able to supply the OEM with as much of the platform as it needs, because of the complexity of the advanced operating system and its associated components. In certain cases this means providing the entire stack including applications.
A mobile phone platform based on Linux means freedom of choice. It is practically impossible for a single provider to achieve lock-in. The successful platform vendor will instead keep its customers and market share by providing value, innovations, better overall service, price, or a combination of all three.
Better yet, Linux is brand-neutral. It’s often stated that no consumer user really cares which operating system is on their handsets. That is certainly true today and talking to operators and manufacturers alike they seem to want to keep it that way.
A NEW KIND OF PLATFORM VENDOR
Linux is a decisive move away from the tradition of proprietary and monolithic software platforms.
Any Platform vendor that provides a mobile Linux platform will have to differentiate itself from existing operating system providers. Such a vendor must:
*Focus on mobile handsets rather than handsets, PDA’s, set-top boxes, and home-gateways.
*Must offer a complete, top-to-bottom, fully-integrated platform.
*Must embrace free and open source software, yet remain capable of integrating a variety of proprietary technologies, and remain unencumbered by legacy business models or product offerings.
Due to open source licensing, a key differentiating value of Linux is its capability of being configured however a handset vendor desires. However, practically speaking, it is much too costly for the handset vendor to take responsibility for an entire operating system platform. This must be done by a platform vendor.
Unlike any mobile platform company to date, a successful mobile Linux platform vendor will have to provide a distribution that can be configured to customer demands, while fully supporting the configured platform no matter how it’s configured. It’s no longer reasonable to expect that a single binary platform from a single vendor that tries to be all things to all customer is sufficient. A complete platform is necessary to provide manufacturers with all of the components that they need, but that platform also must be able to accept the replacement of components as determined by the manufacturer.
a la Mobile
a la Mobile[ the author’s employer] is entering the market with a complete platform for mobile phones based on Linux. The company produces a distribution that integrates a highly-tuned Linux kernel with open-source and proprietary components that complement a vendor’s hardware platform and radio software to produce an advanced mobile phone. For a broad class of the market, a complete stack is necessary. The a la Mobile Convergent Linux Platform satisfies this requirement, while remaining completely configureable to the manufacturers needs and specifications.
Complementing the distribution, a la Mobile provides the necessary professional services to complete platform integration and customization from initial design through operator IOT, including continuing support. Custom applications, user interface design and branding can all be provided by a la Mobile. A la Mobile will also certify applications with a particular version a la Mobile’s Convergent Linux Platform.
Among the most vexing issues a manufacturer faces in producing an advanced mobile phone is the time it takes to get to volume production. As software becomes the predominant component in the system, anything that can be done to decrease the time it takes to integrate that software into the system is valuable. The a la Mobile platform is engineered to decrease the time it takes to integrate the platform into the system.
Taking a page from the book of the PC industry, a la Mobile has constructed the Hardware Mobility Engine (HME), which allows a binary of the complete operating system, including applications, to be reused across families of handsets. Much like a BIOS for the mobile phone, the HME allows for development of an operating system platform to be completed independent of hardware platform development. The hardware platform is integrated with and tested against the HME, while the operating system platform is instrumented to mate with the HME. The HME provides for significant reuse of the operating system platform across multiple hardware systems, including systems with processors from different vendors (such as TI, Intel, Freescale and Qualcomm). The only requirement for reuse of the operating system binary, other than the HME, is that the same underlying processor architecture is shared.
The Time Is Now
Demand for an advanced operating system in mobile phones is being fueled by both the increasing use of ever more complex software in the handset and the increasing capabilities of the device hardware. However, those proprietary operating systems that can meet the demand also pose the risk of lock-in. No manufacturer or operator wants that.
A Linux-based platform is a natural solution. But for that to be successful, vendors must provide a complete platform, including applications, that’s quickly and easily configured to each manufacturer’s needs.
This is a significant shift from the tradition of operating system platform companies providing manufacturers with a strictly monolithic and largely proprietary operating system platform as an all or nothing proposition. Companies like a la Mobile are changing the way operating system platforms are provided to the industry. And that’s good for everybody.
David Rivas is the CTO of a la Mobile. Previously, David spent twelve years at Sun Microsystems. When he left Sun, he was the CTO of the business unit responsible for Java ME which is currently shipping in about one billion phones. David can be reached at
class="emailaddress">drivas@a-la-mobile.com.
No comments yet.