Mobile Operating Systems
Lesson 03
© Oxford University Press 2007. All rights reserved. 2
PalmOS
• An OS for handheld devices
• Designed for highly efficient running of small productivity programs for devices with a few application tasks
• Offers high performance due to a special feature that it supports only one process which controls all computations by the event handlers
PalmOS Features
• Single process (no multi-processing and multi-threading)
• Compiled for a specific set of hardware, performance very finely tuned
• Memory space partitioned into program memory and multiple storage heaps for
© Oxford University Press 2007. All rights reserved. 4
PalmOS Features
• A file in format of a database
• IP-based network connectivity and WiFi (in later version only)
PalmOS
• No multi-processing or multi-tasking
• Simplifies the kernel of the OS─ there is an infinite waiting loop in the only process that kernel runs
© Oxford University Press 2007. All rights reserved. 6
Polling for events at specific
intervals
• Each polled event─ sends interrupt signal • Handled by an event handler
• Functioning as maskable non-prioritized ISR
Example: Polling for the events
• For a request to run an application or sub-application
• For a search program request to process a query
• Notifications (like time-out alarm)
• GUI actions (such as touching or tapping the screen with stylus)
© Oxford University Press 2007. All rights reserved. 8
PalmOS Hardware Support
• Compiles for a specific set of hardware, its performance is very finely tuned
• Optimized to support a very specific range of hardware, CPU, controller
chips, and smaller screens of Palm OS-based devices
Display Screen Support
• Generally wide screen • 160 × 160 pixels
• Optimized layout of desktop programs displayed on screen
• 256 colour touch screen
© Oxford University Press 2007. All rights reserved. 10
PalmOS Memory Support
• 16 MB memory
• 256 MB internal flash (non-volatile ROM) • 256 MB card consisting of flash memory
PalmOS Memory Space Partitions
• Program memory dynamic heap─ for process stacks and global variables • Multiple storage heaps─ for data and
© Oxford University Press 2007. All rights reserved. 12
PalmOS File Format
• Format of a database • Multiple records
• Information fields about the filename, attributes, and version of the database for the application
PalmOS Connectivity
• IP-based network connectivity • WiFi (in later version only)
• Wireless communication protocols
© Oxford University Press 2007. All rights reserved. 14
PalmOS APIs
• Simple APIs compared to Windows CE • Simple APIs for developing the GUIs ─
buttons, menus, scroll bar, dialogs, forms, and tables
PalmOS Desktop and Desktop Programs
• Desktop for Windows and Mac both and other essential software
• SMS, Address, Card-Info, HotSync, To-Do-List, SMS, Security, Date
Book/Calendar, Calc, Welcome, and Clock
© Oxford University Press 2007. All rights reserved. 16
PalmOS PIM
• Address book
• Data book for task-to-do and organization
• Memo pad
• SMTP (simple mail transfer protocol) email download
PalmOS PIM
• Offline creation and sending of POP3 (post office protocol 3) email
• Internet browsing functions using Blazer (a browser for handhelds)
• Windows organizer
© Oxford University Press 2007. All rights reserved. 18
PalmOS Query Development Platform
• Query development support
platformPalm query applications (PQA) written using HTML and ported at Palm device
PalmOS Client side Applications
• GUI development support on C/C++ platform using Palm SDK
• For Java application using J2ME and
advanced tools, for example, Metrowerk CodeWarrior
© Oxford University Press 2007. All rights reserved. 20
PalmOS Ports
• Serial and infrared ports for
communication with mobile phones and external modems
• Synchroniszing a PC personal area
computer using HotSync after resolving the conflicts in different versions of files during data exchange
Port Protocols
• IrDA or serial device
• System mounted on a cradle
• Connects to computerPCs through IR or serial port
• A cradle is an attachment on which the handheld device can rest near a PC and
© Oxford University Press 2007. All rights reserved. 22
Device handling
• Assumed as a new flash drive of a PC
• HotSync facilitates drag and drop of files from device to PC and vice versa
Cards
• MMC (multimedia card)
• SD (secure digital) memory card • SDIO (secure digital input/output)
© Oxford University Press 2007. All rights reserved. 24
Third Party applications support
• Examplesgames
• Travel and flight planner • Calculator
• Graphic drawings
Application layer in architectural
layers of PalmOS
© Oxford University Press 2007. All rights reserved. 26
OS and hardware layer in
Lowest level layer in OS
• Kernel
• Directly interfaces the assembler, firmware (software installed in the
hardware devices in the system), and hardware
© Oxford University Press 2007. All rights reserved. 28
PalmOS 4.x
• Adds improved security
• Improved GUIs,VUIs, telephony libraries • Standard interfaces for access to the
PalmOS 5.x
• Supports(i) a standardized API for high resolution screen
© Oxford University Press 2007. All rights reserved. 30
PalmOS 5.x
(iii) instead of persistent battery-backed
RAM, a non-volatile file system using flash memory─ saves the files and data in case the battery charge is draining out
(iv) ARM, the processor─ providing efficient code and an energy-efficient architecture
Advanced PalmOS Handheld
• Merged PDA and smart phones
• Feature to double as a hard drive using USB cable to PC
• Enables the drag and drop of files
between the Palm and PC in a manner similar to the drag and drop functions in
© Oxford University Press 2007. All rights reserved. 32
Recent Developments
• Integration in Wndows CE
• A few Windows mobile handheld devices in use are Palm look-alikes
• But these do not deploy PalmOS platform but Windows CE
PalmOS Deficiencies
1. Instead of multi-tasking, PalmOS provides for running a sub-application from within an application
© Oxford University Press 2007. All rights reserved. 34
PalmOS Deficiencies
2. Not an ideal platform for running
multimedia applications because due to PalmOS is not for designing real-time systems
PalmOS Deficiencies
3. Does not offer much expandability 4. Inability to adapt to different sorts of
hardware may also be considered a limitation for this operating system
© Oxford University Press 2007. All rights reserved. 36
Summary
• PalmOS designed for highly efficient running of small productivity programs for devices with a few application tasks • No multiprocessing support
• Simple
• File record as database • HotSync
End of Lesson 03 PalmOS─ Part 1