0% found this document useful (0 votes)
7 views3 pages

Code Migration

Code migration is primarily driven by performance improvements, flexibility, and the ability to exploit parallelism in distributed systems. It involves moving programs between machines, with weak mobility starting from an initial state and strong mobility allowing processes to resume execution after migration. Different approaches include sender-initiated migration and cloning, where the latter creates an exact copy of the process on a different machine.

Uploaded by

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

Code Migration

Code migration is primarily driven by performance improvements, flexibility, and the ability to exploit parallelism in distributed systems. It involves moving programs between machines, with weak mobility starting from an initial state and strong mobility allowing processes to resume execution after migration. Different approaches include sender-initiated migration and cloning, where the latter creates an exact copy of the process on a different machine.

Uploaded by

swayamkothekar09
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Subject: DC Semester:VIII

What are the reasons for migration of code? Explain the


various models for code migration.
Reasons for migrating code

Code migration in DS took place in form of process migration even though it’s costly
but reason is for performance.

From heavily loaded to lightly loaded performance

Due to heterogeneity of platforms and compression network performance


improvement through code migration is often based on quantitative reasoning.

Eg. Server manages huge database.

Code migration also helps improve performance by exploiting parallelism.

Eg. For searching information in web. It’s easy to implement search query program
that moves from site to site.

Other reasons for supporting code migration is flexibility.

Traditional approach to building dist. Application is to partition application into


different parts and decided where each part to be executed but if code migration
between machines, it is possible to dynamically configure distributed system.

Explain different approaches to code migration.

1. Communication in distributed systems is concerned with exchanging data


between processes.
2. Code migration in the broadest sense deals with moving programs between
machines, with the intention to have those programs be executed at the
target.

Prof.S.S. Aloni [Link] Computer Engineering


Subject: DC Semester:VIII

In code migration framework, a process consists of 3 segments.

The code segment is the part that contains the set of instructions that make up the
program that is being executed.

The resource segment contains references to external resources needed by the


process, such as files, printers, devices, other processes and so on.

Finally an execution segment is used to store the current execution state of a


process, consisting of private data, the stack and the program counter.

Weak mobility:

A characteristics feature of weak mobility is that a transferred program is always


started from its initial state.

Eg. Java applets

Strong mobility

A characteristics feature of strong mobility is that a running process can be stopped,


subsequently moved to another m/c and then resume execution where it left off.

Eg. D’ Agents.

Sender initiated migration

Prof.S.S. Aloni [Link] Computer Engineering


Subject: DC Semester:VIII

In sender initiated migration, migration is initiated at the m/c where code currently
resides or is being executed.

Eg. Sending a search program access the internet to a web database server to
perform the queries at that server.

In contrast to process migration, cloning yields an exact copy of files original


process, but now running on a different m/c.

The cloned process is executed in parallel to the original process.

In UNIX systems, remote cloning takes place by forking off a child processes and
letting that child continue on a remote m/c.

The benefit of cloning is that the model closely reassembles the one that is already
used in many applications.

The only difference is that the closed process is executed on a different m/c.

In this sense, migration by cloning is a simple way to improve distributed


transparency.

Prof.S.S. Aloni [Link] Computer Engineering

You might also like