A Toy Virtual Machine Project
Upcoming SlideShare
Loading in...5
×
 

A Toy Virtual Machine Project

on

  • 520 views

 

Statistics

Views

Total Views
520
Views on SlideShare
520
Embed Views
0

Actions

Likes
0
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

A Toy Virtual Machine Project A Toy Virtual Machine Project Presentation Transcript

  • Project Background Project Scope Project Achievements Virtual Machine Project Presented by Yan Dacong School of Software, SJTU September 25, 2008Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsAgenda 1 Project Background 2 Project Scope 3 Project Achievements Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Project BackgroundYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsWhy study virtual machines? Ubiquitous Applications Personal & Commercial Desktop & Workstation Challenging & Exciting Operating System Compatibility Computer Architecture Compatibility Promising future Trend: servers much stronger computation ability Make full use via VM Technology Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsProject Scope What we are doing in this PRP: Get acquaintance with basic concepts of virtual machines Acquire familiarity with applications of virtual machines Master the basic techniques of virtual machine implementation Develop a process virtual machine for MIPS What we are NOT doing in this PRP: Implement a full-scale system virtual machine Develop a brand-new virtual machine model Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Project AchievementsYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsProject Achievenments Categories of VM Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsProject Achievenments Categories of VM Instruction Emulation Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsProject Achievenments Categories of VM Instruction Emulation MIPS Process Virtual Machine Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsProject Achievenments Categories of VM Instruction Emulation MIPS Process Virtual Machine Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsCategories of VM System Virtual Machine (SVM) First developments: 1960s 1970s Complete system enrionments Run apps simultaneously on multiple platforms Typical Products: VirtualBox, VMWare Process Virtual Machine (PVM) Simpler model Rule out platform differences Run apps written in different ISAs Typical Products: JVM, SPIM Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Figure 1: A taxonomy of Virtual MachinesYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsInstruction Emulation Interpretation Easy to implement Efficiency bottleneck Binary Translation Speed up, esp. for hotspot codes Slow startup Hybrid Approach Combine the previous two Select proper strategies at run-time Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Figure 2: Basic steps of instruction emulationYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsMIPS Process Virtual Machine Programme Loader Predecoding Interpretation Table-Driven Execution Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Figure 3: Process LayoutYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsMIPS Instruction Format I-Type(Immediate) J-Type(Jump) R-Type(Register) Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Figure 4: MIPS Instruction FormatYan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsTable-Driven Execution Switch-loop is suboptimal! Figure 5: Switch Loop Approach Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsTable-Driven Execution(Cont.) Table-Driven Approach is Better! (a) Execution Function Table (b) Instruction Execution Figure 6: Table-Driven Execution Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project AchievementsConclusion VM is a promising field VM is worth studying VM would have an even wider application Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project
  • Project Background Project Scope Project Achievements Thank you!Yan Dacong, Zhang Xuchao, Duan Beichen Virtual Machine Project