Skip to main content
Back to USENIX
  • Conferences
  • Students
Sign in

USENIX Conference Policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

Flashback: A Lightweight Extension for Rollback and Deterministic Replay for Software Debugging

Software robustness has significant impact on system availability. Unfortunately, finding software bugs is a very challenging task because many bugs are hard to reproduce. While debugging a program, it would be very useful to rollback a crashed program to a previous execution point and deterministically re-execute the ``buggy'' code region. However, most previous work on rollback and replay support was designed to survive hardware or operating system failures, and is therefore too heavy-weight for the fine-grained rollback and replay needed for software debugging.

This paper presents Flashback, a lightweight OS extension that provides fine-grained rollback and replay to help debug software. Flashback uses shadow processes to efficiently roll back in-memory state of a process, and logs a process' interactions with the system to support deterministic replay. Both shadow processes and logging of system calls are implemented in a lightweight fashion specifically designed for the purpose of software debugging.

We have implemented a prototype of Flashback in the Linux operating system. Our experimental results with micro-benchmarks and real applications show that Flashback adds little overhead and can quickly roll back a debugged program to a previous execution point and deterministically replay from that point.

Sudarshan M. Srinivasan, University of Illinois, Urbana-Champaign

Srikanth Kandula, University of Illinois, Urbana-Champaign

Christopher R. Andrews, University of Illinois, Urbana-Champaign

Yuanyuan Zhou, University of Illinois, Urbana-Champaign

BibTeX
@inproceedings {269900,
author = {Sudarshan M. Srinivasan and Srikanth Kandula and Christopher R. Andrews and Yuanyuan Zhou},
title = {Flashback: A Lightweight Extension for Rollback and Deterministic Replay for Software Debugging},
booktitle = {2004 USENIX Annual Technical Conference (USENIX ATC 04)},
year = {2004},
address = {Boston, MA},
url = {https://www.usenix.org/conference/2004-usenix-annual-technical-conference/flashback-lightweight-extension-rollback-and},
publisher = {USENIX Association},
month = jun
}
Download

Links

Paper: 
http://usenix.org/publications/library/proceedings/usenix04/tech/general/full_papers/srinivasan/srinivasan.pdf
Paper (HTML): 
http://usenix.org/publications/library/proceedings/usenix04/tech/general/full_papers/srinivasan/srinivasan_html/index.html
  • Log in or register to post comments

© USENIX
EIN 13-3055038

  • Privacy Policy
  • Contact Us