Введение
Palm OS (также известная как Garnet OS) — мобильная операционная система, изначально разработанная компанией Palm, Inc. для персональных цифровых помощников (PDA) в 1996 году. Palm OS была разработана с акцентом на простоту использования и оснащена графическим пользовательским интерфейсом, основанным на сенсорном экране. Она поставлялась с набором базовых приложений для управления личной информацией. В более поздних версиях ОС была добавлена поддержка смартфонов. Программное обеспечение использовалось в линейке устройств Palm, а также несколькими другими производителями по лицензии. После приобретения компанией Palm торговой марки Palm, операционная система была переименована в Garnet OS. В 2007 году ACCESS представила преемника Garnet OS — платформу Access Linux Platform; кроме того, в 2009 году основной лицензиат Palm OS, компания Palm, Inc., перешла с Palm OS на webOS для своих новых устройств.
Mobile operating system
Palm OS (also known as Garnet OS) was a mobile operating system initially developed by Palm, Inc., for personal digital assistants (PDAs) in 1996. Palm OS was designed for ease of use with a touchscreen based graphical user interface. It was provided with a suite of basic applications for personal information management. Later versions of the OS were extended to support smartphones. The software appeared on the company's line of Palm devices while several other licensees have manufactured devices powered by Palm OS. Following Palm's purchase of the Palm trademark, the operating system was renamed Garnet OS. In 2007, ACCESS introduced the successor to Garnet OS, called Access Linux Platform; additionally, in 2009, the main licensee of Palm OS, Palm, Inc., switched from Palm OS to webOS for their forthcoming devices.
Создатель и владелец
Palm OS была первоначально разработана под руководством Джеффа Хокинса в компании Palm Computing, Inc. Позже Palm была приобретена U.S. Robotics Corp., которая, в свою очередь, была приобретена 3Com, что привело к выделению дочерней компании Palm в независимую публичную компанию 2 марта 2000 года. В январе 2002 года Palm создала полностью принадлежащую ей дочернюю компанию для разработки и лицензирования Palm OS, получившую название PalmSource. 28 октября 2003 года PalmSource была выделена из Palm в качестве независимой компании. Palm (тогда известная как palmOne) стала обычным лицензиатом Palm OS, утратив контроль над операционной системой. В сентябре 2005 года PalmSource объявила о своем приобретении компанией ACCESS. В декабре 2006 года Palm получила бессрочные права на исходный код Palm OS от ACCESS. Это позволило Palm модифицировать лицензированную операционную систему по мере необходимости без выплаты дальнейших роялти компании ACCESS. Наряду с приобретением в мае 2005 года полных прав на торговую марку Palm, только Palm имеет право публиковать выпуски операционной системы под названием "Palm OS". В связи с этим, 25 января 2007 года ACCESS объявила о смене названия своей операционной системы Palm OS, которая теперь называется Garnet OS.
История версий и технические особенности
Производители свободны в реализации различных функций ОС в своих устройствах или даже в добавлении новых функций. Данная история версий описывает официально лицензированную версию от Palm/PalmSource/ACCESS. Все версии, предшествующие Palm OS 5, основаны на ядре AMX 68000, лицензированном у KADAK Products Ltd. Хотя это ядро технически поддерживает многозадачность, "условия лицензии прямо запрещают Palm предоставлять API для создания и управления задачами в ОС".
Palm OS 1.0 (вводится в действие 1 января)
Palm OS 1.0 – это оригинальная версия, присутствовавшая на устройствах Pilot 1000 и 5000. Она была представлена в марте 1996 года. Версия 1.0 включает в себя классические PIM-приложения: Address, Date Book, Memo Pad и To Do List. Также в состав входят калькулятор и инструмент безопасности для скрытия записей в личных целях. Palm OS 1.0 не разделяет оперативную память и хранилище файловой системы. Приложения устанавливаются непосредственно в оперативную память и выполняются прямо там. Поскольку выделенная файловая система не поддерживается, операционная система зависит от постоянных циклов обновления оперативной памяти для сохранения данных. ОС поддерживает монохромные дисплеи с разрешением 160x160. Ввод данных осуществляется через систему распознавания рукописного ввода Graffiti или, опционально, через виртуальную клавиатуру. Система поддерживает синхронизацию данных с ПК с помощью технологии HotSync через последовательный интерфейс. Последняя версия с исправлениями ошибок – 1.0.7.
Palm OS 2.0 (англ.) русск.
Palm OS 2.0 была представлена 10 марта 1997 года вместе с PalmPilot Personal и Professional. Эта версия добавляет поддержку сети TCP/IP, сетевой синхронизации HotSync и подсветки экрана. Последним релизом с исправлениями ошибок является версия 2.0.5. Добавлены два новых приложения – Mail и Expense, а стандартные PIM-приложения были улучшены.
Palm OS 3.0 (в переводе с английского)
Palm OS 3.0 была представлена 9 марта 1998 года с выпуском линейки Palm III. Эта версия добавляет поддержку инфракрасного порта IrDA и расширенную поддержку шрифтов. Также в этой версии обновлены приложения PIM и улучшен лаунчер приложений. Palm OS 3.1 добавляет лишь незначительные новые функции, такие как поддержка сетевой синхронизации HotSync. Она была представлена вместе с Palm IIIx и Palm V. Последним релизом с исправлениями ошибок является версия 3.1.1. Palm OS 3.2 добавляет поддержку Web Clipping – раннее, специфичное для Palm решение для отображения веб-контента на небольшом экране КПК. Она была представлена вместе с организатором Palm VII. Palm OS 3.3 обеспечивает более высокую скорость синхронизации HotSync и возможность инфракрасной синхронизации. Она была представлена вместе с организатором Palm Vx. Palm OS 3.5 – первая версия, включающая встроенную поддержку 8-битной цветовой палитры. Она также добавляет значительные удобства, упрощающие работу, такие как контекстно-зависимая панель иконок или более простая активация меню. Приложение "Календарь" дополнено новым видом "Повестка дня". Эта версия была впервые представлена с устройством Palm IIIc. Последний релиз с исправлениями ошибок – версия 3.5.3. В дополнение к ней, Palm позже предложила обновление программного обеспечения Mobile Internet Kit для Palm OS 3.5. В состав этого пакета входили программа Palm Web Clipping, почтовый клиент MultiMail (позже переименованный в VersaMail) версии 2.26, программа для работы с SMS handPHONE версии 1.3 и WAP-браузер Neomar версии 1.5.
Palm OS 4.0 (в переводе с английского)
Palm OS 4.0 была выпущена вместе с новой серией Palm m500 19 марта 2001 года. Эта версия добавляет стандартный интерфейс для доступа к внешним файловым системам (например, SD-картам). Внешние файловые системы – это принципиально новый подход по сравнению с предыдущим способом исполнения операционной системы. Теперь код приложений и данные необходимо загружать в оперативную память устройства, как это происходит в настольных операционных системах. Представлен новый универсальный разъем с поддержкой USB. Ранее опциональный комплект Mobile Internet Kit теперь входит в состав операционной системы. Версия 4.0 включает в себя менеджер уведомлений, который координирует информацию из различных приложений и предоставляет несколько способов привлечения внимания пользователя, включая звук, мигание светодиода или вибрацию. Поддерживаются 16-битные цветные экраны и различные часовые пояса. Также в этой версии улучшены безопасность и пользовательский интерфейс. Palm OS 4.1 – это выпуск, исправляющий ошибки. Он был представлен вместе с Palm i705. Более поздняя незначительная версия обновления ОС 4.1.2 включает в себя перенос Graffiti 2 из Palm OS 5.2. Palm OS 4.2 Simplified Chinese Edition разработана специально для китайского рынка с полной поддержкой упрощенного китайского языка и выпущена одновременно с Palm OS 5.3. На данный момент ни одно устройство не было выпущено с этой версией.
Palm OS 5.0 (всего лишь для
Palm OS 5.0 была представлена дочерней компанией Palm, PalmSource, в июне 2002 года и впервые реализована на Palm Tungsten T. Это первая версия, поддерживающая устройства ARM, и она заменила ядро Kadak AMX68000 на разработанное компанией Palm собственное ядро MCK, названное в честь его создателя. Приложения, написанные для предыдущих версий ОС, используют устаревший набор инструкций DragonBall 68K и поддерживаются посредством эмулятора Palm Application Compatibility Environment (PACE) в Garnet. Даже с учетом дополнительных накладных расходов PACE, приложения Palm обычно работают быстрее на устройствах ARM, чем на оборудовании предыдущего поколения. Новое программное обеспечение может использовать возможности процессоров ARM с помощью небольших блоков кода ARM, называемых ARMlets. Благодаря более мощной аппаратной базе, Palm OS 5 добавляет значительные улучшения в области мультимедийных возможностей. Поддерживаются экраны высокой плотности 320x320, а также полный API для цифрового воспроизведения и записи звука. Добавлен отдельный стек Bluetooth от Palm вместе со стеком Wi-Fi IEEE 802.11b. Поддерживаются защищенные сетевые соединения через SSL. ОС можно настроить с помощью различных цветовых схем. Для Palm OS 5 PalmSource разработала и лицензировала веб-браузер PalmSource Web Browser, основанный на браузере NetFront 3.0 от ACCESS. Palm OS 5.2 – это в основном выпуск, исправляющий ошибки, впервые реализованный в Samsung SGH i500 в марте 2003 года. Он добавил поддержку разрешения 480x320 и представил новую систему рукописного ввода Graffiti 2; появление новой системы ввода было вызвано выигрышем Xerox в судебном разбирательстве против Palm. Graffiti 2 основана на Jot от CIC. Последний выпуск исправления ошибок – версия 5.2.8. Palm OS 5.3 Simplified Chinese Edition, выпущенная в сентябре 2003 года, добавила полную поддержку упрощенного китайского языка, расширенную поддержку разрешения QVGA и стандартный API для виртуального Graffiti под названием Dynamic Input Area. Эта версия впервые была поставлена на портативные устройства Lenovo P100 и P300. Palm OS Garnet (5.4) добавила обновленные библиотеки Bluetooth и поддержку нескольких разрешений экрана в диапазоне от 160x160 до 480x320. Впервые она была поставлена на Treo 650 в ноябре 2004 года. Эта версия также представила название Garnet для отличия от Palm OS Cobalt 6.0. Последний выпуск исправления ошибок – версия 5.4.9. Garnet OS 5.5 отказалась от названия Palm и является текущей версией, разрабатываемой ACCESS. Эта версия предназначена для использования внутри виртуальной машины Garnet VM. Garnet VM была анонсирована и выпущена ACCESS в ноябре 2007 года как ключевой компонент платформы Access Linux и как эмулятор, позволяющий интернет-планшетам Nokia запускать приложения, написанные для Garnet OS. В июне 2010 года ACCESS выпустила Garnet VM версии 6 (также известную как Garnet VM Beta 6 1.05b).
Палм ОС Кобальт
Palm OS Cobalt (6.0) была определена как преемник Palm OS 5. Она была представлена 10 февраля 2004 года, но больше не предлагается компанией ACCESS (см. следующий раздел). Palm OS 6.0 была переименована в Palm OS Cobalt, чтобы подчеркнуть, что эта версия изначально не предназначалась для замены Palm OS 5, которая одновременно получила название Palm OS Garnet. Palm OS Cobalt представила современные функции операционной системы во встраиваемую операционную систему, основанную на новом ядре с многозадачностью и защитой памяти, современной мультимедийной и графической подсистеме (разработанной на базе приобретенной Palm BeOS), новые функции безопасности и изменения в форматах файлов PIM для лучшей совместимости с Microsoft Outlook. Palm OS Cobalt 6.1 включала стандартные библиотеки связи для телекоммуникаций, Wi-Fi и Bluetooth. Несмотря на эти дополнения, она не смогла заинтересовать потенциальных лицензиатов Palm OS Cobalt.
Улучшения ОС третьих сторон
Несколько лицензиатов внесли собственные изменения в операционную систему. Эти изменения не входят в состав официальной лицензионной версии. Компания Palm разработала Bluetooth API для внешних Bluetooth SDIO-карт, предназначенных для устройств Palm OS 4.0. Bluetooth-стек позднее был включен в Palm OS 5. Компания Palm добавила API виртуальной области ввода рукописного текста (graffiti) специально для устройства Tungsten T3. Этот API впоследствии был заменен официальным API Dynamic Input Area в Palm OS 5.3. В Palm OS 5.4 компания Palm добавила энергонезависимую файловую систему (Non Volatile File System) и стала использовать флэш-память для хранения данных вместо DRAM, что предотвращало потерю данных при разряде батареи. Однако это кардинально изменило способ запуска программ, отходя от традиционной для Palm OS системы Execute in Place, и стало причиной множества проблем совместимости, потребовав от многих приложений добавления явной поддержки NVFS для корректной работы. Для устройств, оснащенных камерой, компания Palm добавила API CameraLib. Компания Sony добавила библиотеку для поддержки ввода с помощью JogDial, доступного на их органайзерах CLIÉ.
Palm added a virtual graffiti input area API especially for their Tungsten T3 device. This API was later superseded by the official Dynamic Input Area API in Palm OS 5.3. Palm added the Non Volatile File System in Palm OS 5.4, and used Flash for storage instead of DRAM, preventing data loss in the event of battery drain. However, this fundamentally changed the way programs were executed from the Execute in Place system that Palm OS traditionally used, and has been the source of many compatibility problems, requiring many applications to add explicit NVFS support for correct operation. For their camera equipped devices, Palm added the CameraLib API. Sony added a library to support JogDial input available on their CLIÉ organizers.
Модернизация
В течение нескольких лет PalmSource пыталась создать современного преемника Palm OS 5 и добиться его внедрения лицензиатами. Хотя PalmSource поставила Palm OS Cobalt 6.0 лицензиатам в январе 2004 года, ни один из них не использовал её для выпуска устройств. PalmSource внесла существенные улучшения в Palm OS Cobalt с выпуском Palm OS Cobalt 6.1 в сентябре 2004 года, чтобы удовлетворить лицензиатов, но даже новая версия не привела к появлению серийных устройств. В декабре 2004 года PalmSource объявила о новой стратегии разработки ОС. После приобретения компании China Mobilesoft, занимающейся разработкой программного обеспечения для мобильных телефонов, PalmSource планировала портировать Palm OS на ядро Linux, при этом продолжая предлагать Palm OS Garnet и Palm OS Cobalt. Эта стратегия была пересмотрена в июне 2005 года, поскольку ни одного устройства на базе Palm OS Cobalt так и не было анонсировано. PalmSource объявила о прекращении всех разработок, не связанных напрямую с её будущей платформой на основе Linux. После приобретения PalmSource компанией ACCESS, Palm OS для Linux была преобразована в Access Linux Platform, о которой впервые было объявлено в феврале 2006 года. Первые версии платформы и комплекты разработки программного обеспечения для Access Linux Platform были официально выпущены в феврале 2007 года. По состоянию на январь 2011 года Access Linux Platform ещё не была установлена ни на одно устройство, однако комплекты разработчика уже существовали и были продемонстрированы публичные демонстрации. Palm, Inc., основной лицензиат Palm OS Garnet, не лицензировала Access Linux Platform для своих устройств. Вместо этого Palm разработала другую операционную систему на основе Linux под названием Palm webOS. 11 февраля 2009 года генеральный директор Palm Эд Коллиган заявил, что больше не планируется выпуск устройств Palm OS (за исключением Centro, поставляемых другим операторам). Palm сосредоточилась на устройствах Palm webOS и Windows Mobile. 1 апреля 2009 года Palm объявила о доступности эмулятора Palm OS для своей webOS.
Встроенные приложения
Лицензиаты Palm OS определяют, какие приложения устанавливаются на их устройствах Palm OS. Лицензиаты также могут изменять эти приложения.
Стандартные приложения Palm OS
Примечание: На новых моделях стандартные приложения PIM "Адрес", "Книга дат", "Мемопанель" и "ToDos" были заменены на их улучшенные аналоги "Контакты", "Календарь", "Заметки" и "Задачи". Программа "Контакты" хранит контактную информацию, структурированную по любым категориям, определяемым пользователем. Записи отображаются и сортируются по фамилии, имени (это можно изменить только на порядок "Компания, фамилия"). Предусмотрено пять слотов для телефонных номеров или адресов электронной почты, каждый из которых может быть обозначен как "Работа", "Дом", "Факс", "Другой", "Электронная почта", "Основной", "Пейджер" или "Мобильный" (обозначения слотов нельзя изменить). Новое приложение "Контакты" добавляет следующие возможности: несколько адресов, 9 новых полей: "Веб-сайт", "День рождения", "Дополнительные телефонные номера", "Обмен мгновенными сообщениями" с функцией быстрого подключения. Calc превращает Palm в стандартный 4-функциональный карманный калькулятор с тремя оттенками фиолетового и синего цветов кнопок, контрастирующими с двумя красными кнопками очистки. Он поддерживает функции извлечения квадратного корня и вычисления процента, а также имеет одну ячейку памяти. Также предусмотрена возможность отображения истории вычислений, аналогично калькуляторам с бумажной лентой, которые ранее были распространены. "Книга дат" отображает ежедневное или еженедельное расписание, либо простой месячный вид. Ежедневное расписание содержит одну строку на каждый час, между временем начала и окончания, установленным пользователем. Нажатие на пустую строку создает новое событие. События заполняют пустые строки, при этом время начала и окончания по умолчанию отображаются в скобках на левом краю. Новое приложение "Календарь" добавляет следующие возможности: новый вид дня, использование категорий для событий, местоположение события, возможность события охватывать полночь, подробная информация о событии, дни рождения как события без времени. Оно поддерживает указание часового пояса для событий, чего нет в некоторых более новых конкурентах. Событие или встречу можно предварять сигналом тревоги за любое количество минут, часов или дней до его начала. Эти сигналы звучат даже при выключенном устройстве. Встречи могут повторяться через заданное количество дней, недель, месяцев или лет и могут содержать заметки. "Расходы" отслеживает обычные командировочные расходы. На самом Palm вычисление итогов не производится. Пользователь должен синхронизировать устройство с компьютером и просматривать данные о расходах в таблице (в комплекте поставляются шаблоны для Microsoft Excel). HotSync интегрируется с ПК пользователя. Обычно активируется нажатием физической кнопки HotSync на док-станции Palm (колыбели), это приложение взаимодействует с различными каналами на настольном ПК для установки программного обеспечения, создания резервных копий баз данных или объединения изменений, внесенных на ПК или на портативном устройстве, на обоих устройствах. Оно может взаимодействовать с ПК через физическое соединение (USB на новых моделях), беспроводные соединения Bluetooth или IrDA, а также через прямые сетевые соединения на устройствах с сетевыми возможностями. Помимо каналов, предоставляемых разработчиком, другие разработчики могут создавать свои собственные каналы для интеграции с другими приложениями Palm OS и настольными продуктами. Например, программа для учета рабочего времени может предоставить канал для обмена информацией между Palm OS и исполняемыми файлами Windows. Канал резервного копирования, включенный в программное обеспечение HotSync, создает резервную копию (и восстанавливает, при необходимости) большей части данных на устройстве Palm OS. Это позволяет пользователям выполнить жесткую перезагрузку Palm, тем самым удалив все данные, с минимальными последствиями. Это также позволяет пользователям переносить данные на новые устройства Palm с той же версией Palm OS, что полезно для тех, кто потерял или повредил свое устройство. Некоторые модели Palm хранят свои данные в энергозависимой памяти и требуют постоянного питания для сохранения данных. Хотя эти портативные устройства пытаются сохранить содержимое памяти при низком заряде батареи, не выключаясь, оставление "разряженного" устройства на длительное время может привести к истощению резервного питания и потере данных в памяти. Некоторые более поздние модели Palm используют NVRAM или микродиск для хранения данных. "Мемопанель" может хранить заметки объемом до 4000 символов каждая; новейшее приложение "Заметки" увеличивает размер поля с 3 до 30 кБ. Заметки можно упорядочивать двумя способами: в алфавитном порядке и вручную (что позволяет пользователю выбирать порядок заметок), а также группировать в категории, настраиваемые пользователем. "Мемопанель" предназначена только для текста, не для рисунков, и текст можно вводить с помощью алфавита Graffiti, с помощью аппаратной или программной клавиатуры или с помощью функции "вставить". Когда устройства Palm впервые стали доступны, некоторые пользователи начали создавать и обмениваться документами "Мемопанели", содержащими общую полезную информацию, которые стали известны как Memoware. "Список дел" создает личные напоминания и расставляет приоритеты задач пользователя. Каждый элемент "Списка дел" также может иметь: приоритет, категории (для организации и просмотра элементов в логических группах), прикрепленную заметку (для добавления более подробного описания и пояснения задачи). Элементы "Списка дел" можно сортировать по: дате выполнения, приоритету или категории. Новое приложение "Задачи" имеет следующие улучшения: новый интерфейс, повторяющиеся задачи, сигналы тревоги и т.д. "Параметры" (также известные как "Prefs") отображают файлы программ с особым типом панели параметров, которые не отображаются обычным лаунчером. Программы можно изменять, переключая тип и наоборот. Palm OS содержит около 15 панелей параметров по умолчанию, и новые панели параметров можно добавлять как любое другое приложение. Панели параметров позволяют пользователям управлять множеством настроек, включая настройки Graffiti, настройки звука, текстовые сокращения, сетевые настройки и системное время. "Безопасность" (которая является панелью на новых устройствах Palm OS) используется для настройки параметров безопасности Palm OS. Они включают пароль, необходимый для отображения скрытых записей и разблокировки устройства при блокировке, а также для установки времени автоматической блокировки или порога бездействия. На ПК только Palm Desktop распознает этот пароль, но другие программы для ПК могут просматривать все данные — другими словами, все данные, защищенные этим паролем, могут быть просмотрены любым, кто открывает файлы данных с помощью текстового редактора или текстового процессора.
Общие сторонние основные ОС-приложения
Начиная с версии Palm OS 5.2, Palm создала настроенные версии стандартного приложения PIM. Были добавлены новые функции, например, поддержка категорий адресов, назначение мелодий звонка пользователям, более длинные текстовые заметки и т. д. Они также были переименованы в соответствии с названиями из Microsoft Outlook: Address стал Contacts, Datebook – Calendar, Memo Pad – Memos, а To do list – Tasks. Blazer – это веб-браузер для карманных устройств Palm. Версии 1.0 и 2.0 работают на устройствах Palm OS 3.1 или более поздней версии, но для их работы требовался прокси-сервер, который был отключен, поэтому они больше не могут использоваться. Версия 3.0 использовалась на смартфоне Treo 600. Текущая версия Blazer – 4.5, соответствующая большинству основных стандартов. Обычно она поставляется в комплекте с новыми смартфонами и новыми устройствами Palm, поддерживающими доступ в Интернет. Palm Note Pad можно использовать для быстрых зарисовок. При аккуратном почерке на одной странице поместится 20–30 слов; для большего объема текста лучше использовать Memo Pad. Есть три размера толщины пера, а также ластик и функция изменения цвета фона в некоторых моделях. Можно нарисовать очень простую карту. Более «продвинутая» настольная версия сохраняет рисунки из Memo Pad на компьютер. С 2006 года большинство новых карманных устройств Palm включают Photos, которое создает цифровой фотоальбом для просмотра изображений на устройстве Palm OS. Как и в случае с другими фотопрограммами, фотографии можно передавать на другие мобильные устройства. Каждую фотографию можно снабдить меткой и организовать в отдельные фотоальбомы. Также можно просмотреть слайд-шоу для конкретного альбома, при этом каждая фотография будет отображаться на весь экран. Фотографии можно редактировать с помощью программы Palm Photos для ПК (только для Windows), и при передаче на карманное устройство все внесенные изменения будут сохранены. Программное обеспечение Palm Photos доступно для Zire 71, Tungsten C, Tungsten E, Tungsten T2, Tungsten T3 и ряда других моделей. С поддержкой видео Palm Photos позже была переименована в Media, а затем в Pics & Videos. Некоторые модели позволяют записывать голосовые заметки, которые синхронизируются с помощью Voice conduit и могут быть просмотрены на компьютере с помощью приложения Voice Memo, входящего в состав Palm Desktop Suite.
Приложения третьих лиц
Существует множество успешных приложений, которые можно установить на устройство Palm OS. По состоянию на 2008 год для платформы Palm OS было доступно более 50 000 сторонних приложений с различными типами лицензий, включая лицензии с открытым исходным кодом, а также различные закрытые схемы лицензирования, такие как freeware, shareware и традиционная покупка с предоплатой. HackMaster — это менеджер расширений для Palm OS, который включает в себя несколько патчей, улучшающих функциональность ОС. Другие сторонние расширения ОС также требуют HackMaster для работы. В ноябре 2022 года Internet Archive разместил в своих архивах 565 приложений Palm OS, к которым можно получить доступ через браузер. При доступе к приложениям также запускается CloudpilotEmu — эмулятор для PalmPilot Palm OS.
Разработка приложений
Приложения Palm OS Garnet в основном кодируются на C/C++. Существует два официально поддерживаемых компилятора: коммерческий продукт CodeWarrior Development Studio для Palm OS и цепочка инструментов с открытым исходным кодом, называемая prc tools, основанная на старой версии gcc. CodeWarrior критикуют за высокую стоимость и прекращение разработки, в то время как PRC Tools лишен некоторых функций CodeWarrior. Версия PRC Tools включена в бесплатный пакет разработчика Palm OS (PODS). OnBoardC — это компилятор, ассемблер, компоновщик и редактор программирования на C, работающий непосредственно на Palm. Приложения Palm OS Cobalt также кодируются на варианте gcc, но компиляторы Cobalt имеют меньше ограничений. Для разработки под Palm доступны инструменты, не требующие низкоуровневого программирования на C/C++, такие как PocketC/PocketC Architect, CASL, AppForge Crossfire (использующий Visual Basic, Visual Basic NET или C#), Handheld Basic, Pendragon Forms, Satellite Forms и NSBasic/Palm (языки, подобные Visual Basic). Виртуальная машина Java ранее была доступна для платформы Palm OS, однако 12 января 2008 года Palm, Inc. объявила о прекращении её поддержки. Palm, Inc. также заявила: «Нам неизвестно ни одной альтернативной виртуальной машины Java для Palm OS». Waba и её производная, SuperWaba, предоставляют виртуальную машину и язык программирования, подобные Java. Версия языка Lua, называемая Plua, также доступна для Palm, однако из-за необходимости установки дополнительной среды выполнения вместе с приложением, она используется лишь небольшим количеством компаний-разработчиков для основных приложений. Quartus Forth — это компилятор Forth, соответствующий стандартам ISO/ANSI, который работает непосредственно на Palm. Он также имеет интерактивную консоль для динамической разработки и отладки. Существуют три среды, позволяющие программировать на Pascal для Palm OS. Бесплатный PP Compiler работает непосредственно на портативном устройстве, в то время как PocketStudio — это IDE, подобная Delphi, для компьютеров под управлением Windows, с визуальным конструктором форм и генерацией PRC-файлов для передачи на портативные устройства через HotSync. Третьим вариантом был HSPascal, разработанный датским разработчиком Кристеном Филем на основе его опыта работы с компилятором High Speed Pascal для различных 16-битных компьютерных систем, включая Commodore Amiga. Поскольку Palm не имеет драйверов подключения для передачи данных на серверные СУБД (Oracle, mySQL, MS SQL Server), программист может использовать промежуточное программное обеспечение (Middleware), обеспечивающее такую связь. Реализация Scheme, примерно совместимая с R4RS, LispMe, предоставляет платформе Palm лицензированную по GPL версию Lisp REPL с некоторыми адаптациями для Palm OS, но, хотя она функционально является компилятором, она не генерирует код, работающий вне среды разработки, поэтому её применение ограничено прототипированием.
Юридические вопросы
Palm OS была вовлечена в различные судебные разбирательства на протяжении многих лет. Xerox против Palm Computing (1997) – В 1997 году Xerox был выдан патент на систему ввода "Unistroke", разработанную Дэвидом Голдбергом в Xerox PARC в 1993 году. Xerox подала иск против Palm (тогда U.S. Robotics), утверждая, что Graffiti, используемая Palm, нарушает этот патент. Переход Palm OS с Graffiti 1 на Graffiti 2 был частично вызван проигрышем Palm в этом иске компании Xerox. Патент был признан недействительным в мае 2004 года из-за предшествующего уровня техники, разработанного в Bell Laboratories в 1982 году. Pilot Pen Corporation против Palm Computing (1998) – Первоначально портативные компьютеры Palm OS назывались Pilot. Однако судебный иск от Pilot Pen Corporation вынудил изменить название на PalmPilot, а затем и на Palm. Palm против Microsoft (1998) – В 1998 году Microsoft планировала назвать следующую версию своей платформы для портативных компьютеров "Palm PC". Palm подала иск против Microsoft, что вынудило изменить название сначала на Palm-sized PC, а затем на Pocket PC. E Pass Technologies против Palm, Microsoft и HP (2000) – В 2000 году E Pass Technologies подала иск против Palm, утверждая, что ее портативные компьютеры нарушают патент E Pass (#5,276,311) на многофункциональный компьютер размером с кредитную карту, позволяющий пользователям безопасно хранить номера счетов, PIN-коды и т.д. NCR против Handspring и Palm (2001) – В 1987 году NCR был выдан патент на портативный терминал для электронной коммерции. В 2001 году NCR подала в суд на Handspring и Palm. В 2002 году иск был отклонен, и это решение было подтверждено в апелляционной инстанции. RIM против Handspring (2002) – В 2002 году Research In Motion (производитель BlackBerry) подала иск против Handspring. К концу года Handspring и Palm лицензировали патенты, и иск был отозван. Peer to Peer Systems против Palm (2002) – Также в 2002 году Peer to Peer Systems подала иск против Palm, утверждая, что Palm нарушила ее патент на беспроводные игры. Иск был урегулирован 9 февраля 2005 года. Forgent Networks против HP, Toshiba, palmOne и т.д. (2004) – Начиная с 2002 года, Forgent Networks начала предлагать лицензии на патент, касающийся JPEG. В 2004 году она подала иск против различных компаний, включая palmOne. Патент JPEG или 672 был рассмотрен Управлением по патентам и товарным знакам США, которое отклонило 19 из 47 пунктов на основании предшествующего уровня техники.