|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
INDEX TERMS
Primary Classification:
Additional Classification:
General Terms:
Keywords:
Collaborative Colleagues:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||