News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

How Linux became a mobile phone OS

Aug 15, 2007 — by LinuxDevices Staff — from the LinuxDevices Archive — views

Linux started out on desktops and servers, but has now shipped on about 20 million mobile phones. Ever wonder how it made the jump? In a new whitepaper, embedded industry pioneer Jim Ready offers a concise technical retrospective on Linux's transition into a mobile phone OS.

Spread the word:
digg this story

Ready credits semiconductor vendors, embedded Linux providers, and the open source community with helping to make Linux the powerhouse it is today in the mobile phone market. Other factors include Linux's horizontal, vendor-neutral nature and customizability, and “Moore's Law,” which over time has resulted in processors powerful enough and memory inexpensive enough to make Linux practical in mobile devices.

First, though, developers had to solve major problems. They had to make Linux less memory-hungry, and remove dependencies on RAM execution. They had to create cross-development tools and emulators, and stabilized, commercial-quality code releases. Finally, they had to port Linux to the actual processors used in mobile phones — typically brand new silicon designs, he notes.

Along the way, important performance milestones were realized. Boot-up time dropped to 10 seconds — about half that of Symbian and Windows Mobile. “Dynamic power management” provided a standardized way for userspace applications to power down unused peripherals and interfaces. And, Memory Type Allocation empowered programmers to dictate exactly where specific programs would be stored, for example allocating frequently accessed code on the fastest available memory device(s).

Over time, Linux also came to better meet important memory footprint limitations. Integral toolchain and library support for the 8- and 16-bit “Thumb” instructions present in all ARM processors brought higher code density, resulting in smaller binaries with lower storage requirements (uClibc can now be compiled in Thumb mode, for instance, for a much smaller system library). The kernel was adapted to allow it to “execute in place” (XIP), without first being instantiated in RAM. Finally, DirectFB offered a much smaller alternative to the X Window system, and one that still supports hardware graphics acceleration, input device handling and abstraction, and eye-candy like translucent windows and layered displays.

Finally, with regard to real-time performance, Linux has at last “closed the gaps” with traditional RTOSes, Ready contends. This “holy grail” was finally achieved by removing spin-locks, adding priority inheriting mutexes, and adapting Linux to service interrupts in thread context, instead of interrupt context, according to Ready.

To learn more about Linux's technical transformation into a mobile phone OS, read Ready's excellent technical retrospective, entitled “Linux for the handset: a rising force.”


 
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.



Comments are closed.