0
29kviews
What are the reasons for migration of code? Explain the various models for code migration.
1 Answer
3
653views

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.

  • Communication in distributed systems is concerned with exchanging data between processes.

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

  • 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.

enter image description here

  1. 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.

enter image description here

1) Weak mobility:

A characteristics feature of weak mobility is that a transferred program is always started from its initial state.

Eg. Java applets

2) 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.

3) Sender initiated migration

  • 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.

Please log in to add an answer.