0% found this document useful (0 votes)
7 views

Ch2 Mobile Computing Update

Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Ch2 Mobile Computing Update

Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 16

Chapter 2

Mobile Adaptive Computing


 What Is Mobile Computing?
 Adaptability—The Key to Mobile Computing
 Transparency
 Constraints of mobile computing environments
 Application-aware adaptation
 Mechanisms for Adaptation
 Adapting functionality
 Adapting data
 How to Develop or Incorporate Adaptations in Applications?
 Where can adaptations be performed?
 Support for Building Adaptive Mobile Applications
 Odyssey
 Rover
 Summary
 Mobile computing is about providing information anytime
anywhere or, more generally, computing anytime and
anywhere.

 The vision of mobile computing is to be able to roam


seamlessly with your computing devices while continuing to
perform computing and communication tasks uninterrupted.
 Wireless Communication

 Mobility

 Portability
 Wireless Communication
 Disconnection

 Low Bandwidth

 High Bandwidth Variability

 Heterogeneous Network

 Security Risks
 Mobility
 Address Migration
 Location-dependent Information
 Portability
 Low battery power
 Low CPU power
 Low memory
 Small screen size
 Risks to Data
 Many scenarios have already been discussed, calling for adaptation
 to deal with inherent technological limitations of mobile
technology to retain the usefulness of application under varying
circumstances, e.g.,
• Resource variation ( bandwidth, battery power)
• Small screen size
• Network configuration ( moving from one network coverage area to another)
 to make physical spaces smart, with the support of other required
technology, such as smart home
 Smart home adapts itself to improve comfort, safety, security and resource use to its
occupants.
 to enrich user experience of the mobile user.
 In essence, the system has to adapt to the changes in the
environment, such as the network configuration and the availability
of communication and computation resources and services.
 Who should be responsible for adaptation?
• the application,
• the system,
• Or both?

 Application-transparent
• the system is fully responsible for adaptation
 Laissez-faire
• the system provides no support at all.

• the laissez-faire approach is not desirable because it puts too


much burden on the application developer.

• Further, no support from the underlying system restricts the types


of adaptations that can be performed.
 Application-aware Adaptation
• Unlike other two approaches, the application collaborates with the
underlying system software.

• Here the system provides status information about the available


resources.

• The application uses this information to make decisions on how to


adapt to changes in the resource availability.

• Each application can adapt in its own way.


 Initialize resources (e.g., CPU, Memory, Network, Battery)
 Set thresholds for resource limits (e.g., low, medium, high)
 // System monitors resources While Application is running:

 Monitor system resources (e.g., CPU, Memory, Network,


Battery)
 Send status information to the application If resources drop
below the threshold:
 Notify the application about resource constraints
//Application decides how to adapt Application receives
resource status:

If CPU is low:


◦ Reduce computational load (e.g., downgrade quality, pause heavy tasks)
If memory is low:
◦ Free unused memory, reduce caching
If network bandwidth is low:
◦ Reduce data transfer rate, use offline mode
 If battery is low:
◦ Enter power-saving mode, reduce screen brightness
 What can be adapted?
 functionality of various components in the mobile application and
 the data that are delivered to the application
can be adapted

 Adapting functionality
 Adapting data
 Adapting functionality
 Changing dynamically the functionality of the computational entities involved in
response to the change in the operating conditions.

 Extended Client Server model - for the sake of improved performance and
availability, the boundary between the clients and servers may have to be
adjusted dynamically.
 In order to cope with the resource limitations of clients, certain operations that normally
are performed at the client may have to be performed by resource-rich servers.
 Conversely, the need to cope with uncertain connectivity requires the clients
sometimes to emulate the functions of the servers.
 Adapting data
 Another way to adapt to resource availability is by varying the quality of data
(fidelity) that is made available to the application running on the mobile client.

 The basic idea behind data adaptation is as follows:


 when resources are plentiful, the mobile client directly accesses and manipulates the
reference copy.
 However, whenever resources are scarce, the mobile client may choose to access or
manipulate a data item of lower fidelity, and consequently, consuming fewer resources.

You might also like