Introduction

 

Introduction: System Virtual Machines (9/2 Zhenlin) [slides]

Smith, J.E. and Ravi Nair, “The architecture of virtual machines”, Computer Volume 38, Issue 5,  May 2005 Page(s):32 – 38.

Mendel Rosenblum and Tal Grafinkel, “Virtual Machine Monitors: Current Technology and Future Trends”,. IEEE Computer Scociety, 38(5):39-47, May 2005.

POPEK, G. J., AND GOLDBERG, R. P. “Formal requirements for virtualizable third generation architectures”. Commun. ACM 17, 7 (1974), 412–421.

 

Introduction: Java Virtual Machines (9/4 Zhenlin) [slides]

Alpern et al., “Implementing Jalapeño in Java”, OOPSLA ’99.

Alpern et al., “The Jalapeño Virtual Machine”, IBM System Journal, Vol 39, No 1, February 2000.

Burke et al.,The Jalapeño Dynamic Optimizing Compiler for Java”, Java Grande 99.

 

Part I.  System Virtual Machines

 

Example Virtual Machines I  (9/9)

Edouard Bugnion,S cott Devine, Kinshuk Govil and Mendel Rosenblum “Disco: Running Commodity Operating Systems on Scalable Multiprocessors”, SOSP’97 (Kit) [slides]                  

P. Barham et al., “Xen and the Art of Virtualization”, SOSP ’03. (Steve V.)  [slides]

 

Example Virtual Machines II  (9/11)

Andrew Whitaker, Marianne Shaw, and Steven D. Gribble, “Scale and Performance in the Denali Isolation Kernel”, OSDI’02. (Steve R.) [slides]

Vrable et al. “Scalability, Fidelity and Containment in the Potemkin Virtual Honeyfarm,  SOSP 2005. (Martin) [slides]

 

Hardware Support  (9/16)

Neiger et al., “Intel Virtualization Technology: Hardware Support for Efficient Processor Virtulization”, Intel Technology Journal. (Weiming) [slides]

Keith Adams and Ole Agesen, “A COMPARISON OF SOFTWARE AND HARDWARE TECHNIQUES FOR X86 VIRTUALIZATION”,   ASPLOS’06 (Keith) [slides]

 

Resource Management  I (9/18)

C. A. Waldspurger, “ Memory Resource Management in VMWare ESX Server”, OSDI ’02. (Jun T.) [Slides]

Ravi Bhargava and Benjamin Serebrin and Francesco Spadini and Srilatha Manne, “Accelerating two-dimensional page walks for virtualized systems”,  ASPLOS’08. (Jun M.) [Slides]

 

Resource Management  II (9/23 Weiming)

Stephen Jones, Andrea Arpaci-Dusseau and Remzi Arpaci-Dusseau, “GEIGER: MONITORING THE PAGE CACHE IN A VIRTUAL MACHINE ENVIRONMENT”,  ASPLOS 06. [Slides]

Pin Lu and Kai Shen, “Virtual Machine Memory Access Tracing with Hypervisor Exclusive Cache”, 2007 USENIX annual technical conference. [Slides]

 

Project Proposal (9/25)

 

I/O  (9/30)

J. Sugerman, G. Venkitachalam, and B.-H Lim, “Virtualizing I/O Devices on VMware Workstation’s Hosted Virtual Machine Monitor,”, USENIX’01. [Kit] [Slides]

Ricardo Baratto, Leonard Kim, Jason Nieh,THINC: A Virtual Display Architecture for Thin-Client Computing”, SOSP 2005 [Wei] [Slides]

Diego Ongaro, Alan Cox and Scott Rixner, Scheduling I/O in Virtual Machine Monitors”, VEE ’08.

 

Trusted Computing (10/2)

Stefan Berger, Ramón Cáceres, Kenneth A. Goldman, Ronald Perez, Reiner Sailer, Leendert van Doorn, “vTPM: Virtualizing the Trusted Platform Module”, USENIX Security, 2006.

Tal Garfinkel, Ben Pfaff, Jim Chow, Mendel Rosenblum and Dan Boneh, “Terra: A Virtual Machine-Based Platform for Trusted Computing”, SOSP’03 [Jun M.]

Jonathan M. McCune, Bryan Parno, Adrian Perrig, Michael K. Reiter and Arvind Seshadri , “How low can you go?: recommendations for hardware-supported minimal TCB code execution”, ASPLOS ’08. [Steve V.] [Slides]

 

Security I (10/7)

X. Chen et al., “Overshadow: A Virtualization-Based Approach to Retrofitting Protection in Commodity Operating Systems”,  ASPLOS '08. [Martin] [slides]

Seshadri et al. SecVisor: A Tiny Hypervisor to Provide Lifetime Kernel Code Integrity for Commodity OSes ”, Slides: PDF, SOSP’07

John Criswell, Andrew Lenharth, Dinakar Dhurjati, and Vikram AdveSecure Virtual Architecture: A Safe Execution Environment for Commodity Operating Systems”, Slides: PPT, SOSP ’07 [Keith]

 

Security II (10/9)

Jedidiah R. Crandall, Gary Wassermann, Daniela A. S. de Oliveira, Zhendong Su, S. Felix Wu and Frederic T. Chong , “TEMPORAL SEARCH: DETECTING HIDDEN MALWARE TIMEBOMBS WITH VIRTUAL MACHINES”, ASPLOS’ 06 [Steve R.] [Slides]

Richard S. Cox, Jacob Gorm Hansen, Steven D. Gribble, and Henry Levy, “A Safety-Oriented Platform for Web Applications”, IEEE Symposium on Security and Privacy, 2006. [Jun T.] [slides]

 

 

Replay and Instrucmentation (10/14)

Oren Laadan, Ricardo A. Baratto, Dan Phung, Shaya Potter, and Jason Nieh,DejaView: A Personal Virtual Computer Recorder”, Slides: ODP (554 KB), SOSP 2007. (Keith)

Prashanth P. Bungale and Chi-Keung Luk, “PinOS: A Programmable Framework for

Whole-System Dynamic Instrumentation”, VEE 2007 (Weiming) [slides]

 

Live Migration (10/16)

C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt, and A.Warfield. “Live Migration of Virtual Machines. NSDI, 2005. (Martin) [Slides]

R. Bradford, E. Kotsovinos, A. Feldmann, H. Schioberg, “Live Wide-Area Migration of Virtual Machines with local persistent state. VEE’07, June 2007.

(Kit) [slides]

PART II. Java Virtual Machine

 

 

Adaptive Compilation (10/21)

Matthew Arnold, Stephen Fink, David Grove, Michael Hind, and Peter F. Sweeney, “Adaptive Optimization in the Jalapeño JVM,    OOPSLA 2000 [Wei] [Slides]

Andy Georges, Dries Buytaert, Lieven Eeckhout,  Koen De Bosschere,  Method-Level Phase Behavior in Java Workloads”, OSPLA 2004

Dayong Gu and Clark Verbrugge, “Phase-based Adaptive Recompilation in a JVM”, CGO 2008. [Steve V.] [Slides]

 

 

More Compilation (10/23)

Kazunori Ogata et al., Replay Compilation: Improving Debuggability of a Just-in-Time Compiler”,  OOSPLA 06 [Tao] [Slides]

John Cavazos, Michael O'Boyle,  Method-Specific Dynamic Compilation using Logistic Regression”, OOPSLA 2006. [Steve R.] [Slides]

 

Memory Management: Introduction (10/28 Zhenlin)

Wilson: Uniprocessor garbage collection techniques. Unpublished [Slides]

 

 

Memory Management: Age-based (10/30)

Stefanovic et al,  Age-Based Garbage Collection”, OOPSLA 1999: 370-381
Stefanovic et al, “ Older-first garbage collection in practice: evaluation in a Java Virtual Machine”, MSP/ISMM 2002: 25-36 [Steve V.]

Blackburn et al,  Beltway: Getting around garbage collection gridlock” PLDI 2002: 153-164 [Weiming] [Slides]

 

 

Incremental (11/4)

Seligmann and Grarup:, “Incremental mature garbage collection using the train algorithm” ECOOP 1995: 235-252 [Steve R.]
Hudson et al, “Garbage collecting the world: One car at a time”, OOPSLA 1997: 162-175 [Martin] [Slides]

 

 

Reference conuting (11/6)

Bacon et al, “ Java without the coffee breaks: A nonintrusive multiprocessor garbage collector”, PLDI 2001: 92-103 [Keith] [Slides]

Blackburn & McKinley, “ Ulterior reference counting: Fast garbage collection without the long wait”, OOPSLA 2003 [Tao] [Slides]

 

Mostly concurrent (11/11)

Boehm et al, “Mostly parallel garbage collection” PLDI 1991: 157-164 [Kit] [Slides]
Printezis & Detlefs, “A generational mostly concurrent garbage collector”, An abbreviated version appears in ISMM 2000: 143 - 154
Barabash et al,  “Mostly Concurrent Garbage Collection Revisited”, OOPSLA 2003 [Wei]

 

Real-time (11/13)

Blelloch and Cheng, “On bounding time and space for multiprocessor garbage collection”, PLDI 1999: 104-117.
Cheng and Blelloch, “A parallel, real-time garbage collector”, PLDI 2001: 125-136 [Tao] [Slides]
Bacon et al, “A real-time garbage collector with low overhead and consistent utilization”, POPL 2003: 285-298 [Steve V.]

 

Hybrid (11/18)

David F. Bacon,  Perry Cheng and V.T. Rajan, A Unified Theory of Garbage Collection, OOPSLA’04 [Kit] [Slides]

S. M. Blackburn and K. S. McKinley,  Immix: A Mark-Regin Garbage Collector with Space Efficiency, Fast Collection, and Mutator Locality”,  ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Tuscon AZ, pages 22--32, June 2008. [Keith]

 

Security (11/20)

Hirzel et al, “On the usefulness of type and liveness accuracy for garbage collection and leak detection” TOPLAS 24(6): 593-624 (2002) [Steve R.]

Bond et al., “Tracking Bad Apples: Reporting the Origin of Null and Undefined Value Errors, OOPSLA 2007. [Martin] [Slides]

 

Locality (12/2 Zhenlin)

Shuf et al , “Exploiting prolific types for memory management and optimizations”, POPL 2002  [Slides]
Shuf et al, “Creating and preserving locality of java applications at allocation and garbage collection times”, OOPSLA 2002: 13-25

Huang et al, “The Garbage Collection Advantage: Improving Program Locality”, OOPSLA 2004 [Slides]

JVM and VMM (12/4)

Ting Yang, Emery D. Berger, Scott F. Kaplan and J. Eliot B. Moss , “CRAMM: Virtual Memory Support for Garbage-Collected Applications”, OSDI’06 [Weiming]

Ammons et al. “Libra: A Library Operating System for a JVM in a Virtualized Execution Environment”, VEE 2007.  [Zhenlin]

 

Project presentation (12/9, 12/11)