|
ABSTRACT
VMware ESX Server is a thin software layer designed to multiplex hardware resources efficiently among virtual machines running unmodified commodity operating systems. This paper introduces several novel ESX Server mechanisms and policies for managing memory. A ballooning technique reclaims the pages considered least valuable by the operating system running in a virtual machine. An idle memory tax achieves efficient memory utilization while maintaining performance isolation guarantees. Content-based page sharing and hot I/O page remapping exploit transparent page remapping to eliminate redundancy and reduce copying overheads. These techniques are combined to efficiently support virtual machine workloads that overcommit memory.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
 |
2
|
|
 |
3
|
|
| |
4
|
Pei Cao, Edward W. Felten, and Kai Li. "Implementation and Performance of Application-Controlled File Caching," Proc. Symposium on Operating System Design and Implementation, November 1994.
|
 |
5
|
Jeffrey S. Chase , Darrell C. Anderson , Prachi N. Thakar , Amin M. Vahdat , Ronald P. Doyle, Managing energy and server resources in hosting centers, Proceedings of the eighteenth ACM symposium on Operating systems principles, October 21-24, 2001, Banff, Alberta, Canada
|
| |
6
|
R. J. Creasy. "The Origin of the VM/370 Time-Sharing System," IBM Journal of Research and Development, 25(5), September 1981.
|
 |
7
|
Bryan Ford , Mike Hibler , Jay Lepreau , Patrick Tullmann , Godmar Back , Stephen Clawson, Microkernels meet recursive virtual machines, Proceedings of the second USENIX symposium on Operating systems design and implementation, p.137-151, October 29-November 01, 1996, Seattle, Washington, United States
|
| |
8
|
Robert P. Goldberg. "Survey of Virtual Machine Research," IEEE Computer, 7(6), June 1974.
|
 |
9
|
Kinshuk Govil , Dan Teodosiu , Yongqiang Huang , Mendel Rosenblum, Cellular Disco: resource management using virtual clusters on shared-memory multiprocessors, Proceedings of the seventeenth ACM symposium on Operating systems principles, p.154-169, December 12-15, 1999, Charleston, South Carolina, United States
|
| |
10
|
Peter H. Gum. "System/370 Extended Architecture: Facilities for Virtual Machines," IBM Journal of Research and Development', 27(6), November 1983.
|
| |
11
|
|
 |
12
|
|
| |
13
|
Intel Corporation. IA-32 Intel Architecture Software Developer's Manual. Volumes I, II, and III, 2001.
|
| |
14
|
Bob Jenkins. "Algorithm Alley," Dr. Dobbs Journal, September 1997. Source code available from http://burtleburtle.net/bob/hash/
|
| |
15
|
Ted Kaehler. "Virtual Memory for an Object-Oriented Language," Byte, August 1981.
|
 |
16
|
|
| |
17
|
|
| |
18
|
|
| |
19
|
Theodore H. Romer, Dennis Lee, Brian N. Bershad and J. Bradley Chen. "Dynamic Page Mapping Policies for Cache Conflict Resolution on Standard Hardware," Proc. Symposium on Operating System Design and Implementation, November 1994.
|
| |
20
|
L. H. Seawright and R. A. McKinnon. "VM/370: A Study of Multiplicity and Usefulness," IBM Systems Journal, 18(1), 1979.
|
 |
21
|
|
| |
22
|
|
| |
23
|
|
| |
24
|
|
| |
25
|
David G. Sullivan and Margo I. Seltzer. "Isolation with Flexibility: A Resource Management Framework for Central Servers," Proc. Usenix Annual Technical Conference, June 2000.
|
| |
26
|
|
| |
27
|
R. Tremaine, P. Franaszek, J. Robinson, C. Schulz, T. Smith, M. Wazlowski, and P. Bland. "IBM Memory Expansion Technology (MXT)," IBM Journal of Research and Development', 45(2), March 2001.
|
| |
28
|
Andrew Tridgell. "dbench" benchmark. Available from ftp://samba.org/pub/tridge/dbench/, September 2001.
|
| |
29
|
VMware, Inc. VMware ESX Server User's Manual Version 1.5, Palo Alto, CA, April 2002.
|
| |
30
|
Carl A. Waldspurger and William E. Weihl. "Lottery Scheduling: Flexible Proportional-Share Resource Management," Proc. Symposium on Operating System Design and Implementation, November 1994.
|
| |
31
|
|
| |
32
|
|
CITED BY 51
|
|
|
|
|
Rich Uhlig , Gil Neiger , Dion Rodgers , Amy L. Santoni , Fernando C. M. Martins , Andrew V. Anderson , Steven M. Bennett , Alain Kagi , Felix H. Leung , Larry Smith, Intel Virtualization Technology, Computer, v.38 n.5, p.48-56, May 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tal Garfinkel , Keith Adams , Andrew Warfield , Jason Franklin, Compatibility is not transparency: VMM detection myths and realities, Proceedings of the 11th USENIX workshop on Hot topics in operating systems, p.1-6, May 07-09, 2007, San Diego, CA
|
|
Lisa R. Hsu , Steven K. Reinhardt , Ravishankar Iyer , Srihari Makineni, Communist, utilitarian, and capitalist cache policies on CMPs: caches as a shared resource, Proceedings of the 15th international conference on Parallel architectures and compilation techniques, September 16-20, 2006, Seattle, Washington, USA
|
|
Padma Apparao , Ravi Iyer , Xiaomin Zhang , Don Newell , Tom Adelmeyer, Characterization & analysis of a server consolidation benchmark, Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments, March 05-07, 2008, Seattle, WA, USA
|
|
|
|
|
|
|
|
|
|
Aravind Menon , Jose Renato Santos , Yoshio Turner , G. (John) Janakiraman , Willy Zwaenepoel, Diagnosing performance overheads in the xen virtual machine environment, Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments, June 11-12, 2005, Chicago, IL, USA
|
|
|
|
|
|
|
|
Constantine Sapuntzakis , David Brumley , Ramesh Chandra , Nickolai Zeldovich , Jim Chow , Monica S. Lam , Mendel Rosenblum, Virtual Appliances for Deploying and Maintaining Software, Proceedings of the 17th USENIX conference on System administration, October 26-31, 2003, San Diego, CA
|
|
|
|
|
|
|
|
Brad Calder , Andrew A. Chien , Ju Wang , Don Yang, The entropia virtual machine for desktop grids, Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments, June 11-12, 2005, Chicago, IL, USA
|
|
|
|
Constantine P. Sapuntzakis , Ramesh Chandra , Ben Pfaff , Jim Chow , Monica S. Lam , Mendel Rosenblum, Optimizing the migration of virtual computers, Proceedings of the 5th symposium on Operating systems design and implementation Due to copyright restrictions we are not able to make the PDFs for this conference available for downloading, December 09-11, 2002, Boston, Massachusetts
|
|
|
|
|
Jose Renato Santos , Yoshio Turner , G. Janakiraman , Ian Pratt, Bridging the gap between software and hardware techniques for I/O virtualization, USENIX 2008 Annual Technical Conference on Annual Technical Conference, p.29-42, June 22-27, 2008, Boston, Massachusetts
|
|
|
|
|
Jeannie Albrecht , Ryan Braud , Darren Dao , Nikolay Topilski , Christopher Tuttle , Alex C. Snoeren , Amin Vahdat, Remote control: distributed application configuration, management, and visualization with plush, Proceedings of the 21st conference on 21st Large Installation System Administration Conference, p.1-19, November 11-16, 2007, Dallas
|
|
Xiaoxin Chen , Tal Garfinkel , E. Christopher Lewis , Pratap Subrahmanyam , Carl A. Waldspurger , Dan Boneh , Jeffrey Dwoskin , Dan R.K. Ports, Overshadow: a virtualization-based approach to retrofitting protection in commodity operating systems, ACM SIGARCH Computer Architecture News, v.36 n.1, March 2008
|
|
|
|
|
|
|
|
|
|
|
|
Michael Vrable , Justin Ma , Jay Chen , David Moore , Erik Vandekieft , Alex C. Snoeren , Geoffrey M. Voelker , Stefan Savage, Scalability, fidelity, and containment in the potemkin virtual honeyfarm, ACM SIGOPS Operating Systems Review, v.39 n.5, December 2005
|
|
|
|
Wei Huang , Jiuxing Liu , Matthew Koop , Bulent Abali , Dhabaleswar Panda, Nomad: migrating OS-bypass networks in virtual machines, Proceedings of the 3rd international conference on Virtual execution environments, June 13-15, 2007, San Diego, California, USA
|
|
|
|
Wei Huang , Jiuxing Liu , Bulent Abali , Dhabaleswar K. Panda, A case for high performance computing with virtual machines, Proceedings of the 20th annual international conference on Supercomputing, June 28-July 01, 2006, Cairns, Queensland, Australia
|
|
|
|
Sriram Govindan , Arjun R. Nath , Amitayu Das , Bhuvan Urgaonkar , Anand Sivasubramaniam, Xen and co.: communication-aware CPU scheduling for consolidated xen-based hosting platforms, Proceedings of the 3rd international conference on Virtual execution environments, June 13-15, 2007, San Diego, California, USA
|
|
|
Charles Reis , John Dunagan , Helen J. Wang , Opher Dubrovsky , Saher Esmeir, BrowserShield: vulnerability-driven filtering of dynamic HTML, Proceedings of the 7th symposium on Operating systems design and implementation, November 06-08, 2006, Seattle, Washington
|
|
|
|
Yun Fu , Jeffrey Chase , Brent Chun , Stephen Schwab , Amin Vahdat, SHARP: an architecture for secure resource peering, Proceedings of the nineteenth ACM symposium on Operating systems principles, October 19-22, 2003, Bolton Landing, NY, USA
|
|
|
|
Tal Garfinkel , Ben Pfaff , Jim Chow , Mendel Rosenblum , Dan Boneh, Terra: a virtual machine-based platform for trusted computing, Proceedings of the nineteenth ACM symposium on Operating systems principles, October 19-22, 2003, Bolton Landing, NY, USA
|
|