首页 | 本学科首页   官方微博 | 高级检索  
     


Scaling model checking of dataraces using dynamic information
Authors:Ohad Shacham  Mooly Sagiv  Assaf Schuster
Affiliation:1. IBM Haifa Research Lab, Haifa, Israel;2. School of Computer Science, Tel Aviv University, Israel;3. Computer Science Department, Technion, Haifa, Israel
Abstract:Dataraces in multithreaded programs often indicate severe bugs and can cause unexpected behaviors when different thread interleavings are executed. Because dataraces are a cause for concern, many works have dealt with the problem of detecting them. Works based on dynamic techniques either report errors only for dataraces that occur in the current interleaving, which limits their usefulness, or produce many spurious dataraces. Works based on model checking search exhaustively for dataraces and thus can reveal even those that occur in rarely executed paths. However, the applicability of model checking is limited because the large number of thread interleavings in realistic multithreaded programs causes state space explosion. In this work, we combine the two techniques in a hybrid scheme which overcomes these difficulties and enjoys the advantages of both worlds. Our hybrid technique succeeds in providing thread interleavings that prove the existence of dataraces in realistic programs. The programs we experimented with cannot be checked using either an ordinary industrial strength model checker or bounded model checking.
Keywords:Datarace   Data race detection   Model checking   Lockset   Multithreading
本文献已被 ScienceDirect 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号