USENIX Association Proceedings of the 5th Symposium on Operating Systems Design and Implementation Boston, Massachusetts, USA December 9–11, 2002 THE ADVANCED COMPUTING SYSTEMS ASSOCIATION © 2002 by The USENIX Association All Rights Reserved For more information about the USENIX Association: Phone: 1 510 528 8649 FAX: 1 510 548 5738 Email:
[email protected] WWW: http://www.usenix.org Rights to individual papers remain with the author or the author's employer. Permission is granted for noncommercial reproduction of the work for educational or research purposes. This copyright notice must be included in the reproduced paper. USENIX acknowledges all trademarks herein. Optimizing the Migration of Virtual Computers Constantine P. Sapuntzakis Ramesh Chandra Ben Pfaff Jim Chow Monica S. Lam Mendel Rosenblum Computer Science Department Stanford University g fcsapuntz, rameshch, blp, jimchow, lam, mendel @stanford.edu “Beam the computer up, Scotty!” Abstract 1 Introduction This paper shows how to quickly move the state of a run- Today’s computing environments are hard to maintain ning computer across a network, including the state in its and hard to move between machines. These environ- disks, memory, CPU registers, and I/O devices. We call ments encompass much state, including an operating sys- this state a capsule. Capsule state is hardware state, so it tem, installed software applications, a user’s individual includes the entire operating system as well as applica- data and profile, and, if the user is logged in, a set of pro- tions and running processes. cesses. Most of this state is deeply coupled to the com- We have chosen to move x86 computer states because puter hardware.