Reproducing a failure is the first and most important step in debugging because it enables us to understand the failure and track down its source. However, many programs are susceptible to nondeterministic failures that are hard to reproduce, which makes debugging extremely difficult. We first address the reproducibility problem by proposing an OS-level replay system for a uniprocessor environment that can capture and replay nondeterministic events needed to reproduce a failure in Linux interactive and event-based programs. We then present an analysis method, called replay analysis, based on the proposed record and replay system to diagnose concurrency bugs in such programs. The replay analysis method uses a combination of static analysis, ...
Concurrency bugs are problems due to incorrect interleaving of parallel tasks. They are often caused...
Concurrent software has been increasingly adopted in recent years, mainly due to the introduction of...
Abstract — Debugging is, typically, a hard and time-consuming task. Fault-replication mechanisms fac...
Debugging a faulty program can be very hard and time-consuming. The programmer usually reexecutes hi...
The ever-increasing parallelism in computer systems has made software more prone to concurrency fail...
Testing and debugging are essential but most complex activities of the software development process,...
Concurrency faults are one of the most damaging types of faults that can affect the dependability of...
Debugging concurrent programs is known to be difficult due to scheduling non-determinism. The techni...
The processor industry is at an inflection point. In the past, performance was the driving force beh...
Part 1: Full PapersInternational audienceDebugging of concurrent systems is a tedious and error-pron...
Software bugs that occur in production are often difficult to reproduce in the lab due to subtle dif...
Traditionally, debugging refers to the process of locating the pro-gram portions which are responsib...
Hardware-assisted Record and Deterministic Replay (RnR) of programs has been proposed as a primitive...
Significant time is spent by companies trying to reproduce and fix bugs. We recently proposed a har...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Concurrency bugs are problems due to incorrect interleaving of parallel tasks. They are often caused...
Concurrent software has been increasingly adopted in recent years, mainly due to the introduction of...
Abstract — Debugging is, typically, a hard and time-consuming task. Fault-replication mechanisms fac...
Debugging a faulty program can be very hard and time-consuming. The programmer usually reexecutes hi...
The ever-increasing parallelism in computer systems has made software more prone to concurrency fail...
Testing and debugging are essential but most complex activities of the software development process,...
Concurrency faults are one of the most damaging types of faults that can affect the dependability of...
Debugging concurrent programs is known to be difficult due to scheduling non-determinism. The techni...
The processor industry is at an inflection point. In the past, performance was the driving force beh...
Part 1: Full PapersInternational audienceDebugging of concurrent systems is a tedious and error-pron...
Software bugs that occur in production are often difficult to reproduce in the lab due to subtle dif...
Traditionally, debugging refers to the process of locating the pro-gram portions which are responsib...
Hardware-assisted Record and Deterministic Replay (RnR) of programs has been proposed as a primitive...
Significant time is spent by companies trying to reproduce and fix bugs. We recently proposed a har...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Concurrency bugs are problems due to incorrect interleaving of parallel tasks. They are often caused...
Concurrent software has been increasingly adopted in recent years, mainly due to the introduction of...
Abstract — Debugging is, typically, a hard and time-consuming task. Fault-replication mechanisms fac...