
Last week, Palm, Inc. announced its new entry into the mobile market with its Palm Pre, loaded with its new WebOS. In a previous blog post, I discussed this device back when it was known as the Palm Nova and how Palm is attempting to reenter a market it let slip from them years ago. Since we at the Institute for Cyber Security develop technologies that are meant to be accessible even on such mobile devices, I thought it might be worth visiting mobile development from the five large OS developers: Palm, Windows Mobile, Blackberry, Apple iPhone,and Nokia in the areas of openness, security, and ease of development.
I: Palm OS
To develop for the Palm OS, you should know C. All Palm programs are compiled into .pdb resource files. C is a very open language and quite robust, though somewhat weaker when it comes to full-fledged applications. At the introduction of the Palm Pilot, C wasn't an inappropriate choice.
One standout thing about developing for the PalmOS was its developer suite. Riding heavily on the coattails of the Eclipse platform, their suite allowed for fast development of real applications, and GUI development was a snap. Visiting the link above will seem like traveling back in time, as Palm has let the development suite atrophy for years, and documentation as atrophied and been misplaced/mis-linked along the way. A real shame.
From a security perspective, as connected devices became more prevalent, C as a primary language makes it difficult to handle common attacks, such as bufffer overflows. Using raw sockets (Palm uses thin wrappers around the Berkeley sockets library.) makes it difficult to guard against incoming attacks, and although open source security and cryptographic libraries exist, compiling them for the Palm OS and thoroughly testing is a non-trivial exercise, especially when security is an afterthought. Though using a higher-level language such as Java is possible, Sun's certificate requirement makes testing an expensive block.
As Palm has all but ceded application development for the last half decade (excepting, potentially, the WebOS), it's hard to quantify how much Palm application development is actually in the works. In 2005, Palm OS Cobalt from 2005 was supposed to continue the evolution of the Palm OS, but when they began to focus on the hardware side of things, the PalmOS market share shrunk from a sizeable majority to its current relegation as a niche OS for smart phones. With any luck, Palm Pre will show us Palm "post" these problems.
Tune in tomorrow, when we move from a hardware developer who once specialized in an OS, to an OS developer that has found a home on these very same devices.
Erhan J. Kartaltepe,
erhan-kartaltepe-at-utsa.edu

