Process migration: a generalized approach using a virtualizing operating system

T. Boyd1, P. Dasgupta1
1Department of Computer Science and Engineering, Arizona State University, Tempe, AZ, USA

Tóm tắt

Process migration has been used to perform specialized tasks, such as load sharing and checkpoint/restarting long running applications. Implementation typically consists of modifications to existing applications and the creation of specialized support systems, which limit the applicability of the methodology. Off the shelf applications have not benefited from process migration technologies, mainly due to the lack of an effective generalized methodology and facility. The benefits of process migration include mobility, checkpointing, relocation, scheduling and on the fly maintenance. This paper shows how regular shrink-wrapped applications can be migrated. The approach to migration is to virtualize the application by injecting functionality into running applications and operating systems. Using this scheme, we separate the physical resource bindings of the application and replace it with virtual bindings. This technique is referred to as virtualization. We have developed a virtualizing operating system (vOS), residing on top of Windows 2000 that injects stock applications with the virtualizing software. It coordinates activities across multiple platforms providing new functionality to the existing applications. The vOS makes it possible to build communities of systems that cooperate to run applications and share resources non-intrusively while retaining application binary compatibility.

Từ khóa

#Operating systems #Application software #Application virtualization #Libraries #Distributed computing #Computer science #Checkpointing #Kernel #Concurrent computing #Communities

Tài liệu tham khảo

boyd, 2001, Virtualizing Operating Systems for Distributed Services on Networked Workstations balzer, 1994, Mediating Connectors, Proceedings of the 19th IEEE International Conference on Distributed Computing Systems Workshop hunt, 1999, Detours: Binary Interception of Win32 Functions, Proceedings of the 3rd USENIX Windows NT Symposium 10.1109/2.774919 yennun, 1998, NT-SwiFT: Software Implemented Fault Tolerance for Windows NT, 2nd Usenix Windows NT Symposium srouji, 1998, A Transparent Checkpoint Facility on NT, Proceedings of the 2nd USENIX Windows NT Symposium richter, 1999, Applications for Windows boyd, 2000, Injecting Distributed Capabilities into Legacy Applications Through Cloning and VirtualiZation, the 2000 International Conference on Parallel and Distributed Processing Techniques and Applications, 3, 1431 hebbalalu, 1999, File Input/Output and Graphical Input/Output Handling for Nomadic Process on Windows NT nasika, 2000, Transparent Migration of Distributed Communicating Processes, appear in the 13th International Conference on Parallel and Distributed Computing Systems 2001, MSDN Library, Microsoft Corporation 2001 zhang, 2001, Process Migration through Virtualization in a Computing Community, 13th IASTED International Conference on Parallel and Distributed Computing Systems boyd, 2000, Virtualizing Operating Systems for Seamless Distributed Environments, Proceedings of the IASTED International Conference on Parallel and Distributed Computing and Systems, 2, 735 dasgupta, 1999, Transparent Distribution Middleware for General Purpose Computations, International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA'99) mani, 1985, Distributed Snap-shots Determining Global States of Distributed Systems ACM Transactions on Computing Systems, 3, 63