Palm OS offers a route into mobile development for C programmers

Many of the apps for the popular PDAs are written in C

Many of the apps for the popular PDAs are written in C

What is it?

The Palm operating system is used by more than 35 million personal digital assistants, smartphones and other handheld devices, and there is a thriving market in developing applications for them, from integration with corporate systems to games.

Much of the demand is met by hundreds of small software houses, and much of the development is done in the C programming language. It offers a route into mobile development for C developers.

The Palm OS Developer Suite brings together compilers, debuggers, simulators, software developer's kits and other tools which are either compatible with or are being moved towards the Java-based Eclipse development platform.

PalmSource, the originator of Palm OS, said there are more than 2.3 million Palm OS developers worldwide.

Where did it originate?

Palm Computing was founded in 1992. Its first handheld device, the Zoomer, was eclipsed by competitors from Hewlett-Packard, Apple and Sharp.

US Robotics took the company over and brought out the Pilot, which was an immediate success, selling 350,000 in its first year. Later models were called Palm Pilot and then just Palm.

3Com bought the company in 1999. With the Palm III in 1998, the OS moved from read-only to Flash memory, allowing upgrades.

What's it for?

There are two versions: the traditional Garnet Palm OS and the next generation Cobalt Palm OS, which has advanced networking, security, graphics, multimedia, synchronisation and other system services.

What makes it special?

Applications can be developed in different languages, including C, C++, Visual Basic and Java, and there are a various development environments available for these. Standard C environments are used most commonly.

Palm OS provides much of the functionality that applications need for memory management, string manipulation and other essentials, which keeps C and C++ applications compact. Visual Basic and Java require a runtime engine, and applications are not so compact and efficient.

Palm OS devices use most forms of wireless communication, including infrared, Bluetooth, Wi-Fi, and cellular telephony.

How difficult is it to master?

When you make the switch from desktop to handheld application development, you accept new disciplines and constraints: small screen, smaller memory, less powerful processor, and a keyboard that is uncomfortable to use for more than a few keystrokes at a time.

Applications tend to be used frequently for short periods rather than single, long sessions. Material on the Palm OS website is aimed at quickly adapting existing programming skills.

Where is it used?

The number of Palm clone manufacturers has fallen, and Microsoft Windows CE sales overtook Palm OS for the first time in 2004. But like the Macintosh and other minority platforms, Palm technology has a loyal core following.

What systems does it run on?

Perhaps ironically, given the threat from CE, the Palm OS Developer Suite is designed for Windows 2000 or XP PCs.

What's coming up?

Sales of Cobalt have been disappointing. Analyst firm Gartner is predicting that Palm will move to Linux, and recommends that developers and users adopt a "Palm OS for Linux"strategy .


Read more on Wireless networking