Verification of TLB Virtualization Implemented in C

Efficient TLB virtualization is a core component of modern hypervisors. Verifying such code is challenging; the code races with TLB virtualization code in other processors, with other guest threads, and with the hardware TLBs, and implements an abstract TLB that races with other abstract TLBs and gu...

Full description

Saved in:
Bibliographic Details
Published inVerified Software: Theories, Tools, Experiments Vol. 7152; pp. 209 - 224
Main Authors Alkassar, Eyad, Cohen, Ernie, Kovalev, Mikhail, Paul, Wolfgang J.
Format Book Chapter
LanguageEnglish
Published Germany Springer Berlin / Heidelberg 2012
Springer Berlin Heidelberg
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Efficient TLB virtualization is a core component of modern hypervisors. Verifying such code is challenging; the code races with TLB virtualization code in other processors, with other guest threads, and with the hardware TLBs, and implements an abstract TLB that races with other abstract TLBs and guest threads. We give a general methodology for verifying virtual device implementations, and demonstrate the verification of TLB virtualization code (using shadow page tables) in the concurrent C verifier VCC. To our knowledge, this is the first verification of any kind against a realistic model of a modern hardware MMU.
Bibliography:Work partially funded by the German Federal Ministry of Education and Research (BMBF) in the Verisoft XT project under grant 01 IS 07 008.
ISBN:9783642277047
3642277047
ISSN:0302-9743
1611-3349
DOI:10.1007/978-3-642-27705-4_17