Virtualization Techniques (IN2125) ()

Lecturer (assistant)
  • Josef Weidendorfer [L]
Type
TermWintersemester 2019/20
Language of instructionEnglish
DatesSee TUMonline

Description

- Classification of Virtual Machines - Operating System Virtualization - ISA Virtualization - Interpretation - Binary Translation - Dynamic Optimization - Process Virtual Machines - high-Level Language Virtual Machines - HW/SW-Codesign Virtual Machines - System Virtual Machines - Multiprocessor Virtualization - Applications

This lecture will be held in English.

Email Lecturer: Josef Weidendorfer

Time: Every Wednesday, 14:00 - 16:30 (15 min break in the middle) in FMI 00.13.009A.

First lecture: Wednesday, October 16, 2019. Last lecture: February 5, 2020.

Exam

The written exam will be on 27.2.2020 (Thursday), 13:30 - 14:45. Location: 1350, Ludwig-Burmester-Zeichensaal (5503.01.350).

Duration: 75 minutes.

An example exam from WS10/11 can be found here (exam will be 75 minutes not 60 minutes as this one from WS10/11).

Labs

During the semester, instead of the lecture, there will be 3 labs spanning the timeframe of one lecture each, with date announced in advance. Topics for the labs are getting insights into the working of a process VM, Java JVM, and a system VM.

Schedule

Date Topic Comments / Material
Oct 16 Organization Slides Organization
Oct 23 Introduction Slides Introduction, Homework 1
Oct 30 ISA Emulation Slides ISA Emulation, Homework 2, C code for Homework 2
Nov 6 ISA Emulation (2), Process-VMs  
Nov 13 Lab Valgrind 14:00 s.t. - 17:00
Lab1 Tasks, Valgrind 3.15 sources,
Observer Skeleton Patch, VG Tutorial Slides (2006)
Nov 20 (cancelled)  
Nov 27 ISA Emulation (3)  
Dec 4 ISA Emulation (4) Solution HW2, Task 3
Dec 12 Process-VMs Slides Process VMs
Dec 18 HLL-VMs Slides HLL VMs
Jan 8 Lab JVM

14:00 s.t. - 17:00
Lab2 Tasks, Jasmin (Java Bytecode Disassembler), Verifier, JDK8 Hotspot Sources

Jan 15 HLL-VMs (2), System-VMs (1) Slides System VMs
Jan 22 System-VMs (2)  
Jan 29 System-VMs (3) / Task 1 Lab 3 Lab 3 Task Sheet, LGuest paper
Feb 5 Task 2 Lab 3 / Exam Q & A  

Student Presentations

Should be 15-20 min. Topics can be motivation/techniques/benchmarks of existing VM implementations, for example (also propose your own!): related to Process-VMs: QEmu, Rosetta, related to OS-level virtualisation: Docker, Singularity. Related to HLL-VM: platform (bytecode) used in Python, .NET related to System-VMs: Xen, KVM

Nov 27, 2019: Docker (B.H.)
Dec 11, 2019: Wine (J.N.)
Dec 18, 2019: ESIL (F.M.)
Jan 15, 2020: LLVM (A.T.)
Jan 22, 2020: Xen (Y.A.)
Jan 22, 2020: KVM (M.N.)