Lect 7
Lect 7
Systems
Week I
Overview
• Introduction
• Mobile Operating System Structure
• Mobile Operating System Platforms
• Java ME Platform
• Palm OS
• Symbian OS
• Linux OS
• Windows Mobile OS
• BlackBerry OS
• iPhone OS
• Google Android Platform
http://cmer.cis.uoguelph.ca 2
OS Features
• Features
– Multitasking
– Scheduling
– Memory Allocation
– File System Interface
– Keypad Interface
– I/O Interface
– Protection and Security
– Multimedia features
http://cmer.cis.uoguelph.ca 3
Introduction
http://cmer.cis.uoguelph.ca 4
Introduction (Cont.)
http://cmer.cis.uoguelph.ca 5
Operating System Structure
Applications
OS Libraries
http://cmer.cis.uoguelph.ca 6
Mobile Operating
System Platforms
• There are many mobile operating systems. The
followings demonstrate the most important ones:
– Java ME Platform
– Palm OS
– Symbian OS
– Linux OS
– Windows Mobile OS
– BlackBerry OS
– iPhone OS
– Google Android Platform
http://cmer.cis.uoguelph.ca 7
Java ME Platform
http://cmer.cis.uoguelph.ca 8
Java ME Architecture
Configuration
Device/ Hardware
http://cmer.cis.uoguelph.ca 9
Java ME Main Components
http://cmer.cis.uoguelph.ca 10
Java ME
Packages Description
JSR 75 - PIM PDA Package
JSR 82 - BTAPI Java APIs for Bluetooth
JSR 120 - WMA Wireless Messaging API
JSR 172 J2ME Web Service
JSR 179 Location API for J2ME
http://cmer.cis.uoguelph.ca 11
Java ME Platforms
• It includes two kinds of platforms:
– High-end platform for high-end consumer devices.
E.g. TV set-top boxes, Internet TVs, auto-mobile
navigation systems
– Low-end platform for low-end consumer devices. E.g.
cell phones, and pagers
Platforms Device Characteristics
“High-End” consumer • a large range of user interface capabilities
devices • total memory budgets starting from about two to four megabytes
• persistent, high-bandwidth network connections, often using TCP/IP
http://cmer.cis.uoguelph.ca 12
Java ME Platforms (Cont.)
CLDC CDC
KVM JVM
http://cmer.cis.uoguelph.ca 13
Java ME CLDC
http://cmer.cis.uoguelph.ca 14
Java ME CLDC (Cont.)
http://cmer.cis.uoguelph.ca 15
Palm OS
http://cmer.cis.uoguelph.ca 16
Palm OS Features
http://cmer.cis.uoguelph.ca 17
Palm OS Features (Cont.)
– Memory Management:
• The Memory, RAM and ROM, for each Palm resides
on a memory module known as card. In other
words, each memory card contains RAM, ROM or
both. Palms can have no card, one card or multiple
cards.
– Expansion support[3]:
• This capability not only augments the memory and
I/O , but also it facilitates data interchanges with
other Palm devices and with other non-Palm
devices such as digital cameras, and digital audio
players.
– Handwriting recognition input called Graffiti 2
http://cmer.cis.uoguelph.ca 18
Palm OS Features (Cont.)
http://cmer.cis.uoguelph.ca 19
Palm OS Features (Cont.)
– Security model:
• Device can be locked by password, arbitrary
application records can be made private [2]
• Palm OS Cobalt include a certificate manager. The
Certificate Manager handles X.509 certificates[3].
http://cmer.cis.uoguelph.ca 20
Symbian OS
http://cmer.cis.uoguelph.ca 21
Symbian OS Structure
http://cmer.cis.uoguelph.ca 22
Symbian OS
Structure (Cont.)
Symbian OS
Libraries
KVM
Application Engines
Servers
Hardware
http://cmer.cis.uoguelph.ca 23
Symbian OS Features
http://cmer.cis.uoguelph.ca 24
Symbian OS
Features (Cont.)
http://cmer.cis.uoguelph.ca 25
Symbian OS
Features (Cont.)
http://cmer.cis.uoguelph.ca 26
Symbian OS
Features (Cont.)
http://cmer.cis.uoguelph.ca 27
Embedded Linux OS
http://cmer.cis.uoguelph.ca 28
Embedded Linux OS
http://cmer.cis.uoguelph.ca 29
Embedded Linux OS
http://cmer.cis.uoguelph.ca 30
Windows Mobile OS
http://cmer.cis.uoguelph.ca 31
Google Android Platform
http://cmer.cis.uoguelph.ca 32
Google Android Platform
Android architecture:
http://code.google.com/android/what-is-android.html
http://cmer.cis.uoguelph.ca 33
Google Android Platform
http://cmer.cis.uoguelph.ca 34
Google Android Platform
http://cmer.cis.uoguelph.ca 35
iPhone OS
http://cmer.cis.uoguelph.ca 36
iPhone OS
QuickTime
Application Services
Core Services
Kernel Environment
http://cmer.cis.uoguelph.ca 37
iPhone OS
http://cmer.cis.uoguelph.ca 38
iPhone OS
http://cmer.cis.uoguelph.ca 39
References
[1] Palm OS, http://en.wikipedia.org/wiki/Palm_OS
[2] Palm OS is a multitasking operating system. How can I create a task?,
http://kb.palmsource.com/cgi-bin/palmsource.cfg/php/enduser/std_adp.php?p_faqid=72
[3] Palm OS Programmer’s companion- Volume I, http://www.access-
company.com/developers/documents/docs/palmos/PalmOSCompanion/CompanionTOC.html
[4] Mobile Operating Systems,
http://dsonline.computer.org/portal/site/dsonline/menuitem.9ed3d9924aeb0dcd82ccc6716bbe
36ec/index.jsp?&pName=dso_level1&path=dsonline/topics/os&file=MobileOS.xml&xsl=article
.xsl&##archives
[5] Symbian OS,
http://images.google.ca/imgres?imgurl=http://wiki.forum.nokia.com/images/7/77/Symbian_OS
_Structure.png&imgrefurl=http://wiki.forum.nokia.com/index.php/Symbian_OS&h=260&w=467
&sz=10&hl=en&start=45&sig2=Hx5G5bWIQo_Hc3_kni4lgw&um=1&tbnid=PeArbbX9LhuMaM:
&tbnh=71&tbnw=128&ei=ZStJSIKCNaLGgwKe09nXAw&prev=/images%3Fq%3Dmobile%2Bop
erating%2Bsystem%2Bstructure%26start%3D36%26ndsp%3D18%26um%3D1%26hl%3Den%2
6sa%3DN
[6] Symbian OS, http://www.symbian.com/files/rx/file6965.pdf
[7] Mobile Phones, the Embeded Linux Challenge, http://www.linuxjournal.com/article/8762
[8] iPhone SDK, http://cssinnovations.blogspot.com/2008/05/iphone-sdk-iphone-sdk-was-
officially.html
http://cmer.cis.uoguelph.ca 40