1. Introduction and Overview
- Motivation
- Types of VMs and their applications
- Summary of key design issues
2. Emulation: Interpretation and Translation
- Interpretation methods
- Binary translation
3. Process VMs
- Integration
- Code caching
- Handling of precise traps
4. Dynamic Optimization
- Code re-scheduling
- Optimization methods
5. High Level VMs
- Platform independence
- Security issues
- Java, MSIL
- Hardware support for HL VMs
6. Co-Designed VMs
- Concealed Memory
- Hardware support
- System issues
7. System VMs
- Virtualizing processors, memory, I/O
- Instruction set virtualizability
- IBM System/370 VM
- VMware on Intel x86
8. Multiprocessors
- MP architecture issues
- Logical and physical partitioning
9. Emerging Applications
- Security
- The Grid
- Portable environments
|