TY - GEN
T1 - Dynamic validation of contracts in concurrent code
AU - Fiedor, Jan
AU - Letko, Zdenĕk
AU - Lourenço, João
AU - Vojnar, Tomáš
N1 - sem pdf.
PY - 2015
Y1 - 2015
N2 - Multi-threaded programs allow one to achieve better performance by doing a lot of work in parallel using multiple threads. Such parallel programs often contain code blocks that a thread must execute atomically, i.e., with no interference from the other threads of the program. Failing to execute these code blocks atomically leads to errors known as atomicity violations. However, frequently it not obvious to tell when a piece of code should be executed atomically, especially when that piece of code contains calls to some third-party library functions, about which the programmer has little or no knowledge at all. One solution to this problem is to associate a contract with such a library, telling the programmer how the library functions should be used, and then check whether the contract is indeed respected. For contract validation, static approaches have been proposed, with known limitations on precision and scalability. In this paper, we propose a dynamic method for contract validation, which is more precise and scalable than static approaches.
AB - Multi-threaded programs allow one to achieve better performance by doing a lot of work in parallel using multiple threads. Such parallel programs often contain code blocks that a thread must execute atomically, i.e., with no interference from the other threads of the program. Failing to execute these code blocks atomically leads to errors known as atomicity violations. However, frequently it not obvious to tell when a piece of code should be executed atomically, especially when that piece of code contains calls to some third-party library functions, about which the programmer has little or no knowledge at all. One solution to this problem is to associate a contract with such a library, telling the programmer how the library functions should be used, and then check whether the contract is indeed respected. For contract validation, static approaches have been proposed, with known limitations on precision and scalability. In this paper, we propose a dynamic method for contract validation, which is more precise and scalable than static approaches.
KW - JAVA PROGRAMS
KW - Computer Science
KW - Artificial Intelligence
KW - Robotics
KW - Computer Science, Information Systems
UR - http://www.scopus.com/inward/record.url?scp=84952361473&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-27340-2_69
DO - 10.1007/978-3-319-27340-2_69
M3 - Conference contribution
AN - SCOPUS:84952361473
VL - 9520
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 555
EP - 564
BT - Computer Aided Systems Theory – EUROCAST 2015 - 15th International Conference, Revised Selected Papers
PB - Springer-Verlag
T2 - 15th International Conference on Computer Aided Systems Theory, EUROCAST 2015
Y2 - 8 February 2015 through 13 February 2015
ER -