LinuxDevCenter.com

oreilly.comSafari Books Online.Conferences.

We've expanded our Linux news coverage and improved our search! Search for all things Linux across O'Reilly!

Search
Search Tips

advertisement

Listen Print Discuss Subscribe to Linux Subscribe to Newsletters

Linux on Your PDA
Pages: 1, 2, 3

The current marketplace

Comment on this article Would you consider switching to a Linux-based PDA?
Post your comments.

The Palm platform is certainly the biggest success story in the personal digital assistant (PDA) market, holding up to 90 percent of the market share in the U.S. at the end of 2000, according to some surveys. The largest base of independent software for hand-held devices is written for the Palm platform.



Palm Inc. achieved this success largely by creating and supporting a large developer base which created a huge collection of applications. This was done by providing an open development environment, including free tools and access to source code for the applications and most of the operating system itself. Lately Palm has been licensing the OS for third-party manufacturers, such as Handspring and Sony.

Unfortunately, while the Palm platform found the sweetspot for ease of use on relatively weak processors, it is starting to show its age. While color versions are now available, and some new models are appearing with display sizes double the default 160 x 160 pixels, the OS itself is lacking major features. Multitasking and interprocess communications (IPC) are foreign concepts to the Palm OS.

While taking the usual three attempts to produce something worth using, Microsoft's Windows for Pocket PCs (formally known as Windows CE, or WinCE) is currently gaining significant market share from Palm. WinCE is riding into town on the backs of high-powered devices with full-color displays, being produced by companies like HP and Compaq.

And the hardware is impressive -- 32-bit processors running at up to 200 MHz, with memory varying from 8 to 64 megabytes of RAM. The color displays, with bright white back-lighting, can make grown execs drool. The CF and PCI expansion options make geeks stare off into space for long minutes, considering the possibilities -- memory, storage, NC, 802.11, GPS, Bluetooth ... Oh, gimme!

Linux on a PDA

As most who are reading this article will already understand, the advantage of running Linux and other free and open-source software on a hand-held device is the same as running it anywhere else: You're in control. You can trust your system to not have back doors or too many Stupid Programmer Errors. Having what's needed to fix anything that's broken is always nice too. (Hey, SPEs happen.)

To the PDA manufacturers, though, it's also a bottom-line thing -- using Linux means they can offer their products without having to include the cost of WinCE, estimated to be as much as $30 for some models. This was certainly part of the motivation for Agenda Computing's decision to use Linux instead of WinCE for their PDAs. The Linux buzz never hurts either.

But simply getting Linux to boot on a hand-held device, vs. providing a complete and consistent PDA "experience" are two totally different things. In analogy, the former might be thought of as being a bit like mountain climbing -- keep at it long enough, and eventually you'll get there. On the hand, the user interface is very much an arts thing, and there is no right answer.

Even during the climb to a working kernel and system, there is some interesting (read: Chinese curse) terrain to cover. Think about some of the things a hand-held device has to deal with, like hard memory constraints of usually 32 megs or less. With no swap partition to page out to when you're out of memory, you're out of memory!

Storage is also an interesting resource, usually being hosted on flash memory. A property of flash is that it can only handle having a block written to about 100,000 times, so common file systems like ext2, which frequently write to particular blocks during its operations, are not the best solution. They will work, but will be burning out blocks while not ever touching others.

Oh, and you might be asked to suspend yourself with very little notice at any time during operations. Thus running programs must expect to have large gaps in their time awareness. Have a little daily job launched by a custom daemon at 3:00 a.m.? Better be sure the daemon knows what to do when time "leaps" from 5:10 p.m. Friday to 8:30 a.m. Monday.

The good news is there are several teams having success bringing up Linux environments on various hand-held devices. Examples include the Linux VR project for MIPS hand-held devices and the Handhelds.org site, which focuses on ARM processor based PDAs (like the Yopy and iPAQ).

So the kernel and OS is here, now what?

Pages: 1, 2, 3

Next Pagearrow




Tagged Articles

Be the first to post this article to del.icio.us

Sponsored Resources

  • Inside Lightroom
Advertisement

Sponsored by:

O'Reilly Media

©2009, O'Reilly Media, Inc.
(707) 827-7000 / (800) 998-9938
All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners.
About O'Reilly
Academic Solutions
Authors
Contacts
Customer Service
Jobs
Newsletters
O'Reilly Labs
Press Room
Privacy Policy
RSS Feeds
Terms of Service
User Groups
Writing for O'Reilly
Content Archive
Business Technology
Computer Technology
Google
Microsoft
Mobile
Network
Operating System
Digital Photography
Programming
Software
Web
Web Design
More O'Reilly Sites
O'Reilly Radar
Ignite
Tools of Change for Publishing
Digital Media
Inside iPhone
O'Reilly FYI
makezine.com
craftzine.com
hackszine.com
perl.com
xml.com

Partner Sites
InsideRIA
java.net
O'Reilly Insights on Forbes.com