0% found this document useful (0 votes)
13 views76 pages

MC Unit5

The document discusses mobile platforms and applications, focusing on mobile operating systems, their structure, and development kits such as iOS and Android. It outlines different OS designs, including monolithic and microkernel architectures, and provides an overview of various mobile operating systems like Windows Mobile, Palm OS, and Android, highlighting their features and development frameworks. Additionally, it emphasizes the importance of compliance with open standards and extensive library support for third-party application development.

Uploaded by

keerthanacse
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views76 pages

MC Unit5

The document discusses mobile platforms and applications, focusing on mobile operating systems, their structure, and development kits such as iOS and Android. It outlines different OS designs, including monolithic and microkernel architectures, and provides an overview of various mobile operating systems like Windows Mobile, Palm OS, and Android, highlighting their features and development frameworks. Additionally, it emphasizes the importance of compliance with open standards and extensive library support for third-party application development.

Uploaded by

keerthanacse
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 76

Unit 5

MOBILE PLATFORMS AND


APPLICATIONS
Topic
 Mobile Device Operating Systems
 Special Constrains & Requirements
 Commercial Mobile Operating Systems
 Software Development Kit: iOS, Android.
Operating System
 The operating system is usually structured into a kernel layer and a shell
layer.

 The shell essentially provides facilities for user interaction with the kernel
 Not Memory resident

 The kernel executes in the supervisor mode and can run privileged
instructions that could not be run in the user mode.
 Kernel
◦ Memory resident part of an operating system
◦ Responsible
 Interrupt Servicing
 Management of processes, memory and files
◦ During booting
 Kernel gets loaded first
 Remain in the device’s main memory
 Paging does not apply to kernel code and data
Monolithic Kernel OS design

 Kernel contains the entire OS operations except shell code


 Motivation
◦ OS services can run more securely and efficiently in supervisor
mode
 Example
◦ Windows
◦ Unix
 Advantage
◦ Provides good performance
◦ Always runs in supervisor mode
◦ More efficient and secure
Disadvantage
The main problem with the monolithic kernel design is that it
makes the kernel massive, non-modular, hard to tailor, maintain,
extend. and configure
Microkernel OS design

 Also called modular kernel


 Minimize size of kernel code
 Only the basic hardware dependent
functionalities and a few critical
functionalities in the kernel mode and all
other functionalities are in the user mode.
 Contains only the OS core
 Other OS operations are provided as user

mode services
 The main advantage of this approach is that it
becomes easier to port, extend, and maintain the
operating system code.
 Unlike the user-level code, the kernel code is very
difficult to debug.
 An important reason for this is that since a bug
in a kernel code can crash the operating system.
 Support for specific communication protocols
◦ Requires enhanced communication support during
 Connection between Mobile devices to
 Base Station
 Peripheral Devices
 Computers
 Other Mobile devices
◦ Types of Interfacing Protocols
 Depends upon on the generation of the communication technology
 Make mobile to be used across the existing technology spectrum
 TCP/IP and Wireless LAN Protocols
 Communication with Other devices and Computers
 Infrared / Bluetooth Connections
 Web Browsing
 Communication with other personal devices
 Pen Drives
 Headphones
 Support for a variety of input mechanisms
◦ Strongly influence the
 Intended primary use of a device
 Specific customer segment for which it is positioned
 Challenges the user interaction part and internal design of OS

◦ Types of user input mechanism


 Miniature Keyboard
 QUERTY Keyboard
 Touchscreen
 Stylus-based input mechanism with handwriting recognition
 Compliance with open standards
◦ OS adhere to open standards to facilitate
 Development of third-party innovative software
development
 Reduce the cost of
 Development
 time-to-market by the manufacturers
 Designing the user interface and networking
capabilities of Mobile OS
 Extensive library support
◦ Required by the cost-effective third party application
development
◦ Includes
 Availability of programmer callable primitives for
 Email
 SMS
 MMS
 Bluetooth
 Multimedia
 User interface primitives
 GSM/GPRS functionalities
Mobile OS
 Facilitate third party development of application software

 Allow manufacturers of different brands of mobile devices

to build their choice set of functionalities for the users

 Example
◦ Windows Mobile
◦ Palm OS
◦ Symbian OS
◦ iOS
◦ Android
◦ Blackberry
WINDOWS MOBILE OS

 Mobile operating systems developed by Microsoft


Corporation for smartphones and Pocket PCs

 Considering the large number of embedded devices,


Microsoft Corporation developed an operating system in
the year 1996 targeted specifically at these devices.

Evolution of Microsoft’s Windows Mobile OS


 Windows CE

 The main feature of Windows CE operating system


Support for deterministic scheduling of time-constrained
tasks
 Pocket PC 2000
Based on Windows CE the company designed the Pocket PC 2000
operating system in the year 2000
Targeted for PDAs and not mobile phones

 Windows Mobile operating


Company designed the Windows Mobile operating in the year 2003

 It was developed based on Pocket PC 2000 and was targeted


specifically as an operating system for mobile phones which the
different cell phone vendors can use in their cell phones.

 Microsoft defined a hardware specification for hand-held computers that


can run its Windows Mobile operating system

 Microsoft later renamed its Pocket PC operating system to Windows


Mobile Classic
 Windows Mobile 2003
◦ Support touch screen-based user interface
◦ Do not support any phone capability
◦ Not targeted for cell phones, but for PDAs

Windows Mobile
 Versions

◦ Three main versions of Windows Mobile for various hardware devices:


 Windows Mobile Professional
 Runs on smartphones with touchscreens
 Windows Mobile Standard
 Runs on mobile phones without touchscreens
 Windows Mobile Classic
 Runs on personal digital assistant or Pocket PCs
Features
 Graphics / Window / Event Manager (GWE) component
handles all input and output
 Provides
◦ Virtual Memory Management
 Does not provide true Multitasking
◦ Background application goes into hibernate state
◦ Foreground application only goes into active state
 Support Security
 Similar application development in Win32 environment
 Supports virtual private networking over PPTP protocol
Palm OS
 Also known as Garnet OS
 Mobile operating system initially developed by Palm Inc.,
for personal digital assistants (PDAs) in 1996
 Developed for PDA called Palm Pilot
 Designed with the provision of touchscreen-based graphical
user interface
 Upgraded to install the following devices
◦ Smartphones of different makes
◦ Wrist Watches
◦ Hand-held gaming consoles
◦ Bar Code readers
◦ GPS devices
Key features

 Essentially a simple single-tasking operating system


◦ Only one application can run at a time
◦ Example
 If the voice communication is on,
 The calculator cannot be used
 An SMS cannot be read
 Has an elementary memory management system
◦ To keep the operating system small and fast,
 Plam OS does not isolate the memory areas of application
from each other
◦ Misbehaving application can crash the system.
 Plam supplies Plam emulator,
◦ Emulates the Plam hardware on a PC
◦ Allows Plam programs to be developed and debugged on a PC
before being run on the Plam hardware
 It supports a handwriting recognition-based system for user
input.
 It supports a facility called HotSync technology for data
synchronization with desktop computers.
 It supports sound playback and recording capabilities.
 Different interfaces supported include
– Serial port/USB
– Infrared
– Bluetooth
– Wi-Fi connections
 Uses a proprietary format to store calendar, address, task
and note entries and accessible by third- party applications.
Series 60:
 The relatively large sized colour screen, easy-to-use interface and

an extensive suite of applications make it well-suited to support


advanced features such as rich content downloading and MMS
(Multimedia Messaging Service).

UIQ interface:
 UIQ (earlier known as User Interface Quartz) is a software package

developed by UIQ Technology for Symbian OS.

 This is a graphical user interface layer that provides capabilities


for third-party application developers to develop applications and
effortlessly create user interfaces.
Symbian OS structure
Features
Architecture
features of BlackBerry OS
  touchscreen
  Multitasking
  BlackBerry Hub
  Third-party applications
  Released Devices Canceled devices
advantages and disadvantages
of BlackBerry OS
 Pros
 Excellent Connectivity (Messengers viz BBM, yahoo,
gtalk, whatsapp work seamlessly)
 Amazing email client (can also sync with your
enterprise server)
 Most user friendly qwerty keyboard (easy typing)
 Very fast and snappy
 Cons
 Battery life not great in some models Camera quality
 not great Application support is bad
 Almost all models have similar utility and features.
(Minor change in visuals cz of the new OS)
Android SDK (Software
Development Kit)
 It is a mobile application development framework using
which developers can create applications for the Android
platform.

 The Android SDK provides the tools and libraries necessary


to develop applications that can run on Android-based
devices.

 An important advantage of Android


 SDK the low processor and RAM requirements

 Android SDK can be installed on almost all popular

operating systems such as Windows, Mac OS, and Linux


 The SDK comes with an Integrated Development Environment
(IDE) that has a set of seamlessly integrated tools such as code
editor, compiler, debugger, execution support, and other tools are
required to develop applications

 Android SDK converts Java byte code to Android's Dalvik VM


bytecode

 The android based applications, the developer codes the


applications using Java.
 The environment to develop applications for Android
consists of the
◦ Android SDK
◦ IDE Eclipse
◦ Java Development Kit (JDK).

 After installing the SDK, which is done by simply


extracting the downloaded ZIP file in a folder, the
path to the SDK has to be set in the path
environment variable.

 Eclipse can be used as the IDE, which also


automatically installs the Android SDK as a plug-in
Features of SDK
 Using the SDK, one can either run the application on the actual Android
device or a software emulator on the host machine. This is achieved by
using the Android Debug Bridge (ADB) available with the SDK.

 ADB is a client-server program and includes three main components:

 A client program which runs on the developer’s (called host) machine.


One can invoke a client from a shell by issuing an adb command.

 A daemon program which runs as a background process on each


emulator or device instance. It is the part that actually manages the
communication with the handset or the emulator and helps in executing
the application.

 A server program which runs as a background process on the host


machine. The server manages communication between the client and an
adb daemon that runs on the emulator or the Android handset.
 Android Application Components - Application components are the
essential building blocks of an Android application.

 The following are the four components of an Android application


Activity

Content providers

Service

Broadcast receivers
Features of SDK
 Activity: Each activity presents a GUI screen of an application. For
example, a chat application might have one activity that allows to create a
chat, another to view the previous chat sessions, etc. Different activities
form a cohesive chat application

 Content providers: Content providers are used for reading and


writing data that are either private to an application or shared across
applications. By using the content provider, an application can query or
modify the stored data.

 Service: A service denotes a background task and not for


interacting through a user interface. For example, a service might
play music in the background while the user is interacting with a different
application.

 Broadcast receivers: The broadcast receiver responds to broadcast


announcements by an application. For example, a battery monitoring
application might broadcast that the battery is low. Based on this, the
music player might reduce the volume or the screen display may be
dimmed
Advantages of Android
 The mobile platform Android is an open platform and can be
ported on almost every type of cell phone.

 The Android SDK to develop applications is possible on every


operating system.

 Android requires a low footprint of 250 KB.

 The emulator of the Android platform has a modern design and is


easy to use.

 Application installation on the emulator/device is possible via


Android Debug Bridge (ADB) or via Eclipse
 Google offers a very good documentation as well as many
examples which cover the most basic and important techniques
used to get in touch with Android and the application development
on it.

 Android supports robust libraries for media access,


communication and data transfer Android offers a real database
SQLite using which meaningful data manipulation and data
Sharing across applications is possible.

 Android has an integrated web browser which gives an


experience similar to web browsing using a desktop PC.

 Android uses the standardized and open programming language


Java.

You might also like