Proceedings of The12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments 2016
DOI: 10.1145/2892242.2892257
|View full text |Cite
|
Sign up to set email alerts
|

Abstractions for Practical Virtual Machine Replay

Abstract: Efficient deterministic replay of whole operating systems is feasible and useful, so why isn't replay a default part of the software stack? While implementing deterministic replay is hard, we argue that the main reason is the lack of general abstractions for understanding and addressing the significant engineering challenges involved in the development of a replay engine for a modern VMM. We present a design blueprint-a set of abstractions, general principles, and low-level implementation details-for efficient… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Year Published

2016
2016
2023
2023

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 10 publications
(6 citation statements)
references
References 20 publications
0
6
0
Order By: Relevance
“…VM-level: VM-level hypervisors like XenTT [10], Re-Virt [14,15], ReTrace [45], and TTVM [23] can time-travel entire virtual machines, but at the expense of large program traces and slow time-travel. Reverse-step debugging, like that provided by MCFLY, requires time-travel at interactive speeds to be practical.…”
Section: Time-travel Debuggingmentioning
confidence: 99%
“…VM-level: VM-level hypervisors like XenTT [10], Re-Virt [14,15], ReTrace [45], and TTVM [23] can time-travel entire virtual machines, but at the expense of large program traces and slow time-travel. Reverse-step debugging, like that provided by MCFLY, requires time-travel at interactive speeds to be practical.…”
Section: Time-travel Debuggingmentioning
confidence: 99%
“…As in previous work [20,35,13] we measure application progress using CPU hardware performance counters. Ideally we would count retired instructions leading up to an asynchronous event during recording, and dur-ing replay program the CPU to fire an interrupt after that many instructions have been retired -but this approach needs modifications to work in practice.…”
Section: Asynchronous Eventsmentioning
confidence: 99%
“…Other work [20,13] avoids those uniqueness issues by counting the number of branches retired; an instruction at a given address can't be reached more than once without an intervening branch (except for repeating string instructions, which require the ECX/RCX register to be added to the program-state identifier). Unfortunately the branch counter is nondeterministic; for example a transition out a hardware interrupt is counted against the user process, but invisible to RR.…”
Section: Alternative Approaches To Nondeterministic Countersmentioning
confidence: 99%
See 1 more Smart Citation
“…They designed blueprint-a set of abstractions, general principles, and low-level implementation details-for efficient deterministic replay in a modern hypervisor. They evaluated the proposed architecture in Xen, a full-featured hypervisor [23]. Trusted computing in cloud is also supported by layered attestation services.…”
Section: Recent Challenges : Trust and Virtualization In The Cloudmentioning
confidence: 99%