Top Banner
1 Interactive Pervasive Computing Peter CH Kwok
51

Mobile OS Platform

Jan 28, 2015

Download

Technology

You have to know something about mobile operating systems.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Mobile OS Platform

1

Interactive Pervasive Computing

Interactive Pervasive ComputingPeter CH Kwok

Page 2: Mobile OS Platform

CHAPTER XCHAPTER X

Operation System (OS) and Software of Pervasive Devices

1-2

Page 3: Mobile OS Platform

Chapter ContentChapter Content

• Symbian OS – S60, S80 and UIQ platform• Palm OS Platform• Windows Mobile Platform• Iphone/Mac OS/Safari Browser• BlackBerry OS Platform• Androrid Platform• Mobile Browser - Safari, NetFront and Opera• Java SE and Java ME Platform

1-3

Page 4: Mobile OS Platform

Symbian OS - BackgroundSymbian OS - Background

• Symbian OS is used by leading mobile phone manufacturers

• As a Descendant of Psion's EPOC OS • Run exclusively on ARM processors • Symbian company is currently owned by

Ericsson, Panasonic, Siemens, Nokia, Sony Ericsson and Samsung

• Symbian Ltd provide reference implementation of related development libraries, user interface, and common tools

1-4

Page 5: Mobile OS Platform

Design of Symbian OSDesign of Symbian OS

• Smartphone platform based on Symbian OS - UIQ, Nokia’s S60, S80, S90 and NTT Docomo’s FOMA

• Adopt to different Smartphone Form Factor• Based on EPOC, with similar desktop OS features

– pre-emptive multi-tasking, multi-threading and memory protection

• Designed for handheld device, can operate several months without reboot

• Symbian Version 6.x (Nokia 7650, 3650) 7.x, 8.x and 9.x (Nokia N95)

1-5

Page 6: Mobile OS Platform

Devices of Symbian OSDevices of Symbian OS

• Nokia S80 - Nokia 9210 Communicator, 9300 and 9500 Communicator

• UIQ SonyEricsson P800, P900, P990, W950 and P1i,

Motorola’s A920, A1000, BenQ P30, P31, Nokia 6708.etc

• Nokia S60 Latest version is S60 3.0 – Nokia N73, Nokia N95, Nokia

N82. etc

• S90 – Nokia 7710 • FOMA platform – by Fujitsu, Mitsubishi, Sony

Ericsson and Sharp in NTT Docomo in Japan

1-6

Page 7: Mobile OS Platform

Nokia S60 ArchitectureNokia S60 Architecture

1-7

Page 8: Mobile OS Platform

Symbian OS - DevelopmentSymbian OS - Development

• The native language of the Symbian OS is C++• UIQ Platform – with UIQ SDK (latest version 3.x)

http://developer.uiq.com/devtools_uiqsdk.html

• S60 Platform – previous versions of Symbian OS, the commercial IDE

CodeWarrior for Symbian OS was favoured Nokia buy CodeWarrior and develop the Carbide.C++ IDE

tools Carbide.C++ is offered in 4 different versions: Express

(free), Developer, Professional, and OEM, Visual Studio with the support of Carbide.vs add-ons

1-8

Page 9: Mobile OS Platform

Symbian OS - DevelopmentSymbian OS - Development

• Symbian OS applications need to find a route to customers' mobile phones. They are packaged in SIS files which may be installed over-the-air, via PC connect or in some cases via Bluetooth or memory cards

• SISx application deploy file in Symbian OS 9.x, because any application wishing to have any capabilities beyond the bare minimum must be signed via the Symbian Signed program.

1-9

Page 10: Mobile OS Platform

Symbian OS – Symbian OS – Other Type of DevelopmentsOther Type of Developments

• Many Symbian OS devices can also be programmed in OPL, Python, Visual Basic, Simkin, and Perl –

• Java - Java ME and PersonalJava flavors of Java

• Adobe Flash lite application

1-10

Page 11: Mobile OS Platform

Palm OS (Garnet OS)Palm OS (Garnet OS)

• Once owned by Palm Computing Inc, now sold to Japan Company Access http://www.access-company.com/

• Earliest version of Palm OS application are installed on the RAM and then executed directly

• Processor - Palm OS 5 support ARM processor and the palm application compatibility Environment (PACE) emulator allow support for the legacy “Dragonball” processor

• The native language of the Palm OS is C++1-11

Page 12: Mobile OS Platform

Palm OS DevelopmentPalm OS Development

• Palm/Core Garnet SDK can be download in Access Development Network http://www.accessdevnet.com/

• Palm/Garnet Desktop SDK - enable developer to extends the desktop software

• Once we use CodeWarrior Development Studio for Palm OS 5 (now CodeWarrior is stopped)

• A Java Run time Environment is also available for the Palm OS platform, but is non-official tools

1-12

Page 13: Mobile OS Platform

Windows Mobile 5Windows Mobile 5

• Powered by Windows CE 5.0 and used the Dot Net Compact Framework 1.0 SP2 — an environment for programs based on .NET

• Windows Mobile 5.0 included Microsoft Exchange Server’s push functionality improvements that worked with Exchange 2003 SP2

• New version of Office Mobile – Mobile Word, Mobile Excel and Mobile PowerPoint

1-13

Page 14: Mobile OS Platform

Windows Mobile 6Windows Mobile 6

• Windows Mobile 6 is powered by Windows CE 5.2 and is strongly linked to Windows Live and Microsoft Exchange 2007 products.

• AJAX, JavaScript and XMLDOM support on Internet Explorer Mobile

• Dot Net Compact Framework 2.0 SP Preinstalled• Microsoft SQL Server 2005 Compact Edition

Preinstalled in ROM• HTML Email support in Outlook Mobile

1-14

Page 15: Mobile OS Platform

Version of Windows MobilesVersion of Windows Mobiles

Windows Mobile 5

Windows Mobile 6

Pocket PC without Mobile Phone

Windows Mobile 5.0 for Pocket PC

Windows Mobile Professional

Smartphone Windows Mobile 5.0 for Smartphone

Windows MobileStandard

Pocket PC with Mobile Phone

Windows Mobile 5.0 for Pocket PC Phone Edition

Windows MobileClassic

15

Page 16: Mobile OS Platform

Windows Mobile DevelopmentWindows Mobile Development

• Microsoft Visual C++ for native code development

• Dot Net Compact Framework for managed code development – running on windows CE devices

• Tools to develop Microsoft Visual Studio 2005 or Visual Studio 2008 Windows Mobile 6 Professional SDK Windows Mobile Pocket PC SDK

1-16

Page 17: Mobile OS Platform

Iphone and Ipod Touch OS Iphone and Ipod Touch OS ArchitectureArchitecture

• Iphone OS runs on the iPhone and iPod Touch• A variant of the same basic Mach Keral found in

Mac OS 10• Software component “Core Animation” and the

“PowerVR” MBX 3D Hardware, responsible for the smooth animations used in its interface

• ARM-based processor• Multi-touch display of 320×480 resolutions,

application can be developed based on its multi-touch technology

1-17

Page 18: Mobile OS Platform

Iphone and Ipod Developer Iphone and Ipod Developer ProgramProgram

• The iPhone Developer Program provides a complete and integrated process for developing, debugging, and distributing application for Iphone and Ipod

https://developer.apple.com/iphone/program/

• Apply as a member Standard Developer $99 Enterprise Developer $299

• The Iphone SDK only run in Mac OX X Leopard

1-18

Page 19: Mobile OS Platform

Web Application with Web Application with Iphone and Ipod TouchIphone and Ipod Touch

• Develop Iphone and Ipod application running on Safari web browser

http://developer.apple.com/webapps/

• Features of the Safari browser Auto resize of webpage to fit the browser’s size Multi-touch features XHTML 1.0, CSS 2.1, JavaScript, W3C DOM Level 2,

AJAX Technology Support cookies DOES NOT SUPPORT Flash or Java

1-19

Page 20: Mobile OS Platform

Web Application with Web Application with Iphone and Ipod TouchIphone and Ipod Touch

• Iphone web application is characterize by minimizes the user’s awareness of the

browser experience – don’t have to use Safari’s browser buttons

An iPhone application reproduces the control style, layout, and behavior of the built-in iPhone applications

An iPhone application integrates with built-in iPhone features and services.

1-20

Page 21: Mobile OS Platform

BlackBerry OSBlackBerry OS

• BlackBerry OS is the proprietary operating system made by Research in Motion for their BlackBerry line of handhelds. It provides multi-tasking, and makes heavy use of the device's specialized input devices, particularly the thumbwheel

• The current OS 4 provides a subset of MIDP 2.0• Developers can write software using these APIs,

and proprietary BlackBerry APIs as well• Application are digitally signed – associated the

developer

1-21

Page 22: Mobile OS Platform

BlackBerry SoftwareBlackBerry Software

• Integrated up to 10 to Push Email from BlackBerry, Microsoft Exchange, Domino, Yahoo and other email systems, viewing attachments of Adobe PDF, Microsoft Word, Excel and Powerpoint

• BlackBerry Browser – only support JavaScript• BlackBerry Maps• Facebook services• Yahoo Messager, Google Talks• Calendar, Address Book and PIM Sync via USB• GPS• BlackBerry Games

1-22

Page 23: Mobile OS Platform

BlackBerry Wireless PlatformBlackBerry Wireless Platform

• BlackBerry offers leading wireless solutions, providing access to a wide range of applications on a variety of BlackBerry smartphones

• provides a standards-based platform and developer tools, which allow the development and deployment of custom wireless applications

HTML web browser Java ME development tools .NET application

• Support standard networking protocols – connect to any kind of server applications

1-23

Page 24: Mobile OS Platform

BlackBerry Mobile Data BlackBerry Mobile Data SystemSystem

1-24

BlackBerry MDS support Microsoft Exchanges, Lotus Domino, Novell GroupWire and BlackBerry’s own MDS system for messaging application

Page 25: Mobile OS Platform

BlackBerry Internet ServicesBlackBerry Internet Services

• BlackBerry Internet Service leverages centrally hosted wireless gateways, allowing users to access up to 10 supported email accounts and Internet browsing

1-25

Page 26: Mobile OS Platform

BlackBerry Developer ToolsBlackBerry Developer Tools

• BlackBerry MDS Studio developers can quickly create rich-client

applications using a component-based drag and drop approach (require MDS runtime)

• BlackBerry Plug-in for Visual Studio Development on MDS platform

• BlackBerry Java Development Environment (JDE) A IDE and Simulation Tools for Java ME

application for Java-based BlackBerry to develop standalone or client-server apps.

26

Page 27: Mobile OS Platform

Android – Android – Mobile Phone OS ProjectMobile Phone OS Project

1-27

• Android is a software development platform for mobile phone based on the Linux OS

• Developed by Google and the Open Handset Alliance for different mobile phone manufacturer

• Features• 3D - OpenGL ES 1.0• SQLite - for data storage• WebKit - web browser• Dalvik - Java Virtual Machine• FreeType - Bitmap and Vector Images• Connectivity - BlueTooth, Wi-Fi, GPS

Page 28: Mobile OS Platform

Android SoftwareAndroid Software

• Core applications Email client, SMS program, calendar, maps(googles),

browser, contacts, and others. written using the Java programming language

• Application Framework Full access to the same framework APIs Architecture is designed to simplify the reuse of

components

• Runtime Core C++ library Multiple Java (Dalvik) Virtual Machine (VM) running in

process 1-28

Page 29: Mobile OS Platform

Android ArchitectureAndroid Architecture

1-29

Page 30: Mobile OS Platform

Android Android Software Development Kit (SDK)Software Development Kit (SDK)

• Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language

• Download Android SDK Core http://code.google.com/android/download.html

• To Develop with Eclipse IDE, we can add the plugin - Android Development Tools (ADT)

https://dl-ssl.google.com/android/eclipse/

1-30

Page 31: Mobile OS Platform

Android – Development ToolsAndroid – Development Tools

1-31

Page 32: Mobile OS Platform

Adobe Flash LiteAdobe Flash Lite

• Adobe Flash is the most successful interactive multimedia tools to deliver web contents

• Flash Lite – lightweight version for mobile devices

• Port flash application and game to mobile platform with the minimum effort – only require effort for correct Visual Design for small screen

• Features ActionScript – game logic and business logic Connectivity - XML, media file and HTTP request Persistent Storage – save data Flash Video – support FLV document Cross Platform – support by different handset brands

1-32

Page 33: Mobile OS Platform

Adobe Flash Lite - VersionsAdobe Flash Lite - Versions

Flash 1.1 Flash Lite 2.1 Flash Lite 3.0

Flash Video (FLV) Yes

Dynamic MediaFile Import

Yes Yes

Flash Version Compatible

Flash 4 or before Flash 7 or before Flash 8 or before

ActionScript ActionScript 1.0 ActionScript 1.02.0 (Flash 7 or before)

ActionScript 1.02.0 (Flash 8.0 ore before)

Persistent Storage Yes Yes

XML support Yes Yes 1-33

• For complete version comparsions• http://www.adobe.com/tw/products/flashlite/version/

Page 34: Mobile OS Platform

Adobe Device CentralAdobe Device Central

• Adobe’s Flash Lite software management and testing tools – Bundled in Adobe Flash CS3

• Download from web to get information of latest devices

1-34

Page 35: Mobile OS Platform

Flash Lite Development - Flash Lite Development - challengeschallenges

• Memory – at most 1.5M to 2M Runtime RAM• Display – 176 x220 or 240x320(QVGA) small

resolutions• Processor – ARM9 or even slower processor• Diversity – support handset of different

resolutions, different vendor and hardware, in one single files

• Limited Flash Content Size - 100K for Flash lite 1.1, 400K for Flash Lite 2.0

1-35

Page 36: Mobile OS Platform

Flash Lite – Supported Flash Lite – Supported DevicesDevices• Windows Mobile /Pocket PC

Get Flash Player for Pocket PC (Flash 7)• http://www.adobe.com/products/flashplayer_pocketpc

• Symbian S60 devices Some S60 devices such as Nokia N95, N82 has pre-

installed Flash Lite 1.1/2.x Get Latest Flash Lite 3.0

• http://labs.adobe.com/technologies/flashlite3

• Symbian FOMA Devices in Japan• Sony Ericsson Classic mobile phones

1-36

Page 37: Mobile OS Platform

Java ME PlatformJava ME Platform

• Java as one of the most popular programming platform

• Java is not a mobile phone OS, but run as a platform on top of many mobile phone OSs

Symbian OS Windows CE/Windows Mobile BlackBerry OS Palm OS

1-37

Page 38: Mobile OS Platform

Java ME ArchitectureJava ME Architecture

1-38

Page 39: Mobile OS Platform

Java ME ArchitectureJava ME Architecture

1-39

Page 40: Mobile OS Platform

ReferencesReferences

• Symbian Developer Network http://developer.symbian.com/main/index.jsp

• Symbian OS http://www.symbian.com

• S60 Platform http://www.s60.com

• UIQ Developer Community http://developer.uiq.com/devtools_uiqsdk.html

• Open GL ES http://www.khronos.org/opengles/ 40

Page 41: Mobile OS Platform

ReferencesReferences

• Access Garnet Platform http://www.accessdevnet.com/index.php/Garnet-OS/

Garnet-OS.html

• I Phone Developer Program http://developer.apple.com/iphone/program/

• Desiging Content for Iphone and Ipod Touch http://developer.apple.com/webapps/designingcontent.php

• Black Berry Developer Program http://na.blackberry.com/eng/developers/ http://na.blackberry.com/eng/developers/started/

tools.jsp#mds

1-41

Page 42: Mobile OS Platform

ReferencesReferences

• NetFront mobile browser http://jp.access-company.com/products/clientsuite/

clientsuite.html

• Android http://code.google.com/android/index.html

• Adobe Flash Lite Introduction http://www.adobe.com/tw/products/flashlite/

• Sample Flash Lite Application http://www.adobe.com/cfusion/exchange/index.cfm?

event=productHome&exc=12&loc=en_us

1-42

Page 43: Mobile OS Platform

1-43

Page 44: Mobile OS Platform

1-44

Page 45: Mobile OS Platform

1-45

Page 46: Mobile OS Platform

1-46

Page 47: Mobile OS Platform

1-47

Page 48: Mobile OS Platform

1-48

Page 49: Mobile OS Platform

1-49

Page 50: Mobile OS Platform

1-50

Page 51: Mobile OS Platform

1-51