A Survey of Embedded Linux Packages

Brief looks at the various embedded Linux projects and applications.
GUI and Windowing Environments for Embedded Devices (Commercial and NonCommercial)

Century Software: Microwindows PDA Operating Environment—a fully functional screen-top, web browser, terminal emulator, pop-up keyboard and handwriting recognition system as the basis for development and execution of Linux-based applications for the iPAQ and other PDAs. http://embedded.centurysoftware.com/.

Lineo: Embedix UI—a low footprint, HTML-based user-interface solution for embedded devices. Provides an easy way to create an aesthetically pleasing interface while adding functionality in a wide variety of devices; it is well suited for controlled-content embedded devices including webpads, information appliances, kiosks, screen phones, set-top boxes, point-of-sale terminals, home entertainment devices, industrial automation, etc. http://www.lineo.com/.

Compaq: The Open Handheld Program—Compaq established the Open Handheld Program in order to stimulate innovation and research on handheld devices (e.g., PDAs). The effort was seeded with the results of the earlier Compaq “Itsy” pocket computer project. A developmental Linux port for the Compaq iPAQ is currently available for download. http://www.handhelds.org/.

The Microwindows Project—an open-source project aimed at bringing the features of modern graphical windowing environments to smaller devices and platforms. Microwindows applications are built and tested on the Linux desktop, as well as cross-compiled for the target device. http://www.microwindows.org/.

The TinyX Project—a small footprint X Windows system server implementation for embedded systems. It was developed by Keith Packard of the XFree86 Core Team, sponsored by SuSE. The goal was to create something that would work well in a small memory footprint and, importantly, be robust in near out-of-memory situations. Typical X Windows system servers based on TinyX can fit on less than 1MB in X86 CPUs. http://www.xfree86.org/

Transvirtual Technology: PocketLinux PDA Framework—a Linux-based PDA software environment that integrates Kaffe (a “clean room” implementation of Java) with embedded Linux and also provides built-in support for XML. PocketLinux also includes an integrated frame-buffer graphics library that eliminates the need for a resource-hungry X Window System. http://www.pocketlinux.org/.

Trolltech: Qt/Embedded—Qt/Embedded features an API that is identical to the existing Qt/X11 and Qt/Windows products. However, Qt/Embedded is not based on X11 and, therefore, it has substantially lower memory requirements than X11. By picking and choosing features, the memory demands can be tuned from 800KB to 3MB in ROM (Intel X86). http://www.trolltech.com/.

Trolltech: Qt Palmtop Environment—a complete PDA Linux software package, including a Window System, Window Manager, Application Launcher, Input Methods (virtual keyboard, etc.), GUI toolkit and collection of useful applications, all written using the standard Qt API—the same API found on Qt/X11 and Qt/Windows. http://www.trolltech.com/.

The ViewML Project—a freely available, open-source web browser targeted specifically at the embedded Linux platform. Currently, ViewML along with its interface requires 2.1MB of RAM, with a disk image of only 760K. http://www.viewml.org/.

Rick Lehrbaum (rick@linuxdevices.com) created the LinuxDevices.com “embedded Linux portal”, which recently became part of the ZDNet Linux Resource Center. Rick has worked in the field of embedded systems since 1979. He cofounded Ampro Computers, founded the PC/104 Consortium and was instrumental in launching the Embedded Linux Consortium.