A Survey of Platforms for Mobile Network

Views:
 
     
 

Presentation Description

No description available.

Comments

Presentation Transcript

A Survey of Platforms for Mobile Networks Research : 

A Survey of Platforms for Mobile Networks Research Earl Oliver University of Waterloo Mobile Computing and Communications Review

Introduction : 

Introduction Smartphones are becoming a more prevalent technology in today’s society In 2007 Sales rose 60% 115 Million devices By 2010: Smartphone sales expected to surpass that of laptops

Introduction : 

Introduction Challenges of programming for a mobile platform Power constraints Low-power CPU’s Limited RAM / Limited persistent storage Slow I/O Other Characteristics to consider Inherently mobile Operate over wireless channels Always connected to the Internet and Cellular Network

Introduction : 

Introduction Analyze 5 major phone platforms Android (Linux-based) BlackBerry iPhone Symbian Windows Mobile Characteristics Security Openness Code portability Robustness

Requirements : 

Requirements Network Scanning Recognize what networks are in the area Characteristics of Network Wifi Cell towers Bluetooth Programmatic vs. User vs. System activation Interface Selection Choose interface Based on monetary / power costs / performance costs

Requirements : 

Requirements Bluetooth I/O Short range / Lower power consumption Ideal for device to device communication Interface control Programmatically adapt to power profile Background Processing Run applications in the background Important for data collection Energy monitoring Power saving control Low-level memory management <64 MB RAM in some deployments

Requirements : 

Requirements Persistent storage File I/O Deal with limited storage space on mobile device Location Sensing Location aware program Others How comprehensive is the API?

Android : 

Android One of several Linux-based platforms Maemo, Openmoko, Qtopia, LiMo Most widespread Features Programmatic scanning for Wifi Persistent Wifi connection Comprehensive memory and thread statistics Run-time memory tracing Location sensing

Android : 

Android Features, continued Power considerations Applications can query battery Manipulate power profile Background processing “Service” model Persistent storage Sharing of information between programs Will be maintained by ‘community’

Android : 

Android API not comprehensive enough No support for programmatic control of network interface connections Bluetooth not supported in initial release* Processes are shut down by the OS In times of low memory Bad for process critical to research

BlackBerry : 

BlackBerry Open platform Java programming / JRE Robust, reliable development platform Rich library Falls short of research needs No programmatic control Wifi scanning Cell towers Only get information about current connection

BlackBerry : 

BlackBerry Bluetooth support Needs device pairing Background processing Energy monitoring facilities More refined than those on Android Comprehensive API Querying Programmatically change state Scheduling tasks

BlackBerry : 

BlackBerry Memory management Apps can query level of Flash memory and RAM Can interact with memory management capacities of underlying virtual machine Memory intensive apps can receive warnings from VM Storage Persistent storage is enough for research needs MicroSD Can’t connect to external memory source

iPhone : 

iPhone Severely limited out of the box Applications are limited No initializing WiFi scan Can’t retrieve information on cell towers Can’t programmatically connect to interface Prohibition of bandwidth intensive applications No background applications

iPhone : 

iPhone Provides good persistent storage model SQLite database Location sensing

iPhone : 

iPhone Jail Breaking phone Install GNU / BSD subsystems Has capabilities of standard UNIX system Features unlocked Cell tower / WiFi scanning Networking through BSD sockets Still limitations No programmatic control of network interfaces No Bluetooth I/O

iPhone : 

iPhone Memory management Virtual memory with paging Low memory conditions are not critical Adverse effect on battery life Power management Aggressive model Background processes halted on screen off Must override for research purposes

iPhone : 

iPhone Final caveats Jail Breaking isn’t foolproof Probably will take several attempts May be restricted with future versions

Symbian : 

Symbian Popular 46.6% of global smartphone market Wide range of programming languages supported Symbian C++ Java PERL Python Can programmatically access information about WiFi, but not cell towers Little programmatic control over interfaces

Symbian : 

Symbian Other features Bluetooth Needs pairing Location sensing Embedded relational database Virtual memory system Power management Nokia Energy Profiler Monitors power usage Offers JRE Java “Mobile Information Device Profile” Portable, but not functional

Windows Mobile : 

Windows Mobile Satisfied all requirements Networking Scan for WiFi / Bluetooth / Cellular Establish connections Enable and disable interfaces Determine location Memory management Virtual memory However on devices with <64 MB Flash Bluetooth doesn’t require pairing Security issue

Windows Mobile : 

Windows Mobile Features, continued Standard file I/O Integral database engine Maintain persistent state in system registry Similar to windows registry Power management Apps allowed to register for changes to the battery status Apps notified when the power profile changes However, not all features of platform are implemented on every device Up to device manufacturers (OEMs) Adaptation Kit for Windows Mobile

Conclusion : 

Conclusion There is no ‘right’ platform for research Each platform has its strengths and weaknesses Android Rich (and growing) set of API’s No Bluetooth BlackBerry Most robust Easy development Stable Lacks features Iphone Needs to be Jailbroken No developers tools

Conclusion : 

Conclusion Symbian Nice developers tools Very difficult to design / program for Windows Mobile Supports all the required features, but not on all phones Choose a platform based on individual / project needs