Skip to Main Content
This paper reports our experiences on the scalable network of workstation (SNOW) project, which implements a novel methodology to support user-level process migration for traditional stack-based languages such as C and Fortran in heterogeneous distributed environments. Our methodology addresses the three outstanding problems of transferring execution state, memory state, and communication state. The concepts of migration point analysis and buffered data transfer mechanism are proposed for execution state migration. A memory space representation model is introduced to obtain the machine-independent format of the underlying data structures for memory state migration. Finally, process migration and communication protocols are developed to migrate the communication state and maintain the functionality and correctness of data communication. A coordinated software system consisting of compilation and runtime systems was developed based on these new mechanisms. The runtime systems include a runtime library and communication protocols. Sequential and parallel programs with different data structures and computing requirements are tested. Experimental results confirm our design analysis. They advocate the value of the migration methodology for distributed network computing.