Reverse debugging is the ability of a debugger to stop after a failure in a program has been observed and go back into the history of the execution to uncover the reason for the failure. Long the dream of programmers, over the past decade, reverse execution has become a practical technique available in a number of free and commercial tools. This article will review the history and techniques of reverse debugging, as researched, implemented, and used from the 1970s until today. We will provide some personal insights into reverse debugging, from our own practical use of one such tool, Wind River Simics.
展开▼
机译:反向调试是调试器在观察到程序故障后停止并返回执行历史以发现故障原因的能力。长期以来,程序员一直梦想着,在过去的十年中,反向执行已成为许多免费和商用工具中可用的实用技术。本文将回顾从1970年代至今研究,实施和使用的反向调试的历史和技术。我们将通过自己实际使用一种工具Wind River Simics来提供一些有关反向调试的个人见解。
展开▼