POPL 2024
Sun 14 - Sat 20 January 2024 London, United Kingdom
Sat 20 Jan 2024 14:22 - 14:45 at Turing Lecture - Session 3 Chair(s): Matteo Busi

Hardware-assisted virtualization simplifies \textit{implementing} virtual machine monitors (VMM), but verifying a VMM using hardware virtualization requires a precise model of the virtualization. A natural specification for a VMM is that it refines the bare-metal hardware \emph{specification}; however, a simple backwards simulation on the processor semantics would require case distinction on all instructions, showing that they refine the non-virtualized counterparts. This case analysis is prohibitively expensive for modern architectures. Further, correctness of hardware virtualization is mainly the responsibility of the ISA architects, not the VMM implementer. In this paper, we propose a modularization of hardware semantics that succinctly captures the difference between the ``bare-metal'' behavior and hardware-virtualized behavior of a processor. We illustrate how this helped us modularize the verification of our VMM.

Sat 20 Jan

Displayed time zone: London change

14:00 - 15:30
Session 3PriSC at Turing Lecture
Chair(s): Matteo Busi University Ca' Foscari, Venice
14:00
22m
Talk
Compiler Support for Control-Flow Linearization Using Architectural Mimicry
PriSC
File Attached
14:22
22m
Talk
Modularizing CPU Semantics for Virtualization
PriSC
Paolo G. Giarrusso BedRock Systems, Abhishek Anand BedRock Systems, Gregory Malecha BedRock Systems, František Farka BedRock Systems, Hoang-Hai Dang BedRock Systems
File Attached
14:45
22m
Talk
All the Binaries Together: A Semantic Approach to Application Binary Interfaces
PriSC
Andrew Wagner Northeastern University, Amal Ahmed Northeastern University, USA
File Attached
15:07
22m
Talk
Short Talks
PriSC