RT-replayer: a record-replay architecture for embedded real-time software debugging

  • Authors:
  • Ji Chan Maeng;Jung-Il Kwon;Min-Kyu Sin;Minsoo Ryu

  • Affiliations:
  • Hanyang University, Seoul, Korea;Hanyang University, Seoul, Korea;Hanyang University, Seoul, Korea;Hanyang University, Seoul, Korea

  • Venue:
  • Proceedings of the 2009 ACM symposium on Applied Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.01

Visualization

Abstract

Recent embedded real-time software tends to be multithreaded and constrained by stringent timing requirements, thus often leading to serious faults depending on the precise timing of thread executions and event occurrences. A promising approach to debugging such complicated software is to log appropriate events during runtime and replay the same software execution based on them. This would allow one to effectively reproduce and track down the sources of faults. Unfortunately, previous software-based replayers have not paid much attention to the precise timing of software execution, but largely focused on the relative order of software events. Although some hardware-based replayers can provide such precise timing, they generally require a significant cost and are not available in usual development environments. In this paper, we present a software-based replayer, called RT-Replayer. RT-Replayer is based on two simple but effective software techniques, called virtual timestamps and instruction hooking, which enable faithful reproduction of the original software execution at instruction level accuracy.