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

Setty Rajeshwar Rao:19MCS0054: Name

This document discusses task scheduling and computation offloading for mobile applications. It presents Jade, a system that adds energy-aware computation offloading to Android apps. Jade monitors device/app status and decides where code should execute to minimize energy usage. It can reduce power consumption by up to 35% while improving performance. The document also discusses using cloud computing to enhance mobile device capabilities by offloading tasks.

Uploaded by

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

Setty Rajeshwar Rao:19MCS0054: Name

This document discusses task scheduling and computation offloading for mobile applications. It presents Jade, a system that adds energy-aware computation offloading to Android apps. Jade monitors device/app status and decides where code should execute to minimize energy usage. It can reduce power consumption by up to 35% while improving performance. The document also discusses using cloud computing to enhance mobile device capabilities by offloading tasks.

Uploaded by

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

Digital Assignment:1

NAME:SETTY RAJESHWAR RAO


REG:19MCS0054

TASK Scheduling:

The need for increased performance of mobile device directly conflicts with the desire for
longer battery life. Offloading computation to resourceful servers is an effective method to
reduce energy consumption and enhance performance for mobile applications.
Today, most mobile devices have fast wireless link such as 4G and Wi-Fi, making cloud
platform a good destination for computation offloading.
Android provides mechanisms for creating mobile applications but lacks a native
scheduling system for determining where code should be executed.
This paper presents Jade, a system that adds sophisticated energy-aware computation
offloading capabilities to Android applications.
Jade monitors device and application status and automatically decides where code should
be executed.
Jade dynamically adjusts offloading strategy by adapting to workload variation,
communication costs, and device status.
Jade minimizes the burden on developers to build applications with computation offloading
ability by providing easy-to-use Jade API. Evaluation shows that Jade can effectively
reduce up to 35% of average power consumption for mobile device while improving
application performance.

Cloud computing can enhance the computing capability of mobile systems by offloading.
However,
the communication between the mobile device and the cloud is not free. Transmitting
large data to cloud consumes much more energy than processing data in mobile device,
especially in a low bandwidth condition.
Further, some processing tasks can avoid transmitting large data between mobile device
and server.
Those processing tasks (encoding, rendering) are as the compress algorithm, which can
reduce the size of raw data before it is sent to server. In this paper, we present an energy
efficient task scheduling strategy (EETS) to determine what kind of task with certain
amount of data should be chosen to be offloaded under different environment.
We have evaluated the scheduler by using an Android smart phone.
The results show that our strategy can achieve 99% of accuracy to choose the right action
in order to minimize the system energy usage.

With a rapid development of embedded systems, high speed wireless networks and could
computing, mobile devices (e.g., smart phone, tablets, wearable devices, etc.) are
increasingly becoming a common stuff of human daily life.
We use mobile devices to do many of our jobs that we used to do on desktop.

Mobile cloud computing technique allows those ideas to become a reality.

Nonetheless, the more mobile devices we have, the less happiness we are with the battery
lifetime.

This is because we are still using the traditional power supplying method and materials.
Computing offloading technique is proposed with the objective to migrate the complex
computation works from resource-limited devices to powerful machines.

Simple task does not take too much time to execute, so it does not need offloading [7].
Complex applications will consume more energy than the simple one.

So in this section we will classify the applications with complex computation task. With the
off loading’s help,

we can put the rendering work on cloud, as shown in After the rendering result is ready,
the data will be sent back to mobile device.

The energy spent on computation part will be saved with an extra cost of data
communication. Sometimes, it is not worth to offload rendering work from mobile client to
server when the data size is big and the network bandwidth is slow.

The mobile device will keep communication with cloud servers for a long time. For some
compression like applications, we would better to do compress work on mobile device than
to do it on the cloud servers. The data size can be reduced after it is processed.

It is a big advantage to do offloading in cloud environment, if a task has to download a


large number of data from remote servers.

In the previous studies, researchers focus on determining whether to offload computation


by predicting the relationships among the three factors: network bandwidth B, the amount
of processing instructions I and the amount of data to be transmitted D. However, there is a
fundamental assumption underling this analysis: the server does not already contain the
input data and all the data must be sent to the server to do offloading.

The mobile client has to offload the program code and data to the server. Now, cloud
computing changes this assumption.

Many mobile devices have cloud storage service. Offloading can use the data stored in the
cloud.

This will significantly reduce the energy consumption on data transmission. The execution
workflow is shown in.
The input file of an application could come from local files or remote storage service. The
execution code is only on mobile device. Then, we can choose to offload computation task to
virtual machine or run locally in mobile device. How to store the output result data of the
application is depended by user settings.

Execution work flow of a mobile application

The detail of each possible work flow is listed in


The computing code is only stored in local mobile device. Compare with offloading and
non-o offloading mechanism, the main difference is processing code in cloud or in mobile
device.

Cloud Storage

. Execution workflow of a mobile application


/RFDO
ILOHV
Processing

(&²

Cloud VMs
MIDDLE WARE:

Mobile middleware is software that connects disparate mobile applications, programs and


systems. 
Mobile middleware essentially hides the complexities of working in mobile environments,
allowing for smoother device-to-device interaction, mobile-computing integration
and mobile application development.
 Like other kinds of middleware, mobile middleware typically provides messaging services
to enable communication between different applications.

In both native and HTML 5 mobile development strategies, mobile middleware serves


to connect devices to native hardware. It also enables enterprise architects and
developers to reuse the same back-end logic for multiple mobile devices without
having to rewrite back ends to work with each separate device.

The role of mobile middleware has become increasingly important as diverse platforms and
devices have entered the mobile space.
As a result, many mobile middleware vendors offer development services to deal with a
fast-growing mobile hardware and software market.

Most enterprise applications need to communicate with back-end systems -- such as


directory services, file servers, databases or storage services -- to access the data and
services they need to conduct business.

Mobile apps are no different, but they also come with additional unique challenges

For example, because mobile apps run on devices with less processing power and memory than a
typical desktop, IT may need to offload more of the processing to back-end servers.

IT often updates mobile app front ends more frequently than back-end systems or the APIs that
facilitate communication, which can complicate connectivity -- especially if app updates are not
concurrent across all the devices.

A mobile app must also be able to work across different connection types, including 4G
networks, public Wi-Fi and corporate networks, which can change as end users change
locations. These changing networks can also lead to intermittent connectivity, which makes
it necessary for apps to have offline connectivity.

Middleware platforms to the rescue:

Many developers customize their apps to support connectivity to different resources, which
can be a long process.
Middleware platforms can help enable and simplify connectivity between mobile apps
and back-end systems no matter the type of system or its location. Middleware sits
between the back-end resources and mobile apps, abstracting the complexities that
come with connecting to resources. Middleware also uses standards-based
technologies such as Simple Object Access Protocol and REST.
With middleware platforms, developers have a single gateway to back-end systems, which
makes it easier for them to connect their mobile apps to corporate resources.
They don't need to customize each version of an app to accommodate the requirements of
the individual systems.
IT admins can modify those systems without breaking all the applications; they only need
to update the middleware.
But middleware does more than just manage connectivity.
A comprehensive platform also handles issues such as scaling, load balancing, concurrent
processing and transaction management.
In addition, the platform ensures that the connections and back-end systems are protected
and secure, incorporating authentication, encryption and other protection technologies as
necessary.
Some middleware platforms also make it possible to implement custom logic that carries
out specific operations based on app requests, such as tailoring data to specific locations.
If an organization is deploying a few mobile apps and connectivity to the back-end
resources is simple and straightforward, middleware might be overkill.
But a more complex operation may require significant effort to implement all the
capabilities that middleware provides

Middleware services are available as software products that IT can install on


premises or through cloud services, such as integration platform as a service or
middleware as a service.
An IT team considering a middleware platform should take into account the apps
they're running, when and how those apps are used, and the types of back-end
systems that support those apps.
Mobile apps require flexibility, and cloud-based middleware is typically a good fit for
that. Cloud services are also easier to implement and maintain.

On the other hand, an organization might need a middleware platform that also
supports more traditional types of apps and services.

In that case, an on-premises platform might be a better fit.

 The mobile environment imposes critical requirements such as accessibility, reach ability,
adaptability, trustworthiness, and universality.

To comply with such requirements, industries came up with what are now known as
middleware platforms, including Java ME, Symbian, .NET, Android and the I Phone.

Mobile middleware compensates for device disparities by rendering


standard application screens in device-specific ways, interacts with client business
logic in the handheld device, ensures security  and aids in application deployment. A
mobile middleware vendor also can help you mobilize a workforce automation
system by offering time-saving guidance and software tools. The tools help you
build, deploy, run, troubleshoot and maintain mobile applications. The guidance
helps you adopt mobile best practices and avoid the pitfalls that early pioneers
encountered.

You might also like