Process migration is the act of transferring a process between two machines
, It enables dynamic load distribution, fault resilience, eased system admi
nistration, and data access locality. Despite these goals and ongoing resea
rch efforts, migration has not achieved widespread use. With the increasing
deployment of distributed systems in general, and distributed operating sy
stems in particular, process migration is again receiving more attention in
both research and product development. As high-performance facilities shif
t from supercomputers to networks of workstations, and with the ever-increa
sing role of the World Wide Web, we expect migration to play a more importa
nt role and eventually to be widely adopted.
This survey reviews the field of process migration by summarizing the key c
oncepts and giving an overview of the most important implementations. Desig
n and implementation issues of process migration are analyzed in general, a
nd then revisited for each of the case studies described: MOSIX, Sprite, Ma
ch, and Load Sharing Facility. The benefits and drawbacks of process migrat
ion depend on the details of implementation and, therefore, this paper focu
ses on practical matters. This survey will help in understanding the potent
ials of process migration and why it has not caught on.