Debugging Parallel Programs with Instant Replay
IEEE Transactions on Computers
IEEE Transactions on Software Engineering
ACM Computing Surveys (CSUR)
Debugging Concurrent Ada Programs by Deterministic Execution
IEEE Transactions on Software Engineering
Monitors: an operating system structuring concept
Communications of the ACM
Implementing data abstractions and monitors in UCSD Pascal
ACM SIGPLAN Notices
Data flow analysis of concurrent systems that use the rendezvous model of synchronization
TAV4 Proceedings of the symposium on Testing, analysis, and verification
A bibliography of parallel debuggers, 1993 edition
PADD '93 Proceedings of the 1993 ACM/ONR workshop on Parallel and distributed debugging
An incremental approach to structural testing of concurrent software
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
VP: a new operation for semaphores
ACM SIGOPS Operating Systems Review
Software unit test coverage and adequacy
ACM Computing Surveys (CSUR)
Use of Sequencing Constraints for Specification-Based Testing of Concurrent Programs
IEEE Transactions on Software Engineering
Systematic Debugging of Parallel Programs in DIWIDE Based on Collective Breakpoints and Macrosteps
Euro-Par '99 Proceedings of the 5th International Euro-Par Conference on Parallel Processing
On Using Static Analysis in Distributed System Testing
EDO '00 Revised Papers from the Second International Workshop on Engineering Distributed Objects
Notes on Nondeterminism in Message Passing Programs
Proceedings of the 9th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
A Concurrency Test Tool for Java Monitors
Proceedings of the 16th IEEE international conference on Automated software engineering
Reachability Testing of Semaphore-Based Programs
COMPSAC '04 Proceedings of the 28th Annual International Computer Software and Applications Conference - Volume 01
Regression testing of multi-tasking real-time systems: a problem statement
ACM SIGBED Review - Special issue: IEEE RTAS 2005 work-in-progress
Reachability Testing of Concurrent Programs
IEEE Transactions on Software Engineering
Automated Generation of Context-Aware Tests
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Transaction-Based Communication-Centric Debug
NOCS '07 Proceedings of the First International Symposium on Networks-on-Chip
Unit testing concurrent software
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Structural Testing for Semaphore-Based Multithread Programs
ICCS '08 Proceedings of the 8th international conference on Computational Science, Part I
Cross-Entropy-Based Replay of Concurrent Programs
FASE '09 Proceedings of the 12th International Conference on Fundamental Approaches to Software Engineering: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Software debugging, testing, and verification
IBM Systems Journal
A randomized scheduler with probabilistic guarantees of finding bugs
Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems
Building test constraints for testing middleware-based distributed systems
SEM'02 Proceedings of the 3rd international conference on Software engineering and middleware
Finding and reproducing Heisenbugs in concurrent programs
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
Research in concurrent software testing: a systematic review
Proceedings of the Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging
Improved multithreaded unit testing
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Dthreads: efficient deterministic multithreading
SOSP '11 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles
Tiddle: a trace description language for generating concurrent benchmarks to test dynamic analyses
WODA '09 Proceedings of the Seventh International Workshop on Dynamic Analysis
SimTester: a controllable and observable testing framework for embedded systems
VEE '12 Proceedings of the 8th ACM SIGPLAN/SIGOPS conference on Virtual Execution Environments
CoreRacer: a practical memory race recorder for multicore x86 TSO processors
Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture
Optimizing threads schedule alignments to expose the interference bug pattern
SSBSE'12 Proceedings of the 4th international conference on Search Based Software Engineering
An approach to testing commercial embedded systems
Journal of Systems and Software
Hi-index | 0.00 |
Attention is given to the problems that arise during the testing and debugging cycle of concurrent programs because of their nondeterministic execution behavior, whereby multiple executions of a concurrent program with the same input may exercise different synchronization sequences and even produce different results. These problems are solved by using deterministic execution debugging and testing. The purpose of deterministic execution debugging to to replay executions of a concurrent program so that debugging information can be collected. Examples of semaphores and monitors are used to illustrate the approach and the process of designing replay tubes is described. The use of regression testing to see if earlier debugging and testing introduced new errors, is examined.