Wednesday, April 28, 2010

Current and Future Developments in Embedded Mobile Linux

An increasing number of manufacturers are adopting Linux for their mobile phones since it enables them to use the same operating system on a large range of different products. It also gives them greater flexibility in differentiating devices, without being locked into proprietary schemes.

Mobile phones running Linux include
- Motorola A760, A768, A780, and E680
- Panasonic P901i
- NEC N901ic
- Samsung SCH-i519
- Telepong
- Wildseed
- ROAD S101 devices

The Sharp Zaurus PDAs have been leading in the area of handheld Linux devices for many years.

Additional Resources

You can find more information about embedded Linux and Linux for mobile devices, including the latest on Linux gadgets and software applications here.

Comparison with Other Embedded Operating Systems

Compared with other embedded operating systems, like QNX, Windows CE, Embedded NT, or Palm OS, Embedded Linux has the advantages of being Open Source, stable and well supported, having a small footprint (2MB), and requiring no royalty payments.

Embedded Mobile Linux Processors and Vendors

Processor Architectures used with Embedded/Mobile Linux

Besides the ARM processors, embedded Linux has been adapted to a variety of processors, including
- IBM PowerPC embedded processors
- Tensilica’s Xtensa microprocessors
- Intel’s processors for wireless devices
- Freescale's PowerPC and PowerQuicc processors

Embedded Linux Vendors

Organizations developing embedded/mobile Linux products include
- RTLinux
- LynuxWorks
- Wind River
- MontaVista, which has released Mobilinux, the first version of its Linux operating system specifically designed and optimized for mobile phones and wireless devices.

Mobile Linux vs. Standard (x86-based) Linux

The methodical design of Linux, a UNIX-based operating system, made it possible to adapt it to a wide range of computing platforms. Originally developed for Intel 386 processors and their successors, Linux was soon ported to DEC Alpha processor architectures and runs today on many other widely adopted CPUs. Of particular interest in this context are the ARM based architectures, as many embedded systems and mobile devices are powered by ARM processors. Being able to extract the core functionality of Linux and minimize its footprint made it possible to adopt Linux as an open standard for small and inexpensive devices.

Embedded Linux for Mobile Devices

The first operating systems for mobile phones and other mobile consumer electronic devices were custom developed, which means they were expensive to develop and maintain, as all hardware drivers and interfaces had to be written from scratch in a low level programming language.

Soon developers started to look for higher-level approaches that would facilitate re-use of software components. A typical installation of embedded Linux requires only about two megabytes, which was therefore a good candidate for use as operating system of resource limited devices. Furthermore, Linux is Open Source and therefore well suited as basis for standards.

A group of companies interested in the development of Linux products formed The Embedded Linux Consortium (ELC) in order to promote Linux and develop standards for the embedded computing markets. Standards are also developed for managing power consumption of devices, designing user interfaces, and real-time operation of embedded Linux software. One of the results of this effort is the Embedded Linux Consortium Platform Specification (ELCPS).

Power Combination: Mobile Linux and Mobile Java

While Linux is evolving into a major standard for mobile device operating systems, Java is becoming a standard at the software application level. The J2ME/MIDP specifications have been adopted by all major mobile phone manufacturers, which enables software developers to write applications that can be run, without modifications, on all such devices that adhere to these specifications. The MIDP (Mobile Information Device Profile) is comprised of a set of Java APIs, that provides a J2ME (Java 2 Micro Edition) runtime environment for mobile information devices. It standardizes functions such as user interface design, persistent storage, and networking.

Introduction to Embedded Mobile Linux

To understand the exciting, relatively new, mobile Linux technology, you need background knowledge on embedded Linux, real-time Linux and handheld Linux.

What is Embedded Linux

Linux for mobile phones and other mobile devices is part of the field of "Embedded Linux". "Embedded" refers to the concept of integrating a computational system (a small computer) into a machine or device, other than an ordinary computer, in order to make such machines smarter and more flexible. That is, the primary function of such a machine is something other than being a computer. For example, a specialized computer could be embedded in a car to control ignition, fuel injection, anti-lock braking, and the many other functions of a modern car.

Real-Time is Important

For such applications it is important that the computer system responds quickly and reliably to any tasks given to it, that is, it needs to be run by a "real-time" operating system.

What is a Mobile Computing Device

Mobile simply means portable, easy to be moved about. Several technologies help to make a computing device mobile. First, the size has be small, preferably handheld. It should be powered with rechargeable batteries, and wireless technologies for transmitting and exchanging data have become important as well.

Hot Stuff - Embedded Computer Systems That are Also Mobile

Although an embedded system can be part of a stationary device (e.g., a home security system), and not all mobile devices have embedded or real-time components (e.g., a personal digital assistant or PDA), the greatest interest right now is in embedded computer systems in mobile devices, such as mobile phones.