Virtualization Techniques (IN2125) (Vorlesung)
Lecturer (assistant) | |
---|---|
Type | lecture |
Term | Wintersemester 2021/22 |
Language of instruction | English |
Dates | See TUMonline |
Description
- 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).
(Update 5.10.21) There is a room booked for this lecture (FMI 00.13.009A) and we may switch to hybrid lecture (both presence and online attendance possible) at some point during the semester, but the first date (20.10.21) definitly will be given as online Zoom meeting. The link will be distributed to registered participants via EMail a few days before the first lecture. For later presence, note that the 3G rule needs to be ensured: you must be either vaccinated ("geimpft") against, recovered ("genesen") from, or tested ("getestet") negative on Covid-19, with according certificate. This would be checked during the partial-presence lecture.
First lecture: Wednesday, October 20, 2021. Last lecture: February 9, 2022.
Exam
The written exam will take place on Tuesday, Feb 15, 2022. Start is 11:30. New location: MW 0001, Gustav-Niemann-Hörsaal (5510.EG.001)
Current plan is a presence exam. Please be there 10-15 minutes early.
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 20 | Organization | Via Zoom. Slides Organization, Slides Intro, Homework 1, Recording |
Oct 27 | Introduction (1) | Via Zoom. Recording |
Nov 3 | Introduction (2) | Hybrid. Recording |
Nov 10 | ISA Emulation (1) | Slides ISA Emulation, Homework 2, C code for Homework 2, Recording |
Nov 17 | ISA Emulation (2) | Recording |
Nov 24 | ISA Emulation (3) | Recording - Solution Homework 2 Task 1+2 |
Dec 1 | Lab 1: Valgrind | From 14:00 - 17:00 via Zoom. Task Sheet, Tutorial Slides, |
Dec 8 | Process-VMs (1) | Slides Process-VMs, Solution HW2 Task 1-3, Recording |
Dec 15 | Process-VMs (2) | Recording |
Dec 22 | Process-VMs (3) | Online via Zoom. Recording, Solution HW2 Task4 |
Jan 12 | HLL-VMs | Online via Zoom. Slides HLL-VMs, Recording |
Jan 19 | Lab 2: JVM | From 14:00 - 17:00 via Zoom. Task Sheet, Byte Code Assembler Jasmin, Byte Code Verifier, Sources OpenJDK Hotspot, recording |
Jan 26 | HLL-VMs (2), ystem-VMs (1) | Online via Zoom. Slides System-VMs, Solution Homework 2, recording |
Feb 2 | System-VMs (2) | Online via Zoom. Recording (last slide in System-VMs relevant for exam: slide 36, without slide 28) |
Feb 9 | System-VMs (3) / Lab3: LGuest+Hypercalls / Exam Q & A | From 14:00 - 17:00 via Zoom. Recording. Lecture slides discussed are not relevant for exam Material for Lab3: Task Sheet with answers, LGuest PDF |
Feb 15 | Exam | See above |
Student Presentations
A student presentation, done well, will give you a bonus grade of 0.3 for the final exam.
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
Presentations: