[[abstract]]Concurrent program is becoming commonplace in modern computing. However, the bugs in concurrent program are usually difficult to be detected because of the non-deterministic behavior of concurrent programs. Semaphore is one of the major synchronization mechanisms in computer science. It often used to control the access of shared data in a multiprogramming environment. The misuse of semaphore is a very serious problem, because this may cause the program deadlock or make some inappropriate access of shared data. In this thesis, we describe how to apply dynamic effective testing to semaphore-based concurrent programs. We propose some protocols that can perform prefix-based replay on semaphore operations and record the program statu...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Testing using manually generated test cases is the primary technique used in industry to improve rel...
The lock-based shared memory model has proven to be error prone and difficult to test. Furthermore a...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
Abstract. We address the problem of detecting race conditions in programs that use semaphores for sy...
Testing concurrent programs that accept data inputs is no-toriously hard because, besides the large ...
We address the problem of detecting race conditions in programs that use semaphores for synchronizat...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
Abstract—One approach to testing concurrent programs, called reachability testing, generates synchro...
Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of...
Parallel and distributed programming languages often include explicit synchronization primitives, su...
Testing concurrent programs that accept data inputs is notoriously hard because, beside the large nu...
<p>The challenge this thesis addresses is to speed up the development of concurrent programs by incr...
Developing correct, scalable and efficient concurrent programs is a complex and difficult task, due ...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Testing using manually generated test cases is the primary technique used in industry to improve rel...
The lock-based shared memory model has proven to be error prone and difficult to test. Furthermore a...
Testing concurrent software is hard due to its non-deterministic behavior. Concurrency bugs triggeri...
Abstract. We address the problem of detecting race conditions in programs that use semaphores for sy...
Testing concurrent programs that accept data inputs is no-toriously hard because, besides the large ...
We address the problem of detecting race conditions in programs that use semaphores for synchronizat...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
Abstract—One approach to testing concurrent programs, called reachability testing, generates synchro...
Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of...
Parallel and distributed programming languages often include explicit synchronization primitives, su...
Testing concurrent programs that accept data inputs is notoriously hard because, beside the large nu...
<p>The challenge this thesis addresses is to speed up the development of concurrent programs by incr...
Developing correct, scalable and efficient concurrent programs is a complex and difficult task, due ...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Multicore is here to stay. To keep up with the hardware innovation, software developers mustmove fro...
Testing using manually generated test cases is the primary technique used in industry to improve rel...