written 7.0 years ago by | • modified 6.0 years ago |
Mumbai University > Information Technology > Sem 6 > Distributed System
Marks: 10Marks
written 7.0 years ago by | • modified 6.0 years ago |
Mumbai University > Information Technology > Sem 6 > Distributed System
Marks: 10Marks
written 7.0 years ago by |
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.
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
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.