Prototyping and debugging of operating systems and drivers are very tough tasks because of hardware volatility, kernel panics, blue screens of death, long periods of time required to expose the bug, perturbation of the drivers by the debugger, and non-determinism of multi-threaded environment. This paper shows how the deterministic replay of the virtual machine execution can be used to reduce the impact of these factors to the process of debugging. We present an approach to reverse debugging which allows creating multi-target whole-system debugger. Using this debugger one can investigate the failures affecting behavior of virtual hardware and guest software. Our debugger is capable of replaying whole virtual machine execution with reproduci...
The problems of debugging parallel programs have been known for quite some time. However, the litera...
Recent embedded real-time software tends to be multithreaded and constrained by stringent timing req...
Backtracking (i.e., reverse execution) helps the user of a debugger to naturally think backwards alo...
Operating systems are difficult to debug with traditional cyclic debugging. They are non-determinist...
Debugging is generally considered to be difficult. The increased complexity and non determinism of p...
International audienceThe increasing complexity of multiprocessor system on chip (MPSoC) makes the s...
One of the most energy-draining and frustrating parts of software development is playing detective w...
Reprogrammable hardware systems are traditionally very difficult to debug due to their high level of...
Debugging software is challenging because of the increasing complexity of software and hardware, and...
Hardware-assisted Record and Deterministic Replay (RnR) of programs has been proposed as a primitive...
Testing and debugging are essential but most complex activities of the software development process,...
PhD ThesisCurrently available microcomputer development systems/tools become rather inefficient whe...
Significant time is spent by companies trying to reproduce and fix bugs. BugNet is a recent architec...
In this report, we will give an introduction to work presented in the area of debugging large softwa...
A common debugging strategy involves re-executing a program (on a given input) over and over, each t...
The problems of debugging parallel programs have been known for quite some time. However, the litera...
Recent embedded real-time software tends to be multithreaded and constrained by stringent timing req...
Backtracking (i.e., reverse execution) helps the user of a debugger to naturally think backwards alo...
Operating systems are difficult to debug with traditional cyclic debugging. They are non-determinist...
Debugging is generally considered to be difficult. The increased complexity and non determinism of p...
International audienceThe increasing complexity of multiprocessor system on chip (MPSoC) makes the s...
One of the most energy-draining and frustrating parts of software development is playing detective w...
Reprogrammable hardware systems are traditionally very difficult to debug due to their high level of...
Debugging software is challenging because of the increasing complexity of software and hardware, and...
Hardware-assisted Record and Deterministic Replay (RnR) of programs has been proposed as a primitive...
Testing and debugging are essential but most complex activities of the software development process,...
PhD ThesisCurrently available microcomputer development systems/tools become rather inefficient whe...
Significant time is spent by companies trying to reproduce and fix bugs. BugNet is a recent architec...
In this report, we will give an introduction to work presented in the area of debugging large softwa...
A common debugging strategy involves re-executing a program (on a given input) over and over, each t...
The problems of debugging parallel programs have been known for quite some time. However, the litera...
Recent embedded real-time software tends to be multithreaded and constrained by stringent timing req...
Backtracking (i.e., reverse execution) helps the user of a debugger to naturally think backwards alo...