May 2004


Virtual Machine Architectures, Implementations, and Applications 

 

Table of Contents

Instructor Information

Prof. James E. Smith

Office:             Modul D6-211
Office phone:   934017409
Email:               jes@ece.wisc.edu

Course Information

       Virtual Machines: Architectures, Implementations, and Applications (draft version), J. E. Smith and Ravi Nair, to be published by Morgan Kaufmann, 2005.
 

News

Web site created May 14 , 2004
 

Calendar

Class will meet on the following schedule.

May  17-21 & May 24-28;  10 am --12 noon

Course Outline

1. Introduction (1 hour)
   Motivation
   VM types and applications
   Translation, Optimization, Replication
   Summary of key design issues
   Course Roadmap

2. Real Machines (1 hour)
    Computer Architecture(s)
    Principal interfaces: ISA, ABI
    Managing and protecting hardware resources

3. Emulation: Interpretation and Binary Translation (3 hours)
    Decode-dispatch interpretation
    Threaded interpretation
    Translation chaining
    Design issues and alternatives
    Case Study: Shade

4. Process VMs (3 hours)
      VM Integration
      Translation Cacheing
      Handling OS calls
      Case studies: FX!32, WABI

5. Dynamic  Optmization (2 hours)
    Profiling
    Staged optimization
    Superblock optimization
    Precise traps
    Case studies:  UQDBT,  HP Dynamo

6. High Level VMs (3 hours)
     Modern VMs: network computing, object oritentation
     Java
     Microsoft CLI
     Optimization
     Case Study: IBM Jikes

7. Co-Designed VMs (1 hour)
    Microarchitecture
    Support for speculation
    Precise interrupts
    Case studies: Daisy, Crusoe
8. System VMs (3 hours)
   OS management and protection of resources
   Virtualizing memory, processor, I/O
   Instruction set virtualizability
   Hosted VMs
   Whole System VMs
   Case studies: IBM VM/370, Intel x86 VMware, SimOS
        9. Multiprocessors (1 hour)
              Partitioning
              Hypervisors
              System VMs
              Memory consistency
              Case study: IBM LPAR

Reference Readings

Lecture Notes

Miscellaneous Links