Process migration

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In computing, process migration is a specialized form of process management whereby processes are moved from one computing environment to another. The most common application of process migration is in computer clusters where processes are moved from machine to machine. Process migration is implemented in, among others, OpenMosix. It was pioneered by the Sprite OS from the University of California, Berkeley.

Process migration in computing comes in two flavors:[1]

Non-preemptive process migration
Process migration that takes place before execution of the process starts (i.e. migration whereby a process need not be preempted). This type of process migration is relatively cheap, since relatively little administrative overhead is involved.
Preemptive process migration
Process migration whereby a process is preempted, migrated and continues processing in a different execution environment. This type of process migration is relatively expensive, since it involves recording, migration and recreation of the process state as well as the reconstructing of any inter-process communication channels to which the migrating process is connected.

An alternate definition of process migration is used in integrated circuit design and engineering. Process migration or layout migration in this context is a design flow to change and shrink an existing IC layout to a new process technology node. The implementation of a process migration could be done manually by redrawing the layout feature by feature or by automatic EDA/CAD tools. In load sharing systems, a process is migrated from one node to another using a mechanism called process migration.


  1. ^ "Process Management and Process Migration". India Study Channel. Retrieved 28 July 2012.