Unit V
Unit V
COMPUTING
UNIT –
V
Unit -
V
MOBILE PLATFORMS & APPLICATIONS
Mobile Device Operating Systems – Special
Constraints & Requirements – Commercial Mobile
Operating Systems – Software Development Kit:
iOS, Android, BlackBerry, Windows Phone –
MCommerce – Structure – Pros & Cons – Mobile
Payment System – Security Issues
Applications
OS Libraries
6
Mobile Operating
System
Features
Multitasking
Scheduling
Memory Allocation
Keypad Interface
I/O Interface
Protection and
Security
Multimedia features 7
Java ME
J2ME Platform
platform is a set of technologies,
specifications and libraries developed for small
devices like mobile phones, pagers, and
personal organizers.
Java ME was designed by Sun Microsystems. It
is licensed under GNU General Public License
Configuration: it defines a minimum platform
including the java language, virtual machine
features and minimum class libraries for a
grouping of devices. E.g. CLDC
8
Java ME
Architecture
Profile: it supports higher-level services common to a more specific class of
devices. A profile builds on a configuration but adds more specific APIs to
make a complete environment for building applications. E.g. MIDP
Java ME platforms are composed of the following elements:
Application
Vendor
Optional specific
Profile Packages classes - OEM
Configuration
Device/ Hardware
9
Java ME
It includes two Platform
kinds of platforms:
High-end platform for high-end consumer devices. E.g. TV
top
set- boxes, Internet TVs, auto-mobile navigation
Low-end platform
systems for low-end
devices. E.g.
consumer
phones, and pagers cell
Platforms Device Characteristics
High-End a large range of user interface capabilities
total memory budgets starting from about two to four MB
consumer persistent, high-bandwidth network connections, often
devices using TCP/IP
Low-end simple user interfaces
consumer minimum memory budgets starting from about 128–256 KB
devices low bandwidth, intermittent network connections that is
often not based on the TCP/IP protocol suite.
most of these devices are battery-operated
10
Commercial Mobile Operating
Systems
Windows Mobile
Palm OS
Symbian OS
iOS
Android
Blackberry Operating system
11
Windows Mobile OS
Windows Mobile is a compact operating system designed
for mobile devices and based on Microsoft Win32.
It provides ultimate interoperability. Users with various
requirements are able to manipulate their data.
Windows CE (Compact Edtion) - designed specifically for
handheld devices, based on Win32 API.
PDA (personal digital assistant), palmtop computer,
PocketPC were original intended platform for the Windows
Mobile OS.
For devices without mobile phone capabilities, and those
that included mobile phone capabilities
12
Family of Windows Mobile
OS– Windows CE 1.0
1996
1997 – Windows CE 2.0 (ATM, games consoles, Handheld PC's,
kitchen utensils)
2000 - Windows CE 3.0 - Pocket PC 2000 - (became the os of
choice on many Pocket PCs, looked and worked like Windows
98, no phone feature)
2001 - CE 3.0 - Smartphone 2002– used for Pocket PC phones
and Smartphones, UI reflect the new Windows XP
2003 – Windws Mobile 2003 (Windows CE 4.2) - first release
under the Windows Mobile banner - name changed form
PocketPC to Windows Mobile
2005 - WM5 (CE5.0) - new standard API created for a simplified
programming of 3D apps and games with Direct3Dmobile. It use
.Net Compact Framework environment
13
Family of Windows Mobile
OS– WM6 (CE 5.2) – (also
2007
year of introducing iPhone)
similar in design to the Vista,
works much like WM5, but
with much better stability
2008 – WM 6.1 – (year of
releasing Android)
2009 WM6.5, vertically
– labels,
scrollable
Marketplace Window
Feb
announced – WM6.5.3, s was
2010 announced as first
officially Phone 6.5.3
Windows
smartphone
14
Palm OS
Palm OS is an embedded operating system
designed for ease of use with a touch
screen-based graphical user interface.
It has been implemented on a wide variety
of mobile devices such as smart phones,
barcode readers, and GPS devices.
It is run on Arm architecture-
processors. based Itdesigned
is as a 32-
architecture. bit
15
Palm OS
The key features of Palm OS
A single-tasking OS:
Palm OS Garnet (5.x) uses a kernel developed at
Palm, but it does not expose tasks or threads to
user applications. In fact, it is built with a set of
threads that can not be changed at runtime.
Palm OS Cobalt (6.0 or higher) does support
multiple threads but does not support creating
additional processes by user applications.
16
Palm OS
Palm OS has a preemptive multitasking kernel
that provides basic tasks but it does not expose
this feature to user applications.
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.
Handwriting recognition input called Graffiti 2
17
Palm OS
Expansion support: 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.
HotSync technology for synchronization
with PC computers
Sound playback and record capabilities
TCP/IP network access
18
Palm OS
Support of serial port, USB,
Infrared, Bluetooth and Wi-
Fi connections
Defined standard data
format for PIM (Personal
Information Management)
applications to store
calendar, address, task and
note entries, accessible by
third-party applications
19
Symbian
OS
Symbian OS is 32 bit, little-endian
operating system, running
different on flavors
architecture of ARM
It is a multitasking operating system and very
less dependence on peripherals.
Kernel runs in the privileged mode and exports
its service to user applications via user libraries.
20
Symbian
OS
User libraries include
networking, communication, I/O interfaces
and etc. to
Acces services
s and these is coordinated
a client-server
resources
framework.
through
Client use the service
s exposed by the
APIs
to communicate with the server. server
The client-server communication is
conducted
by the kernel. 21
Symbian
The OS demonstrates
following the
Symbian OS architecture
Symbian OS Libraries
KVM
Application Engines
Servers
Hardware
22
Symbian OS
Features
Real-time: it has a real-time, multithreaded kernel.
Data Caging
it allows applications to have their own private data
partition. This feature allows for applications to guarantee a
secure data store. It can be used for e-commerce
applications, location aware applications and etc.
Platform Security
Symbian provides a security mechanism against malware. It
allows sensitive operations can be accessed by applications
which have been certified by a signing authority. In addition,
it supports full encryption and certificate management,
secure protocols (HTTPS, TLS and SSL) and WIM
framework.
23
Symbian OS
Features
Multimedia
it supports audio, video recording, playback and streaming,
and Image conversion.
Internationalization support
it supports Unicode standard.
Fully object-oriented and component- based
Optimized memory management
Client-server architecture
it provides simple and high-efficient inter process
communication. This feature also eases porting of code
written for other platforms to Symbian OS.
24
Symbian OS
Features
A Hardware Abstraction Layer (HAL)
This layer provides a
consistent interface to hardware and
supports device- independency
Kernel offers hard real-time
guarantees to kernel and user mode
threads.
25
iPhone
OS
26
iOS
Apple’s Proprietary Mobile
iOS is Apple’s proprietary mobile
operating system initially developed for
iPhone and now extended to iPAD, iPod
Touch and Apple TV.
Initially known as “iPhone OS”, in
June 2010 renamed “iOS”.
iOS is not enabled for cross licensing,
it can only be used on Apple’s devices.
27
iOS
Apple’s Proprietary Mobile OS
The user interface of iOS is based on
the concept of usage of multi touch
gestures.
iOS is a Unix based OS.
iOS uses four abstraction layers,
namely: the Core OS layer, the Core
Services layer, the Media layer, and the
Cocoa Touch layer.
Apple’s App store contains close to
550,000 applications as of March 2012. 28
iOS
Apple’s Proprietary Mobile OS
It is estimated that the APPs are
downloaded 25B times till now.
First version of iOS is released in 2007
with the mane ‘OS X’ and then in 2008
the first beta version of ‘iPhone OS’ is
released.
In 2007 September Apple released first
iPod Touch that also used this OS.
In 2010 iPad is released that has a
bigger screen than the iPod and iPhone.29
iOS
Cisco owns the trademark for ‘IOS’;
Apple licenses the usage of ‘iOS’ from
Cisco.
30
Mac OS X
Architecture
31
Android
Google owns a trademark for Android – Google’s
permission is necessary to use Android’s
trademark
In 2011, Microsoft announced it has made an
agreement with Android device manufacturers
(including Samsung and HTC) to collect fees
from them.
Android’s source code is available under Apache
License version 2.0. The Linux kernel changes are
available under the GNU General Public License
version 2.
32
Android
Android is OSbased mobile
Linux OS for mobile
devices such as Tablets and Smartphones.
In 2005 Google acquired the initial developer of
the OS, Android Inc.
Then in 2007 Google formed an Open Handset
Alliance with 86 hardware, software and telecom
companies.
This alliance developed and announced Android
as an open source mobile OS under the Apache
License.
33
Android
Now, this OS is being used by multiple device
manufacturers (Samsung, Motorola, HTC, LG,
Sony etc) in their handsets
Android developer community has large
number of developers preparing APPs in Java
environment and the APP store ‘Google Play’
now has close to 450,000 APPs, among which
few are free and others are paid.
It is estimated that, as of December 2011,
almost 10B APPs were downloaded.
34
Android
It is estimated that as of February 2012 there
are over 300M Android devices and
approximately 850,000 Android devices are
activated every day.
The earliest recognizable Android version is
2.3 Gingerbread, which supports SIP and NFC.
In 2011 Android Honeycomb version (3.1 and
3.2) are released with focus on Tablets. This is
mainly focused on large screen devices.
35
Android
Handset layouts – compatible with
handset different designs such as
graphics library,
larger, 3D graphics
VGA, library2Dbased.
Storage – lightweight relational
a database,is used for data storage
Connectivit: GSM/EDGE, IDEN,
CDMA, EV- DO,UMTS,Bluetooth,WiFi,
LMTeEs,saNgFinCg&W–M
i SAMXS, MMS, threaded
text messaging and Android Cloud To Device
Messaging (C2DM)
36
Android
Google faced many patent lawsuits against
Android such as by Oracle in 2006 that included
patents US5966702 and US6910205.
Created by Android Inc.,
Distributed under
Apache License
as part of Google in Linux Kernel
2005
Programmers are
Java-based
Development is Open welcome to contribute
Source; source code is
publicly available
via Software application
Development Kit (SDK)
framework
37
Blackberry
OS
The first operating system launched by
Research in Motion(RIM -the company
behind BlackBerry)
Operating system mainly
structure consists of following:
-
GUI (Graphic User Interface).
Command processor.
Kernel.
38
Blackberry OS
Architecture
39
Blackberry OS
Features
Gestures
Multi-tasking
Blackberry Hub
Blackberry Balance
Keyboard
Voice Control
40
Key Terms in Blackberry OS
Process Management
Memory Management
Types of Kernel – Microkernel
41
Advantages of Blackberry
OS good security for data.
It provides
It avoids collusion of personal and business data.
Content promotion: Dedicated content channels
and feature banners that provide prime real estate to
help distribute your app to the right users.
App discovery: Universal search, top lists, social
sharing, reviews, and ratings help users find the
right app.
The Games app (in combination with Score loop):
A specialized portal for gaming allowing
multiplayer, social connections.
42
Disadvantages of Blackberry
OS operating system was introduced too late
New
into the ever-growing market.
Yet to have as many apps available for
purchase or download compared to other phone
in the market.
Consumers have switched over to other devices
made by Apple or Android.
Swipe vs. home button. Once an application is
opened, you have to swipe up to return to the
main display.
43
Android Software Development
Kit
A software development kit that enables developers
to create applications for the Android platform.
The Android SDK includes sample projects with
source code, development tools, an emulator, and
required libraries to build Android applications.
Applications are written using Java
programming
the language and run on Dalvik, a
custom virtual machine designed for embedded use
which runs on top of a Linux kernel.
44
Android SDK
The Environment
Android Development Tools (ADT) plugin for
Eclipse adds powerful extensions to the Eclipse
integrated development environment. It allows you to
create and debug Android applications easier and
faster.
Advantages:
It gives you access to other Android development tools from
inside the Eclipse IDE. For example, ADT lets you access
the many capabilities of the DDMS tool: take screenshots,
manage port‐forwarding, set breakpoints, and view thread
and process information directly from Eclipse.
45
Android SDK Environment
Advantages
It provides a New Project Wizard, which helps you
quickly create and set up all of the basic files you'll
need for a new Android application.
It automates and simplifies the process of building
your Android application.
It provides an Android code editor that helps you write
valid XML for your Android manifest and resource
files.
It will export your project into a signed APK,
which can be distributed to users.
46
Creation of Android SDK
Environment
Download and Install the
Android SDK and test the Emulator
Install Java
Install Eclipse
Install the ADT Plug-in in Eclipse
Create Hello World Application
47
Android Application
Components
Components Description
Activities They dictate the UI and handle the user
interaction to the smart phone screen
Services They handle background processing
associated with an application.
Broadcast They handle communication between
Android OS and applications.
Receivers
Content They handle data and database
Providers management issues.
48
Android Application
Components
Components Description
Fragments Represents a portion of user interface in
an Activity.
Views UI elements that are drawn on-screen
including buttons, lists forms etc.
Layouts View hierarchies that control screen format
and appearance of the views.
Intents Messages wiring components together.
Resources External elements, such as strings, constants
and drawable pictures.
Manifest Configuration file for the application.
49
Android Software Stack
Structure
50
Advantages of
Android
Android is open
Multitasking
Easy access to the Android App
Market
Can install a modified ROM
Phone options are diverse
Ease of notification
Widget
51
M- Commerce
M-commerce (mobile commerce) is the buying
and
selling goods and services through
of wireless such as
handheld devices
personal digital cellular(PDAs).
assistants telephone andnext-
Known as
generation e-commerce, m-commerce enables users to
access the Internet without needing to find a place to
plug in.
The emerging technology behind m-commerce,
which is based on the Wireless Application Protocol
(WAP), has made far greater strides in Europe, where
mobile devices equipped with Web-ready micro-
browsers are much more common than in the United
States. 52
M- Commerce
M-commerce can be seen as means of selling
purchasing
and of goods and services using mobile
communication devices such as cellular
PDA sphones,
etc, which are able to connect to the Internet
through wireless channels and interact with e-
commerce systems
M-commerce can be referred to as an act of carrying-
out transactions using a wireless device
It is understood as a data connection that results in
the transfer of value in exchange for information,
services or goods
53
M- Commerce
It can also bye seen as a natural extension of e-commerce that
allows users to interact with other users or businesses in a
wireless mode, anytime/anywhere.
It can be perceived to be any electronic transaction or
information interaction conducted using a mobile device and
mobile network thereby guaranteeing customers virtual and
physical mobility, which leads to the transfer of real or
perceived value in exchange for personalized, location-based
information, services, or goods.
M-commerce can also be seen and referred to as
wireless commerce.
It is any transaction with a monetary value that is conducted
via a mobile telecommunications network.
54
M- Commerce
M-commerce can also be seen and referred to
as wireless commerce.
It is any transaction with a monetary value
that is conducted via a mobile
telecommunications network .
An ability to access an IT-System whilst
moving from one place to the other using a
mobile device and carry out transactions and
transfer information wherever and
whenever needed to.
55
Mobile commerce from the
Customer‘s point of
view wants to access information, goods
The customer
and services any time and in any place on his
mobile device.
It can use his mobile device to purchase tickets
for events or public transport, pay for parking,
download content and even order books and CDs.
It should be offered appropriate payment
methods. They can range from secure mobile
micropayment to service subscriptions.
56
Mobile commerce from the
Provider‘s point of view
The future development of the mobile telecommunication
sector is heading more and more towards value-added
services. Analysts forecast that soon half of mobile operators
revenue will be earned through mobile commerce.
Consequently operators as well as third party providers will
focus on value-added-services. To enable mobile services,
providers with expertise on different sectors will have to
cooperate.
Innovative service scenarios will be needed that meet the
customer‘s expectations and business models that satisfy all
partners involved.
57
M-Commerce Terminology
Generations
1G: 1979-1992 wireless technology
2G: current wireless technology;
mainly accommodates text
2.5G: interim technology accommodates
graphicsrd
3G: generation technology (2001-
3
2005) rich media (video clips)
supports
4G: will provide faster multimedia display
(2006- 2010)
58
Terminology and Standards
GPS: Satellite-based Global Positioning System
PDA: Personal Digital Assistant
— handheld wireless
computer
SMS: Short Message Service
EMS: Enhanced Messaging Service
MMS: Multimedia Messaging Service
WAP: Wireless Application Protocol
Smart phones—Internet-enabled
cell phones with attached applications
59
M- Commerce
Structure
60
Pros of M-
Commerce
M-commerce is creating entirely new service
opportunities - such as payment, banking, and
ticketing transactions - using a wireless device .
M-commerce allows one-to-one communication
between the business and the client and also
business-to-business communication .
M-commerce is leading to expectations of
revolutionary changes in business and markets.
M-commerce widens the Internet business
because of the wide coverage by mobile networks.
61
Cons of M-
Commerce
Cell phones have small screen displays and that might be
irritating to someone who has the experience of the
desktop environment.
Another issue that can be seen as a disadvantage to m-
commerce is the limitation in bandwidth. The GSM
technology has the data rate of 9.3 Kbps and the current
3-G technology offers a data rate goes up to 2 Mbps.
Mobile devices use batteries as their form of power
supply . Normally, power for a cell phone battery lasts
up to 2-3 days depending on how new the battery is. It
then gives the owner the burden of having to remember
to recharge it every now and then.
62
Cons of M-
Mobile Commerce
devices do not have enough processing
power and the developer has to be careful about
loading an application that requires too much
processing. Also, mobile devices do not have
enough storage space. The developer has to be
also concerned about the size of his application in
the due process of development.
Mobile appliances are quite vulnerable to theft,
loss and corruptibility. Security solutions for
mobile appliances must, therefore, provide for
security under these challenging scenarios.
63
Mobile Payment
System
Mobile Payment can be offered as a stand-alone
service.
Mobile Payment could also be an important
enabling service for other m-commerce services (e.g.
mobile ticketing, shopping, gambling…)
It could improve user acceptance by making the
services more secure and user-friendly.
In many cases offering mobile payment methods
is the only chance the service providers have to
gain revenue from an m-commerce service.
64
Mobile Payment System
(cont.)
the consumer must be informed of:
what is being bought, and
how much to pay
options to pay
the payment must be made
payments must be traceable.
65
Mobile Payment System
(cont.)requirements:
Customer
a larger selection of merchants with whom they can trade
a more consistent payment interface when making the
purchase with multiple payment schemes, like:
Credit Card payment
Bank Account/Debit Card Payment
Merchant benefits:
brands to offer a wider variety of payment
Easy-to-use payment interface development
Bank and financial institution benefits
to offer a consistent payment interface to consumer and
merchants
66
Payment via Internet Payment
Provider WAP
GW/Proxy
Browsing (negotiation)
Merchant
MeP
Mobile Wallet
CC/Bank
67
Payment via integrated Payment
Server
WAP
GW/Proxy
Browsing (negotiation)
Mobile
Commerce
Merchant
Server
GSM Security
User
SMS-
C ISO8583 Based
CP
VPP IF
CC/Bank
Mobile Wallet
Voice PrePaid
SSL tunnel
68
Security in M-
Commerce CA
SAT GW
(SIM)
Mobile IP Content
Mobile Aggregation
Service
Network
Provider Internet
Network
WAP1.1(+SIM where avail.) Merchant
WAP
GW
Client Web
WAPGateway
Server
WML
WML Encoder CGI
WML- Scrip
WSP/WTP HTTP
Decks with
Script WMLScript ts
WML
Compiler etc.
WML-
Script
WTAI
Protocol Adapters Content
Etc.
70
Comparison between Internet
and
WAP technologies
Wireless Application
Protocol
HTML Wireless Application Other Services and
JavaScript Environment (WAE) Applications
72
Platform
Without aRisks
secure OS,achieving security
on mobile devices is almost impossible
Learned lessons:
Memory protection of processes
Protected kernel rings
File access control
Authentication of principles to resources
Differentiated user and process privileges
Sandboxes for untrusted code
Biometric authentication
73
Risks of WML
Script
Lack of Security Model
Does not differentiate trusted local code from untrusted code
downloaded from the Internet. So, there is no access
control!!
WML Script is not type-safe.
Scripts be scheduled to be
can pushed the client device without the user’s
knowledge
to
Does not prevent access to persistent storage
Possible attacks:
Theft or damage of personal information
Abusing user’s authentication information
Maliciously offloading money saved on smart cards
74
Bluetooth
Bluetooth Security
provides security between any two
Bluetooth devices for user protection and secrecy
mutual and unidirectional authentication
encrypts data between two devices
Session key generation
configurable encryption key length
keys can be changed at any time during a connection
Authorization (whether device X is allowed
to have access service
Trusted Device:Y) The device has been previously
authenticated, a link key is stored and the device is
marked as “trusted” in the Device Database.
75
Bluetooth Security
(Cont..)
Untrusted Device: The device has been
previously authenticated, link key is stored
but the device is not marked as “trusted”
in the Device Database
Unknown Device: No security
information is available for this device.
This is also an untrusted device.
automatic output power adaptation to
reduce the range exactly to requirement,
makes the system extremely difficult
to eavesdrop 76
New Security Risks in M-
Commerce
Abuse of cooperative nature of ad-hoc networks:
An adversary that compromises one node can
disseminate false routing information.
Malicious domains: A single malicious domain
can compromise devices by downloading malicious
code
Roaming: Users roam among non-trustworthy
domains
77
New Security Risks
(cont.)
Launching attacks from mobile devices
With mobility, it is difficult to identify attackers
Loss or theft of device
More private information than desktop computers
Security keys might have been saved on the device
Access to corporate systems
Bluetooth provides security at
the lower layers only: a stolen
device can still be trusted
78
New Security Risks
(cont.)
Problems with Wireless Transport Layer Security (WTLS)
protocol
Security Classes:
No certificates
Server only certificate (Most Common)
Server and client Certificates
Re-establishing connection without re-authentication
Requests can be redirected to malicious sites
79
New Privacy
Risks
Monitoring user’s private information
Offline telemarketing
Who is going to read the “legal jargon”
Value added services based
on location awareness (Location-
Based
Services)
80
Questions ?