characteristics of mobile computing

70
Characteristics of Mobile Computing Prabhaker Mateti CEG436: Mobile Computing 1

Upload: ghada

Post on 25-Feb-2016

57 views

Category:

Documents


0 download

DESCRIPTION

Characteristics of Mobile Computing. Prabhaker Mateti. What is a smart phone?. Broad Functionality. Phone calls (of course) Local File Storage Internet/Cloud Services Office Computing eBook Reader Multimedia Player Digital Audio/Video Recorder Location Based Services Context awareness. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Characteristics of Mobile Computing

Characteristics of Mobile Computing

Prabhaker Mateti

CEG436: Mobile Computing 1

Page 2: Characteristics of Mobile Computing

2

What is a smart phone?

CEG436: Mobile Computing

Page 3: Characteristics of Mobile Computing

3

Broad Functionality

• Phone calls (of course)• Local File Storage• Internet/Cloud Services• Office Computing• eBook Reader• Multimedia Player• Digital Audio/Video Recorder• Location Based Services• Context awareness

CEG436: Mobile Computing

Page 4: Characteristics of Mobile Computing

4CEG436: Mobile Computing

Page 5: Characteristics of Mobile Computing

5

What does a smart phone have?• A cell phone

– Wire free– GSM, CDMA, …– 2G, 3G, 4G– Speaker, Mic

• Battery– < 2000 mAh

• Bluetooth• Media Player• WiFi 802.11 a/b/g/n• Camera• Haptics• GPS

• A mobile device– compact size, < 3x5x1”– light weight, < 250g

• Embedded computer system (SoC)– CPU, RAM, “Hard disk”– Keyboard, Touch inputs– Display

• Accelerometer• Gyroscope• Near Field Communication• Projector• Def will keep changing

CEG436: Mobile Computing

Page 6: Characteristics of Mobile Computing

6CEG436: Mobile Computing

Page 7: Characteristics of Mobile Computing

7CEG436: Mobile Computing

Page 8: Characteristics of Mobile Computing

8CEG436: Mobile Computing

Page 9: Characteristics of Mobile Computing

9CEG436: Mobile Computing

Page 10: Characteristics of Mobile Computing

10

A Typical Android Phone, 20112G Network GSM 850 / 900 / 1800 / 19003G Network HSDPA 850 / 900 / 1900 / 2100, HSDPA, 21 Mbps; HSUPA, 5.76 MbpsDimensions 125.3 x 66.1 x 8.5 mmWeight 116 gDISPLAY capacitive multitouch, 480 x 800 pixels, 4.3 inches (~217 ppi pixel density)Accelerometer Proximity sensor, GyroscopeAlert types Vibration; MP3, WAV ringtonesInt Storage 16GB/32GB storage, 1 GB RAMCard slot microSD, up to 32GB, 8 GB includedGPRS Class 12 (4+1/3+2/2+3/1+4 slots), 32 - 48 kbpsWLAN Wi-Fi 802.11 a/b/g/n, DLNA, Wi-Fi Direct, Wi-Fi hotspotBluetooth Yes, v3.0+HS; Infrared portUSB Yes, v2.0 microUSB (MHL), USB On-the-goStill CAMERA 8 MP, 3264x2448 pixels, autofocus, LED flash,Features Geo-tagging, touch focus, face and smile detection, image stabilizationVideo Yes, 1080p@30fps2nd Cam Yes, 2 MPCPU Dual-core 1.2GHz ARM Cortex-A9 CPU, Mali-400MP GPU, Exynos Radio Stereo FM radio with RDSGPS Yes, with A-GPS supportBATTERY Li-Ion 1650 mAh

CEG436: Mobile Computing

Page 11: Characteristics of Mobile Computing

11

from Ki Soo Hwang, 2008, Core Logic Inc

CEG436: Mobile Computing

Page 12: Characteristics of Mobile Computing

12CEG436: Mobile Computing

Page 13: Characteristics of Mobile Computing

13CEG436: Mobile Computing

Page 14: Characteristics of Mobile Computing

14CEG436: Mobile Computing

Page 15: Characteristics of Mobile Computing

15

Haptics

• Haptic technology, or haptics, is a tactile feedback technology that provides takes a sense of touch by applying forces, vibrations, and/or motions.

• linear vibrator motors

CEG436: Mobile Computing

Page 16: Characteristics of Mobile Computing

16

Portable Haptics System Hardware

CEG436: Mobile Computing

Page 17: Characteristics of Mobile Computing

17

MIT Sixth Sense

CEG436: Mobile Computing

Page 18: Characteristics of Mobile Computing

18

MIT Sixth Sense

CEG436: Mobile Computing

Page 19: Characteristics of Mobile Computing

19

Accelerometer• TBD “An accelerometer is a device that measures the

proper acceleration of the device. This is not necessarily the same as the coordinate acceleration (change of velocity of the device in space), but is rather the type of acceleration associated with the phenomenon of weightexperienced by a test mass that resides in the frame of reference of the accelerometer device. For an example of where these types of acceleration differ, an accelerometer will measure a value when sitting on the ground, because masses there have weights, even though they do not change velocity. However, an accelerometer in gravitational free falltoward the center of the Earth will measure a value of zero because, even though its speed is increasing, it is in an inertial frame of reference, in which it is weightless.”

CEG436: Mobile Computing

Page 20: Characteristics of Mobile Computing

20

Gyroscope• A gyroscope is a device for

measuring orientation, based on conservation of angular momentum.

• 2010: $5, based on MEMS technology

• a single part with gyroscopic sensors and an accelerometer

• output upto six full degrees of freedom.

CEG436: Mobile Computing

Page 21: Characteristics of Mobile Computing

21

Proximity sensor

• A proximity sensor detects the presence of nearby objects without physical contact

CEG436: Mobile Computing

Page 22: Characteristics of Mobile Computing

22

Sensors

• Ambient Light Sensor• 3D Accelerometer• 3-axis gyro/compass• Proximity Sensor• Temperature and Pressure Sensor

CEG436: Mobile Computing

Page 23: Characteristics of Mobile Computing

23

Near Field Communications (NFC)• touch/swipe the

NFC device over an NFC receiver

• related to RFID

NFC Bluetooth BT Low Energy

RFID comp ISO 18000-3 active activeStd body ISO/IEC Bluetooth SIG Bluetooth SIG

Net Standard ISO 13157 etc. IEEE 802.15.1 IEEE 802.15.1Network Type Point-to-point WPAN WPANCryptography not with RFID available available

Range < 0.2 m ~10 m (class 2) ~1 m (class 3)Frequency 13.56 MHz 2.4-2.5 GHz 2.4-2.5 GHz

Bit rate 424 kbit/s 2.1 Mbit/s ~1.0 Mbit/sSet-up time < 0.1 s < 6 s < 1 s

Power consumption < 15mA (read) varies with

class< 15 mA (transmit)

en.wikipedia.org

CEG436: Mobile Computing

Page 24: Characteristics of Mobile Computing

24

Near Field Communications (NFC)

CEG436: Mobile Computing

Page 25: Characteristics of Mobile Computing

25

Embedded Computers

• CPUs– Multiple cores– Mega Hertz

• RAM– 512 MB, common in 2011– in Giga Bytes soon

• Persistent Storage– 32 GB MicroSD common in 2011

CEG436: Mobile Computing

Page 26: Characteristics of Mobile Computing

26

User Interfaces

• Intuitive UI• Small dimensions• Input Devices• Touch Display

CEG436: Mobile Computing

Page 27: Characteristics of Mobile Computing

27

Integrated Network Functionality

CEG436: Mobile Computing

Page 28: Characteristics of Mobile Computing

28

Wireless Networks

• Traditional Wireless IEEE 802.11• Bluetooth• Infrared

CEG436: Mobile Computing

Page 29: Characteristics of Mobile Computing

29

The WiMAX Possibility

• Wireless & Mobile Broadband at 10-30 miles range

CEG436: Mobile Computing

Page 30: Characteristics of Mobile Computing

30

Energy Efficiency

• Battery design• Suspend/Hibernate/Resume/…• Efficient display devices• Application design• OS Design

CEG436: Mobile Computing

Page 31: Characteristics of Mobile Computing

31

What is special about mobile operating system

• A mobile OS need to support the effective and efficient functioning of a mobile device which is:– Physically constrained

• battery-powered device• small screens of varying shapes, sizes, and resolutions• memory (clearly less than a laptop computer)• storage space

– Working in Uncertainty• Networks come and go• Other devices appear and disappear• OS need to provide robust methods for handling connections

and coping with service interruptions and ad hoc attempts to communicate

– Psychological affordance• Small devices, such as mobile phones, are most likely left

unattended, forgotten or lost• It is not the job of the OS to provide a complete suit of security

programs but it should offer a number of utilities and services for security applicationsCEG436: Mobile Computing

Page 32: Characteristics of Mobile Computing

32

What is special about mobile operating system (cont.)

– Wireless networking capable• Bluetooth (802.15)• 802.11x wireless LAN• HiperLAN2• Telephony• GSM• GPRS• 3G• Data exchange using TCP/IP

– Location dependent• Utilities are needed for location and temporal awareness to

support devices operating in different places and times• GPS support• clock and calender support• user profile support

CEG436: Mobile Computing

Page 33: Characteristics of Mobile Computing

33

Mobile System requirements

• Processing power (energy)– Mobile devices need to be small, light, compact and easy

to use– The heaviest part of mobile devices are batteries– Power consumption of the mobile devices needs to be

minimal– Considerable improvements have been achieved in the

size and longevity of batteries, increased battery life is mainly achieved by reducing the power demands of the device (power management)

• power saving capabilities -> power-source profiling• data storage -> access speed and capacity• backlighting• power consumption per pixel

CEG436: Mobile Computing

Page 34: Characteristics of Mobile Computing

34

Mobile System requirements

• Mobile devices need to be able to use a wide range of computer networks– Bluetooth– WLAN ( 802.11x or HiperLAN)– 2.5 G or 3 G (voice and data)

• Ethernet access is achieved via some sort of dockingstation or cradle connected to the desktop computer

CEG436: Mobile Computing

Page 35: Characteristics of Mobile Computing

35

Android and iOS Terms• Includes standard OS terminology.• Android and iOS terms are combined/unified.• Activity – A screen that a user interacts with. • Activity Manager – A system program that manages Activitys, Receivers, Services, low memory

conditions, as well as some IPC dispatching. Its Binder is available through getSystemService(String). • AIDL – Android Interface Definition Language, an object oriented interface description language that

makes it easy to communicate over Binders between processes. Optimized for Java but workable in C. • Binder – This is a real thing in your address space, it has a unique identity and is known about by the

underlying OS. If you make one and I make one they aren’t identical, if I send you mine and you send it back I can tell that it isn’t some other Binder even though they don’t have little names on them. You can use a Binder to talk between processes, or as an unforgeable token.

• Parcelable – An interface that allows something to be put in a Parcel. This interface is usually needed to send an object over a Binder interface. Intents and Bundles are two common Parcelable classes.

• Permission – The right to do something. Android introduces Manifest Permissions.• Reference Security – Capabilities is one notion of how security can be implemented by passing

unforgeable tokens that represent authority around. Binders are references that can be used this way. • Side Loading – Direct user installation of applications. For example, an .APK file that users can directly

install.

CEG436: Mobile Computing

Page 36: Characteristics of Mobile Computing

36

Mobile Processors• The ARM architecture (Advanced RISC Machine) is a 32-

bit RISC processor architecture developed by ARM Limited that is widely used in embedded designs.

• Because of their power saving features, ARM CPUs are dominant in the mobile electronics market, where low power consumption is a critical design goal.

• Today, the ARM family accounts for approximately 75% of all embedded 32-bit RISC CPUs,

• Important branches in this family include Qualcomm Snapdragon, Marvell's XScale and the Texas Instruments OMAP series.

• Others include, e.g.,:– MIPS (Microprocessor without Interlocked Pipeline Stages) is a RISC

microprocessor architecture developed by MIPS Technologies. Mainly used in embedded systems like TiVo, Playstation1 & 2

– Intel Atom Processors for netbooksCEG436: Mobile Computing

Page 37: Characteristics of Mobile Computing

37Sep-05 37

A closer look at their processors

, Droid

The ARM instruction set architecture is surging to market prominence as the dominant standard for embedded CPU solutions

Apple A4 used in iPad, iPhone 4

CEG436: Mobile Computing

Page 38: Characteristics of Mobile Computing

38Sep-05 38

A closer look at these Systems

CEG436: Mobile Computing

Page 39: Characteristics of Mobile Computing

39

Mobile Memory• The memory on the CPU for buffers and I/O

management and stacks, the availability of the general purpose RAM and the memory of backing storage are all limited on mobile devices

• The better the memory management offered by the OS, the wider the options available to applications developers

• –Mobile devices have two types of memories– ROM

• for operating system and preinstalled programs– RAM

• for user information• Types of RAMs

– DRAM (Dynamic RAM): cheapest, used in mobile devices

– EDO (Enhanced Data Output): more expensive but offers a speed increase of about 30% over DRAM (Windows CE)

– SDRAM (Synchronous Dynamic RAM): a further 50% speed (iPAQ)

– DDR (Double Data Rate) SDRAM is twice as fast as SDRAM

– OUM (Ovonics Unified Memory): experimental

CEG436: Mobile Computing

Page 40: Characteristics of Mobile Computing

40

Memory in Mobile Devices• Limited size: 256 -- 1024 MB in 2011

• The memory on the CPU for buffers and I/O management and stacks, the availability of the general purpose RAM and the memory of backing storage are all limited on mobile devices

• The better the memory management offered by the OS, the wider the options available to applications developers

• –Mobile devices have two types of memories– ROM

• for operating system and preinstalled programs– RAM

• for user information

• Types of RAMs– DRAM (Dynamic RAM): cheapest, used in mobile devices– EDO (Enhanced Data Output): more expensive but offers a

speed increase of about 30% over DRAM (Windows CE)– SDRAM (Synchronous Dynamic RAM): a further 50%

speed (iPAQ)– DDR (Double Data Rate) SDRAM is twice as fast as SDRAM– OUM (Ovonics Unified Memory): experimental

CEG436: Mobile Computing

Page 41: Characteristics of Mobile Computing

41

Mobile Storage• Flash memory is non-volatile computer memory that

can be electrically erased and reprogrammed.– used in memory cards and USB flash drives for general

storage and transfer of data in PDAs, laptop computers, digital audio players, digital cameras and mobile phones

– a specific type of EEPROM (Electrically Erasable Programmable ROM) that is erased and programmed in large blocks; in early flash the entire chip had to be erased at once.

– Flash memory costs far less than byte-programmable EEPROM and therefore has become the dominant technology wherever a significant amount of non-volatile, solid-state storage is needed.

• Compact Flash (CF) is a mass storage device format used in portable electronic devices. For storage, Compact Flash typically uses flash memory in a standardized enclosure.

• The format was first specified and produced by SanDisk in 1994.CEG436: Mobile Computing

Page 42: Characteristics of Mobile Computing

42

Execute-in-place (XIP)• XIP is a method of executing programs directly from

long term storage rather than copying it into RAM.• It is an extension of using shared memory to reduce the

total amount of memory required.• Mobile devices reduces memory use and speed up

program execution by using XIP

CEG436: Mobile Computing

Page 43: Characteristics of Mobile Computing

43

Multimedia Supports• Data that contains combination of text, digital still and

video images and audio information• Processing multimedia relies on low level binary

operations that are best handled by the operating system

CEG436: Mobile Computing

Page 44: Characteristics of Mobile Computing

44

Mobile Device Security• Network security

– Identification and authorization• password on power-up facility (how if forgotten??)

– vulnerability to interception of wireless exchanges• encryption (Kerberos network authentication, PGP)

– Authentication• finger and palm print ID, retina scan, facial bone structure

recognition, usage profiling (using neural networks to learn a user’s characteristic key presses or wand strokes)

• support for making devices less easy to lose and/oreasy to find– Bluetooth (electronic leash, unique identification, physical

location (GPS) and temporal awareness

CEG436: Mobile Computing

Page 45: Characteristics of Mobile Computing

45

What is mobility?

• Spectrum of mobility, from the network perspective [From Kurose and Ross]:

no mobility high mobility

mobile user, usingsame access point

mobile user, passing through multiple access points while maintaining ongoing connections (like cell phone)

mobile user, connecting/ disconnecting from network using DHCP.

CEG436: Mobile Computing

Page 46: Characteristics of Mobile Computing

46

Mobility Requirements

• Maintain connectivity while user roams• Allow IP to integrate transparently with roaming hosts

– Address translation to map location-independent addressing to location dependent addressing

– Packet forwarding– Location directory

• Provide connection to packet flow as opposed to datagram (connection oriented networks)

• Support multicast, anycast• Ability to switch interfaces on the fly to migrate between failure-prone

networks• What is QoS in this environment?

CEG436: Mobile Computing

Page 47: Characteristics of Mobile Computing

47

Constraints on Network Layer

• Unaware hosts running IP• Route management for mobile hosts needs to

be dynamic• A backbone may not exist (ad-hoc network)

CEG436: Mobile Computing

Page 48: Characteristics of Mobile Computing

48

Network Layer Solutions• Mobile IP and its variants

– Two-tier addressing (location independent addressing location dependent addressing)

– A smart forwarding agent which encapsulates packets from unaware host to forward them to mobile host

– Location directory for managing location updates• Connection-oriented mobility support

– Multicast– Finding the first branch point and rerouting packets

• Ad hoc routing– Shortest path, source routing, multipath routing

CEG436: Mobile Computing

Page 49: Characteristics of Mobile Computing

49

Impact of Mobility on Transport Layer

• Requirements:– Congestion control and rate adaptation– Handling different losses (mobility-induced

disconnection, channel, reroute)– Improve transient performance

• Constraints: – Typically unaware of mobility, yet is affected by

mobility– Link-layer and transport layer retransmit interactions

CEG436: Mobile Computing

Page 50: Characteristics of Mobile Computing

50

Transport Layer Solutions

• Provide indirection• Make transport layer at the end hosts aware

of mobility• Provide smarts in intermediate nodes (e.g. BS)

to make lower-layer transport aware• Provide error-free link layers

CEG436: Mobile Computing

Page 51: Characteristics of Mobile Computing

51

Impact of Mobility on OS

• Requirements:– Provide the same environment to the user whether mobile

(partially connected) or on the backbone network: same context, same programs, same databases, servers & services, retain the same ID

– Provide an abstraction of the environment for the mobile-aware application to adapt intelligently

• Constraints:– Scheduling limited CPU resources & limited energy– Limited disk, memory– Partial connectivity

CEG436: Mobile Computing

Page 52: Characteristics of Mobile Computing

52

Impact of Mobility on File Systems• Requirements:

– Access the same file, as if connected– Retain the same consistency-semantics for shared files, as if

connected– Availability and reliability, as if connected– ACID properties for transactions

• atomic/recoverability, consistent, isolated/serializable, durable

• Constraints:– Disconnection and/or partial connection– Low bandwidth connection– Variable bandwidth and latency connection– Connection cost

CEG436: Mobile Computing

Page 53: Characteristics of Mobile Computing

53

Disconnected File systems

• Hoarding: what to pre-fetch• TBD Consistency: what to keep consistent

when connectivity is partial• Emulation: how to operate when

disconnected• TBD Conflict resolution: how to resolve

conflicts• Many choices within each aspect

CEG436: Mobile Computing

Page 54: Characteristics of Mobile Computing

54

Impact of Mobility on Apps/Services

• How much to know about mobility (dynamic state)?

• How much to control the activity of OS?• How to structure the interaction btwn. App and

systems• How to write location-aware applications?• What kind of filtering, data retrieval, and control

support to be provided at the backbone?

CEG436: Mobile Computing

Page 55: Characteristics of Mobile Computing

55

Mobility: Vocabularyhome network: permanent “home” of mobile(e.g., 128.119.40/24)

Permanent address: address in home network, can always be used to reach mobilee.g., 128.119.40.186

home agent: entity that will perform mobility functions on behalf of mobile, when mobile is remote

wide area

network

correspondent

CEG436: Mobile Computing

Page 56: Characteristics of Mobile Computing

56

Mobility: more vocabulary

Care-of-address: address in visited network.(e.g., 79,129.13.2)

wide area

network

visited network: network in which mobile currently resides (e.g., 79.129.13/24)

Permanent address: remains constant (e.g., 128.119.40.186)

home agent: entity in visited network that performs mobility functions on behalf of mobile.

correspondent: wants to communicate with mobileCEG436: Mobile Computing

Page 57: Characteristics of Mobile Computing

57

Location Based Services/Applications

• A service whose rendering depends on the location of the service requester, service provider or both

• Mobile, networked Applications– Input: geo references from Assisted GPS system– Client/server interaction– Output: Location relevant Information

• Example: weather, tourist information, ..

Slides adapted from Shu Wang, Yang, SyNRG group, Helal CEG436: Mobile Computing

Page 58: Characteristics of Mobile Computing

58

Context

Pervasive wireless connectivity+

Localization technology=

Location-based applications (LBAs)

(iPhone AppStore: 3000 LBAs, Android: 600 LBAs)

CEG436: Mobile Computing

Page 59: Characteristics of Mobile Computing

59

Location Based Services

CEG436: Mobile Computing

Page 60: Characteristics of Mobile Computing

60

Location-Based Applications (LBAs)

• Examples:

Location-based recommendations, geo-tagging GeoLife: shopping list when near a grocery storeTrafficSense: real-time traffic conditions

• Location expresses context of user– Facilitates content delivery

CEG436: Mobile Computing

Page 61: Characteristics of Mobile Computing

61CEG436: Mobile Computing

Page 62: Characteristics of Mobile Computing

62

from http://2010.uplinq.com/pdf/TECH_Future_Trends_in_Multimedia.pdf

CEG436: Mobile Computing

Page 63: Characteristics of Mobile Computing

63

http://searchengineland.com/google-maps-for-android-54308

CEG436: Mobile Computing

Page 64: Characteristics of Mobile Computing

64CEG436: Mobile Computing

Page 65: Characteristics of Mobile Computing

65CEG436: Mobile Computing

Page 66: Characteristics of Mobile Computing

66CEG436: Mobile Computing

Page 67: Characteristics of Mobile Computing

67CEG436: Mobile Computing

Page 68: Characteristics of Mobile Computing

68CEG436: Mobile Computing

Page 69: Characteristics of Mobile Computing

1996 2000 2004 2008 2012

Key technologies & activities

FCC passed E-911mandate

Deadline phase 1 of E-911

Deadline phase 2 of E-911

First handsetSupporting Java Location API

Mass market penetration of GPS-capable mobiles

Launch of Galileo

Intro-duction of Android handset

First commercial WLAN fingerprinting systems

Emergence of RFID

First GPS capable iPhone

LBS features and supporting services

Introductionof 3G networks

Introduction of finder LBSs• Restaurants• Filling

stations• ATMs• …

Google launchesGoogleMaps

First Child tracking services

First location-based Mobile gaming

GPS worksindoors

Integration of location data into social network services

Location-based dating

First commercialProactive LBSs

Emergence of common middleware for proactive, cross-referencing, and multi-target LBSs

Application-oriented LBSs

New middleware features for spam avoidance and privacy preservation

Merging of outdoor and indoor LBS applications

LBS Evolution

CEG436: Mobile Computing 69

Page 70: Characteristics of Mobile Computing

user centrality

community orientation

operator-centricpositioning

self-referencingsingle-target

reactive

proactivity degreeproactive

device-centricpositioning

cross-referencingmulti-target

content-oriented application-oriented

LBS Evolution

CEG436: Mobile Computing 70