background image

 

 

Mobile OS and Development 

Environments

Speaker: Jerry Gao Ph.D.

San Jose State University

email: jerrygao@email.sjsu.edu

URL: http://www.engr.sjsu.edu/gaojerry

background image

 

 

Topic: Mobile OS and Development 

Environments

- Mobile Operating Systems

- Windows CE

- Palm OS

- Symbian OS

- Java & J2ME

- BREW (Binary Runtime Environment for 

Wireless) Technology

- Comparison of Different OS systems

- Development Tools

Jerry Gao Ph.D.

3/2004

Presentation Outline

All Rights Reserved

background image

 

 

What is Windows CE?
• One of Microsoft’s products. 
• Windows CE OS was designed for Handheld PC devices 

(between PDAs and laptops).

• Windows CE .NET on the current Microsoft OS delivers the 

most complete mobile operating system. 

• It focuses on the enterprise market for mobile enterprise 

systems 

Basic functional features:
• Enable multitasking - allow the user to work on one 

application which another is executing in the background.

• Include many familiar applications, such as PocketWord, 

PocketExcel, PocketOutlook, and Pocket Internet Explorer.

• Built-in multimedia capabilities for both audio and video. 

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Windows CE

Topic: Mobile OS and Development 

Environments

background image

 

 

History of Windows CE:
• Back in 1995, Microsoft released the first version of Windows CE. 

It has very limited success.

• In 1998, Microsoft released Windows CE 2.x for the PDA market. 

It was confident that it is PalmPilot killer. This proved not to be 

the case.

• In 2000, Microsoft released Windows CE 3.0 when the PDA 

market was becoming more attractive to enterprises for line-of-

business applications.

• In 2001, Microsoft announced another version of the Windows CE 

family: Windows CE.NET 4.0. 

– This version fits into Microsoft’s overall .NET strategy by allowing 

developers to use the full suite of Microsoft tools, including Visual C+

+ and other updated Microsoft office products and Internet Explorer.

– Windows CE .NET added built-in wireless capabilities, including 

broad support for WANS, LANs, and PANs.  

• In the fall of 2002, Windows CE .NET version 4.1 was released. 

This version added support for IPv6 (the latest version of Internet 

Protocol), as well as integrated speech recognition.

Jerry Gao Ph.D.

9/2002

All Rights Reserved

An Overview of Windows CE

Topic: Mobile OS and Development 

Environments

background image

 

 

Why did Windows CE3.0 succeed?
• It comes with many familiar applications, such as 

PocketWord.

• It provides a scaled-down version of Win32 application 

programming interface (API), allowing developers to quickly 

refit existing Window applications for Windows CE 3.0-

based devices.

• Provide enhanced support for real-time functionality made 

to the OS kernel. This improves the performance of 

Windows CE 3.0 dramatically over Windows CE 2.x.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Windows CE

Topic: Mobile OS and Development 

Environments

background image

 

 

Comparisons of Windows CE versions:
--------------------------------------------------------------------------------------------------

-

Versions

Year

Processors    

Internet

Wireless      

Multimedia
Browser

Capability   Support

--------------------------------------------------------------------------------------------------
CE 2.12 1998

ARM, MIPS 

IE 4.0 IrDA

           No

PowerPC, SHx
x86

CE 3.0 2000

ARM, MIPS,

IE 4.0 IrDA

           Yes

CE .NET

2002

X-Scale, ARM

I.E. 5.5 Bluetooth            Yes

802.11x
Media Sense
OBEX

--------------------------------------------------------------------------------------------------

-

Jerry Gao Ph.D.

9/2002

All Rights Reserved

An Overview of Windows CE

Topic: Mobile OS and Development 

Environments

background image

 

 

What is Palm OS?
• It is designed by Palm Computer for PDAs. 
• It has been experienced tremendous success in the PDA’s 

consumer market.

• It focuses on the enterprise market for mobile enterprise 

systems 

History of Palm OS:
• In early 2000 (by IDC, June 2000), Palm established itself as 

the market leader in PDAs, capturing nearly 75% of the 
worldwide mobile OS market.

• In the early days of PDA application development, people chose 

Palm OS as a deployment platform because it is available and 
many employees were familiar with it.

• Due to the limitation of its early versions, people found that it 

was unsuitable for many of application tasks. This causes some 
problems in positioning itself at a dominant position in the 
enterprise market. 

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Palm OS

Topic: Mobile OS and Development 

Environments

background image

 

 

History of Palm OS: (Continued)
• Late of 2000, Palm separating the PDA hardware and 

Palm OS as two different divisions and started 
licensing Palm OS to third-party device manufactures, 
such as Handspring, IBM, Symbol, and Sony.

• Palm OS 5.0, 6.0 and Palm i705 released new features 

for the enterprise applications.

• In the fall 2002, Palm introduced two new product 

families: Tungsten and Zire.  

– Tungsten – is targeted at the enterprise market, providing 

powerful solutions for mobile professionals and enterprise 
workforces.

– Zire – is focused on the consumer market, providing 

affordable options for individuals to organize their 
schedules and contacts.  

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Palm OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Basic functional features:
• Prior to the release of version 5.0, Palm OS only support single-

tasking 

• With version 5.0, Palm OS introduced some multi-tasking capabilities.
• Provide two kinds of local databases in a flat-file format:

– Record database – store and manage application data, such as contact list
– Resource database – store and manage the application code and user 

interface objects.

• Meanwhile, Palm OS 5.0 provides some extra features:

– Move to the ARM series of processors -> increase its performance greatly.
– Move CMPE-A6d ditional security for encrypting private data
– New wireless capabilities for earlier  access to the Internet and email 

systems

• Palm OS i750 include wireless support for always-on wireless 

networks, Bluetooth, and clip-on modems.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Palm OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Jerry Gao Ph.D.

9/2002

All Rights Reserved

An Overview of Palm OS

Device HardwareThird-Party Hardware

Device Applications

Third-Party Applications

Hardware Abstraction Layer

Application ToolBox

Kernel

System 
Libraries

Third-Party 
Libraries

System Services

Applications

Palm OS

Hardware

background image

 

 

On the technical side,  Palm OS has three components:
• Reference hardware design, consisting of third-party hardware and 

the hardware abstraction layer.

• Palm Os with embedded system and third-party libraries.
• Application software, featuring the applications included with Palm 

OS, such as the HotSync conduit and third-party applications.

Market Lookup:
• As today, Palm OS is still in its leading position in the PDA 

marketplace.

• Even though other mobile operating systems are closing in on its 

market lead.

• As far as the future years, the market will remain split between the 

Palm OS and Windows CE in North America and among the Palm 
OS, Windows CE, and the Symbian OS in other parts of the world.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Palm OS

Topic: Mobile OS and Development 

Environments

background image

 

 

What is Symbian OS?
• Symbian OS is an operating system developed for 

exclusively for mobile devices.

• Symbian OS is designed for 32-bit CPUs based on 

190MHZ and 206MHZ StrongARM CPUs with some on 
ARM9.

• Symbian OS gained its popularity in the mobile phone 

sector. 

• It is created  by Symbain, which is a joint venture of 

Nokia, Ericsson, Motorola, and Matsushita. This 
partnership was to create a standard OS for smart 
phones and PDAs based on Psion’s EPOC OS.

• Symbian OS is the name assigned to the lastest 

version of the EPOC os. Versions prior to 6.0 are called 
EPOC, while later versions are called Symbian OS.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Market:
• Historically, the Symbian OS has been dominant in the 

European markets, with little exposure in North America.

• This started to change in March 2002, with Nokia’s release 

of the Communicator 9290 device in North America.

• As other vendors release Symbian OS devices outside of 

Europe, making Symbian OS a potential challenger to both 
Palm OS and Window CE for the enterprise application 
development.

• Typical deployed devices are:

– Nokia 9210 (14MB ROM, 8MB (SD-RAM, and 16MB MMC Card, 

4096 color screen, and full keyboard)

– Sony Ericsson (16MB RAM and 16MB flash, 640x480 digital 

camera, and a 24-million color display with phone keys) 

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

History of Symbian OS:
• In June 1999, EPOC version 5 started shipping. It contained 

support for devices based on a 640x240 screen resolution, 
with pen and keyboard capabilities.

• In 2000, Symbian OS 6.0 was released. Its design goal is to 

bring together various forms of communication protocols, 
such as TCP/IP, WAP, GSM, Bluethooth, IrDa, as well as 
serial connections.

• In 2002, Symbian OS version 7.0 was released. This version 

is designed for the unique requirements of advanced 2G, 
2.5G, and 3G mobile phones.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Basic Features:
• Basic operating system features supporting 32-bit CPUs, memory, 

system RAM, I/O devices, such as keyboards, disks (memory-
card), RS232 and connection to PC, an infrared port, and 
bluetooth for wireless transfer of data between Symbian OS and 
others, such as PDAs.

• Supporting communication protocols, TCP/IP, WAP(1.2.1), GSM, 

Bluetooth, IrDa and serial connections.

• Allow C++/Java (Java applets)–based applications to be executed.
• Full-strength security using HTTPS, WTLS, and SSL.
• Enhanced multimedia capabilities
• Over-the-air data synchronization using SyncML
• Supporting advanced messaging, including NMS< EMS, and SMS
• Providing a complete suite of application engines for contacts, 

schedules, Web browsing and system control 

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

To support a range of different platform models for various mobile 

devices, Symbian OS provides the followings:

• Two reference designs: Quartz and Crystal

– Quartz is targeted at PDA-sized devices (320x240 pixels)
– Crystal is targeted for communicator type devices (640x200 pixels) 

• Recently Symbian OS 7.0 released two more user interfaces:

– UIQ provides a customizable pen-based user interface for media-rich 

mobile phones. This was designed for the large, touch sensitive color 
displays found on 2.5G and 3G handsets. It is targeted for screen sizes 
ranging from 208x320 to 240x320 pixels (PDA standard sizes).

– The Series 60 platform is designed for mobile phones and smart phones. 

• Provide a development kit for developers who are building 

applications. 

– For on-device applications, including EPOC C++ which is an efficient and 

purely object-oriented language that provides full access to all of the 
platform APIs.

– Java runs on Symbian’s Java runtime and implements PersonalJava 3.0 JVM 

and JavaPhone 1.0 profiles.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Basics of Symbian OS (kernel):
• Two reference designs: Quartz and Crystal

– Quartz is targeted at PDA-sized devices (320x240 pixels)
– Crystal is targeted for communicator type devices (640x200 pixels) 

• Recently Symbian OS 7.0 released two more user interfaces:

– UIQ provides a customizable pen-based user interface for media-rich 

mobile phones. This was designed for the large, touch sensitive color 
displays found on 2.5G and 3G handsets. It is targeted for screen sizes 
ranging from 208x320 to 240x320 pixels (PDA standard sizes).

– The Series 60 platform is designed for mobile phones and smart phones. 

• Provide a development kit for developers who are building 

applications. 

– For on-device applications, including EPOC C++ which is an efficient 

and purely object-oriented language that provides full access to all of 
the platform APIs.

– Java runs on Symbian’s Java runtime and implements PersonalJava 3.0 

JVM and JavaPhone 1.0 profiles.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Jerry Gao Ph.D.

9/2002

All Rights Reserved

Process Boundaries for Symbian OS

Server Server Application

Application

Application

Engine

Engine

Kernel

background image

 

 

Basics of Symbian OS:

The Kernel is a core of Symbian OS.
-

Manages the machine’s hardware resources such as system RAM, 
and hardware devices.

-

Provides and controls the way all other software components can 
access these resources.

-

Uses hardware-supported privilege to gain access to the resources.

– That is, the CPU will perform certain privileged instructions for only the 

kernel.

– It runs other programs – so called user-mode programs without 

privilege so that they can only access system resources through the 
kernel APIs. 

The Application is a program with a user interface. Each application 

runs in a separate process with its own virtual address space.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Basics of Symbian OS:

A Sever is a program without a user interface.
-

It manages one or more resources.

-

It provides an API so that clients can gain access to its services.

-

A server’s client may be applications or other servers.

-

Each server generally runs in its own process so that the 
boundary between a server and its clients is a process 
boundary.

An Engine is the part of an application that manipulates its data 

rather than the part that interacts directly with the user.

Often an application can be divided into an engine part and GUI 

part.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Symbian OS implements preemptive multitasking so that it can run 

multiple applications and servers simultaneously.

The Process is a fundamental unit of protection in Symbian OS.
-

Each process has its own address space.

-

The virtual address used by programs executing in that process 
are translated into physical addresses in the machine’s ROM 
and RAM. The translation is managed by memory management 
unit (MMU), so that  the read-only memory is shared.

The Thread is the fundamental unit of execution in Symbian OS. A 

process may has one or more threads. Each thread executes 
independently of the others, but share the same address space.

Threads are preemptively scheduled by the Symbian OS kernel. 

The highestt-priority thread that is eligible to run at a given 
time is run by the kernel. A thread may have the following 
status:
 run, scheduled, suspended (waiting for events), and resume

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

DBMS in Symbian OS:
The DBMS in the Symbian OS is significantly more advanced than that 

in either the Palm OS or Windows CE. 

Rather than using a flat-file database structure, Symbian OS has 

implemented a relational DB. This suggests the followings:

-

Multiple DB tables and complex schemas could be defined in a DB

-

A subset of SQL (as well as C++ APIs) can be used for data access.

One of the other nice features of the Symbian OS DBMS is the support 

for transactions. When database changes occur within a 
transaction, all changes can be undone if something goes wrong 
during any part of the data manipulation.

The major limitations of Symbian OS DBMS are:
-

the API is only available in C++, and limiting access to the other 
supported programming languages such as Java.

-

Its relational DBMS does not support some common functions, such 
as joins.

Jerry Gao Ph.D.

3/2004

All Rights Reserved

An Overview of Symbian OS

Topic: Mobile OS and Development 

Environments

background image

 

 

Jerry Gao Ph.D.

8/2004

All Rights Reserved

Topic: Mobile OS and Development 

Environments

Major Players in Mobile Devices and Technologies

Nokia 

Sony Ericsson

Sun Microsystems

Symbian

Motorola

PacketVideo

RealNetworks

Siemens AG

Siemens ICM

4thpass Inc.

AGEA Corporation

Alcatel

Aplix Corporation

Baltimore 

Technologies

Fujitsu Limited

Hitachi Limited

In Fusio

Logical Mobile 

Networks

Mitsubishi Electric 

Corp

Mobile Scope AG

Mobilitec

NEC Corporation

Nextel 

Communications

Openwave Systems 

Inc.

Palm

Samsung Electronics

Sharp Labs

Vaultus Inc.

Veloxsoft Inc.

Vadafone Multimedia


Document Outline