Palm OS
| Company type | Proprietary software |
|---|---|
| Industry | Mobile operating system |
| Founded | 1996 |
| Founder | Jeff Hawkins |
| Fate | Rebranded as Garnet OS; succeeded by Access Linux Platform and webOS |
| Headquarters | United States |
Area served | Mobile devices (PDAs, smartphones) |
Key people | Jeff Hawkins (developer) |
| Products | Palm OS mobile operating system |
| Owner | Palm, Inc.; later PalmSource; then ACCESS |
Palm OS—also referred to as Garnet OS—was a mobile operating system originally developed by Palm, Inc. in 1996 for use on personal digital assistant (PDA) devices. Featuring a touchscreen-oriented graphical user interface, it came equipped with fundamental personal information management tools and eventually extended support to smartphone platforms. The operating system was utilized in Palm's own hardware and also licensed to various other manufacturers.
Following Palm's acquisition of the Palm trademark, the operating system was rebranded as Garnet OS. In 2007, the company ACCESS launched the successor platform known as the Access Linux Platform, while Palm—the primary license holder—transitioned to using webOS in 2009.
Creator and ownership
The development of Palm OS was led by Jeff Hawkins at Palm Computing. Initially, Palm was acquired by U.S. Robotics Corp., then later by 3Com, which eventually spun off Palm as an independent publicly traded company in 2000.
In 2002, Palm established a separate entity called PalmSource to focus on the development and licensing of Palm OS. By 2003, PalmSource had become an independent company, with Palm (renamed palmOne at the time) acting solely as a licensee without direct control over the operating system.
ACCESS acquired PalmSource in 2005. The following year, Palm secured perpetual rights to the Palm OS source code from ACCESS, granting them the ability to modify it without incurring royalty fees. Combined with obtaining exclusive ownership of the Palm brand name in 2005, this arrangement meant that only Palm retained the authority to release OS versions under the 'Palm OS' brand.
As a result, ACCESS renamed their version of the operating system Garnet OS in January 2007.
OS overview
Developed as a proprietary mobile operating system in 1996 for Palm Computing Inc.'s Pilot PDA, Palm OS powered a wide range of devices including smartphones, wrist-worn devices, handheld gaming consoles, barcode scanners, and GPS receivers.
Earlier releases prior to version 5.0 operated on Motorola/Freescale DragonBall processors; starting with version 5.0, support shifted toward processors based on the ARM architecture.
Notable characteristics of Palm OS Garnet encompassed:
- A straightforward, single-tasking environment featuring full-screen applications and a uniform GUI
- Displays ranging from monochrome to color with resolutions up to 480x320 pixels
- Handwriting input recognition through Graffiti 2
- HotSync technology enabling synchronization with desktop computers
- Audio playback and recording capabilities
- Basic security measures such as device password protection and encrypted application data
- Support for TCP/IP networking protocols
- Multiple connectivity options including Serial port/USB, infrared communication, Bluetooth, and Wi-Fi
- Expandability via memory card slots
- Standardized data formats for managing personal information (calendar events, contacts, tasks, notes), accessible by third-party software
The operating system also integrated native applications that facilitated these core personal information management functions.
Version history and technical background
Hardware manufacturers had the option to implement or enhance features beyond those provided in the official versions licensed from Palm/PalmSource/ACCESS.
Versions before Palm OS 5 were constructed on an AMX 68000-based kernel licensed from KADAK Products Ltd. Although this kernel technically supported multitasking capabilities, licensing restrictions prevented developers from accessing multitasking APIs.
Palm OS 1.0
Introduced in March 1996 on the Pilot 1000 and 5000 models, Palm OS 1.0 included essential personal information management (PIM) software such as Address, Date Book, Memo Pad, and To Do List. It also featured a calculator and a Security utility to protect sensitive information. The operating system operated without a dedicated file system, executing applications directly from RAM, and was designed for 160x160 pixel monochrome displays. User interaction was primarily through the Graffiti handwriting recognition system or an optional on-screen keyboard. Synchronization with desktop computers was accomplished via HotSync over a serial connection. The final maintenance update was version 1.0.7.
Palm OS 2.0
Released on March 10, 1997 alongside the PalmPilot Personal and Professional devices, Palm OS 2.0 introduced TCP/IP networking capabilities, network-based HotSync functionality, and support for display backlighting. New applications such as Mail and Expense were added, alongside improvements to the existing PIM suite. The last patch issued was version 2.0.5.
Palm OS 3.0
Launched on March 9, 1998 with the Palm III series, Palm OS 3.0 brought infrared connectivity via IrDA, enhanced font rendering, upgraded PIM applications, and a more advanced application launcher.
Palm OS 3.1, which appeared with the Palm IIIx and Palm V models, introduced minor enhancements including network HotSync support; its final update was version 3.1.1.
Palm OS 3.2, released alongside the Palm VII, incorporated Web Clipping technology to deliver web content optimized for PDA screens.
Palm OS 3.3, debuting with the Palm Vx, improved HotSync transfer speeds and added infrared HotSync capability.
Palm OS 3.5, initially available on the Palm IIIc, brought native support for 8-bit color displays and operational improvements such as a context-sensitive icon bar and simplified menu navigation; the Date Book application gained an agenda view feature. The latest update was version 3.5.3.
Additionally, Palm offered a Mobile Internet Kit upgrade compatible with OS 3.5 that combined Web Clipping, MultiMail (later known as VersaMail) email client, handPHONE SMS software, and the Neomar WAP browser to enable wireless connectivity through mobile phones.
Palm OS 4.0
Palm OS 4.0 was introduced on March 19, 2001 with the Palm m500 series. This release established a standardized interface for accessing external file systems like SD cards and transitioned application code and data loading into RAM, bringing its operation closer to that of desktop operating systems. It also debuted a new Universal Connector featuring USB support and integrated the previously optional Mobile Internet Kit directly into the OS. Additional features included an attention manager to coordinate alerts via sound, LED indicators, or vibration; support for 16-bit color displays; multi-time zone functionality; as well as enhancements in security and user interface design.
Palm OS 4.1 served as a bugfix update that accompanied the launch of the Palm i705. Subsequently, version 4.1.2 backported Graffiti 2 from Palm OS 5.2.
Palm OS 4.2 Simplified Chinese Edition was developed specifically for the Chinese market with comprehensive Simplified Chinese language support and was released concurrently with Palm OS 5.3; however, no hardware shipped pre-installed with this version.
During this timeframe, two emulators for Palm OS were developed targeting the rival Windows CE (later known as Pocket PC) platform: the official Palm OS Emulator (formerly CoPilot), created by Conduits and other developers; and PocketPalm, an independent project by George Andre promoted by Elad Yakobowicz of Pocketnow.
Palm OS 5.0
In June 2002, PalmSource introduced Palm OS 5.0, debuting on the Palm Tungsten T. This version marked the transition to support for ARM processors by replacing the Kadak AMX68000 kernel with their proprietary MCK kernel. Applications originally designed for the DragonBall 68K instruction set operated through the Palm Application Compatibility Environment (PACE) emulator, often delivering improved performance on ARM hardware. Developers could also optimize new applications by incorporating small ARM code segments known as ARMlets.
Palm OS 5 enhanced multimedia functionality by accommodating higher-resolution 320x320 displays, offering comprehensive digital sound APIs, and integrating Bluetooth alongside Wi-Fi protocol stacks. The system also supported secure SSL connections and allowed users to personalize color schemes.
PalmSource created and licensed the PalmSource Web Browser, which was based on ACCESS' NetFront 3.0 platform tailored for Palm OS 5.
Palm OS 5.2 prioritized stability improvements and was first seen on the Samsung SGH-i500 in March 2003. This update introduced support for 480x320 screen resolutions and implemented a new handwriting recognition system called Graffiti 2, derived from CIC's Jot technology following a legal agreement with Xerox. The final maintenance release in this series was version 5.2.8.
Palm OS 5.3 Simplified Chinese Edition, launched in September 2003, provided comprehensive support for Simplified Chinese characters, expanded compatibility with QVGA display resolutions, and added the Dynamic Input Area API to enable virtual Graffiti input. Lenovo’s P100 and P300 handheld devices were among the initial products to feature this edition.
Palm OS Garnet (version 5.4) brought updated Bluetooth libraries and broadened screen resolution support from 160x160 up to 480x320 pixels, first appearing on the Treo 650 in November 2004. This release introduced the Garnet branding to differentiate it from Palm OS Cobalt 6.0; its last maintenance update was version 5.4.9.
By early 2007, Garnet OS 5.5 had dropped the Palm prefix and became ACCESS's active platform iteration, designed to operate within the Garnet VM virtual machine environment.
ACCESS launched Garnet VM in November 2007 as part of the Access Linux Platform, enabling Nokia Internet Tablets to execute Garnet OS applications. In June 2010, ACCESS released version 6 of Garnet VM (Beta 6 1.05b).
Palm OS Cobalt
Unveiled on February 10, 2004, Palm OS Cobalt (6.0) was intended as the successor to Palm OS 5 but is no longer supported by ACCESS. Originally designated Palm OS 6.0, it was renamed Palm OS Cobalt to clearly separate it from Palm OS 5, which had been rebranded as Palm OS Garnet.
Cobalt introduced a modern operating system architecture to embedded devices featuring a new kernel with multitasking capabilities and memory protection mechanisms. It incorporated an advanced multimedia and graphics framework stemming from Palm's acquisition of BeOS, enhanced security protocols, and updated personal information management (PIM) file formats for improved interoperability with Microsoft Outlook.
Palm OS Cobalt 6.1 added standardized communication libraries covering telephony, Wi-Fi, and Bluetooth; however, it did not secure any licensees.
Third-party OS enhancements
Several licensees implemented custom enhancements that extended beyond the officially licensed Palm OS versions:
- Palm introduced a Bluetooth API to support external Bluetooth SDIO Cards on devices running Palm OS 4.0; this Bluetooth stack was subsequently incorporated into Palm OS 5.
- An API for a virtual graffiti input area was created specifically for the Tungsten T3, which was later superseded by the Dynamic Input Area API starting with Palm OS 5.3.
- With Palm OS 5.4, Palm launched the Non-Volatile File System, transitioning storage from DRAM to Flash memory to safeguard data during battery depletion. This architectural shift impacted program execution and necessitated explicit NVFS compatibility in numerous applications due to resulting compatibility challenges.
- Devices equipped with cameras gained access to the CameraLib API.
- Sony incorporated JogDial input support on their CLIÉ handhelds through a dedicated software library.
Modernization
PalmSource aimed to develop a contemporary successor to Palm OS 5 by releasing Palm OS Cobalt 6.0 in January 2004; however, it failed to secure any licensee adoption. Despite enhancements introduced in Palm OS Cobalt 6.1 later that year, no commercial hardware utilizing this version materialized.
After acquiring China Mobilesoft in December 2004, PalmSource altered its approach, intending to port Palm OS onto a Linux kernel while maintaining both Garnet and Cobalt variants. By mid-2005, with no Cobalt-based devices announced, development on non-Linux platform projects was discontinued.
Following PalmSource’s acquisition by ACCESS, the Linux-based operating system evolved into the Access Linux Platform, unveiled in February 2006. The initial platform releases and development kits became available by February 2007; nonetheless, as of January 2011, no commercial devices had been launched utilizing this platform despite available SDKs and public demonstrations.
Palm, Inc., the primary licensee of Palm OS Garnet, opted not to adopt the Access Linux Platform. Instead, it pursued development of its own Linux-based system known as Palm webOS. In February 2009, Palm CEO Ed Colligan announced that no new Palm OS devices would be produced beyond existing inventory, shifting focus toward webOS and Windows Mobile platforms. By April 2009, Palm released a Palm OS emulator for webOS to enable continued support for legacy applications.
Built-in applications
Licensees of Palm OS select and tailor the pre-installed applications on their hardware.
Standard Palm OS applications
On more recent devices, traditional PIM applications such as "Address," "Date Book," "Memo Pad," and "ToDos" were replaced by upgraded versions titled "Contacts," "Calendar," "Memos," and "Tasks."
The Address application stores contact details organized by user-defined categories and features fixed slots for phone numbers and emails. Its successor, Contacts, supports multiple addresses, introduces nine additional fields including Website and Birthday, accommodates more phone numbers, and provides instant messaging quick access.
Calc offers a basic calculator with four arithmetic functions plus square root and percentage keys, memory capabilities, and an option to display previous calculations.
Date Book presents daily, weekly, or monthly views of schedules with event start and end times. The enhanced Calendar app adds a Day view, event categorization, location tagging, multi-day events support, timeless birthday entries, and time zone settings—features particularly useful for business scheduling.
Events can be configured to trigger alarms prior to their start time even if the device is powered off. The system supports recurring appointments along with attached notes.
Expense is designed for tracking business-related expenditures but requires synchronization with a PC for aggregation and analysis using provided Excel templates.
HotSync facilitates synchronization between Palm devices and PCs via USB, Bluetooth, IrDA, or network connections. Triggered by a physical button on the cradle, it installs software updates, performs database backups, and syncs data bi-directionally. Developers can create custom conduits for specialized desktop application integration. The Backup conduit allows data restoration and device migration within identical OS versions.
Certain Palm models rely on volatile memory necessitating continuous power supply; others utilize NVRAM or microdrive storage solutions to avoid data loss.
Memo Pad stores text notes up to 4,000 characters; its replacement Memos expands capacity to approximately 30 kB with options for alphabetical or manual sorting and user-configurable categories. Text entry supports Graffiti handwriting recognition, keyboards, or paste operations. Early adopters frequently shared valuable Memo Pad documents referred to as Memoware.
The To do list application enables creation of prioritized personal reminders with categories and attached notes. Items can be organized by due date, priority level, or category. The newer Tasks app adds functionality for repeating tasks and alarm notifications.
Preferences panels allow users to configure system settings such as Graffiti input methods, audio options, text shortcuts, network parameters, and time settings. Approximately fifteen default panels are included in Palm OS; additional panels can be installed by users.
The Security preference panel available on newer models manages device unlock passwords and controls visibility of protected records. It supports automatic locking after periods of inactivity; however, only the Palm Desktop software enforces this password on connected PCs—other programs may access unencrypted data files directly.
Widely used third-party core OS applications
Beginning with Palm OS 5.2, Palm rolled out enhanced versions of standard PIM apps that included features like Address categories, Ringtone linking, and extended memo lengths. To better correspond with Microsoft Outlook terminology, these applications were renamed: Address became Contacts, Datebook was changed to Calendar, Memo Pad turned into Memos, and To Do List was rebranded as Tasks.
Blazer serves as a web browser for Palm handheld devices. Early editions 1.0 and 2.0 operated on Palm OS 3.1 or later but depended on a now-defunct proxy server, making them unusable today. Version 3.0 is integrated into the Treo 600 smartphone. The latest Blazer 4.5 supports most key web standards and comes pre-installed on newer smartphones and Palm devices equipped with Internet connectivity.
Palm’s Note Pad application enables quick sketches using three pen thickness options and an eraser; certain models also allow background color customization. It is suitable for clear handwriting of approximately 20–30 words per page, while longer notes are better managed within Memo Pad. The desktop counterpart preserves Memo Pad drawings for PC use.
From 2006 onward, most new Palm handhelds feature Photos, a digital photo album designed for viewing and organizing images on Palm OS gadgets. Users can beam photos to other devices, assign labels, arrange them into albums, and showcase slideshows. Editing is available through Palm Photos PC software (Windows only), with edits retained upon syncing back to the device.
Palm Photos software is bundled with models such as the Zire 71, Tungsten C/E/T2/T3, among others. After adding video playback capabilities, the app was renamed Media and later evolved into Pics & Videos.
Certain devices also include voice recording functions that synchronize via the Voice conduit and can be accessed on desktop computers through the Voice Memo utility within the Palm Desktop Suite.
Third-party software
By 2008, the Palm OS ecosystem offered over 50,000 third-party applications spanning various licensing formats including open source, freeware, shareware, and commercial licenses.
HackMaster stands out as a prominent extension manager for Palm OS, allowing enhancement of system features through patches; numerous third-party OS extensions rely on this tool.
In November 2022, the Internet Archive launched a collection of 565 Palm OS applications accessible directly in browsers via CloudpilotEmu, an emulator replicating the PalmPilot Palm OS environment.
Software development
Applications for Palm OS Garnet are predominantly written in C and C++. Two official compilers have been available: the commercial CodeWarrior Development Studio tailored for Palm OS and the open source prc-tools, based on an earlier gcc release. While CodeWarrior is expensive and no longer maintained, prc-tools lacks some advanced features but is included in the free Palm OS Developer Suite (PODS).
OnBoardC offers a C compiler, assembler, linker, and editor that operate directly on Palm devices.
For Palm OS Cobalt development, a gcc variant with fewer restrictions is employed.
There are also alternatives that minimize direct low-level coding in C/C++, such as PocketC/PocketC Architect, CASL, AppForge Crossfire (compatible with Visual Basic, Visual Basic .NET, and C#), Handheld Basic, Pendragon Forms, Satellite Forms, and NSBasic/Palm. Although a Java Virtual Machine existed previously, it was discontinued by Palm, Inc. in 2008 with no known replacements. Java-like platforms include Waba and its successor SuperWaba. The Lua-based language Plua requires an additional runtime environment which limits its adoption among mainstream developers. Quartus Forth provides an ISO/ANSI Standard Forth compiler featuring an interactive console for development directly on the device.
Pascal development options comprise the free PP Compiler Pascal & Palm, which runs natively on handhelds; PocketStudio—a Windows IDE resembling Delphi with visual form design; and HSPascal developed by Danish programmer Christen Fihl drawing from High Speed Pascal expertise.
Since native drivers for server databases (Oracle, MySQL, MS SQL Server) do not exist on Palm OS, middleware solutions are typically employed to facilitate data exchange.
A Scheme implementation roughly compatible with R4RS called LispMe offers a GPL-licensed Lisp REPL adapted for Palm OS; however, it mainly serves prototyping purposes as it does not compile standalone executables.
Legal issues
Over the years, Palm OS has been involved in multiple legal disputes.
- Xerox vs. Palm Computing (1997) – Xerox obtained a patent for the "Unistroke" input method created at Xerox PARC in 1993. Xerox filed a lawsuit against Palm (then operating as U.S. Robotics) claiming that Palm's Graffiti technology violated this patent. One factor influencing Palm’s transition from Graffiti 1 to Graffiti 2 was the outcome of this litigation. In 2004, the patent was invalidated due to earlier work from Bell Laboratories dating back to 1982.
- Pilot Pen Corporation vs. Palm Computing (1998) – Following legal action by Pilot Pen Corporation, Palm was compelled to change its handheld device name from Pilot to PalmPilot, and later simply to Palm.
- Palm vs. Microsoft (1998) – Microsoft initially intended to brand its handheld operating system as "Palm PC," but after Palm initiated legal proceedings, Microsoft rebranded it first as "Palm-sized PC" and subsequently as "Pocket PC."
- E-Pass Technologies vs. Palm, Microsoft and HP (2000) – E-Pass Technologies brought a lawsuit against Palm concerning a patent covering a credit card-sized, multifunctional computer designed to safeguard account data.
- NCR vs. Handspring and Palm (2001) – NCR filed suit against Handspring and Palm over a patent from 1987 related to portable e-commerce terminals; the case was dismissed in 2002 and the dismissal was upheld on appeal.
- RIM vs. Handspring (2002) – RIM initiated legal action against Handspring; by the end of that year, both Handspring and Palm had licensed RIM’s patents, resulting in the lawsuit being dropped.
- Peer-to-Peer Systems vs. Palm (2002) – Peer-to-Peer Systems accused Palm of infringing on patents related to wireless gaming technology; this dispute was resolved through settlement in 2005.
- Forgent Networks vs. HP, Toshiba, palmOne, etc. (2004) – Forgent Networks sued palmOne and other companies over a patent involving JPEG technology; however, numerous claims were rejected by the U.S. Patent Office due to prior art.
See also
- Access Linux Platform, intended successor to Palm OS
- Graffiti (Palm OS)
- List of Palm OS devices, which includes emulators
- Memoware
- Palm, Inc.
- Palm Desktop
- Palm webOS
- PalmSource, Inc.
External links
- Official Palm website (archived)
- Screenshots of Palm OS 4.1
- PalmDB – Repository dedicated to preserving Palm OS software
- Palm OS Wiki – Resource for historical information and knowledge