scholarly journals The anchor verifier for blocking and non-blocking concurrent software

2020 ◽  
Vol 4 (OOPSLA) ◽  
pp. 1-29
Author(s):  
Cormac Flanagan ◽  
Stephen N. Freund
Keyword(s):  
Author(s):  
Ernst G. Ulrich ◽  
Vishwani D. Agrawal ◽  
Jack H. Arabian

Author(s):  
GWAN-HWAN HWANG ◽  
KUO-CHUNG TAI ◽  
TING-LU HUANG

Concurrent programs are more difficult to test than sequential programs because of non-deterministic behavior. An execution of a concurrent program non-deterministically exercises a sequence of synchronization events called a synchronization sequence (or SYN-sequence). Non-deterministic testing of a concurrent program P is to execute P with a given input many times in order to exercise distinct SYN-sequences. In this paper, we present a new testing approach called reachability testing. If every execution of P with input X terminates, reachability testing of P with input X derives and executes all possible SYN-sequences of P with input X. We show how to perform reachability testing of concurrent programs using read and write operations. Also, we present results of empirical studies comparing reachability and non-deterministic testing. Our results indicate that reachability testing has advantages over non-deterministic testing.


Sign in / Sign up

Export Citation Format

Share Document