Font Size: a A A

Research On Static Detection Model Of Multi Thread Data-race

Posted on:2022-09-30Degree:MasterType:Thesis
Country:ChinaCandidate:J Y LiuFull Text:PDF
GTID:2518306353484544Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
With the popularity of multi-core processor in computer equipment,the degree of using multi-threaded programms and concurrent programs in software is also increasing.The benefits of multi-thread programs is that the efficiency of the program has been greatly improved.However,due to the uncertainty of multi-threaded programs,there will inevitably be concurrent problems such as data-race and atomicity violation in the process of program running.These problems are not easy to be discovered and repaired.Once exposed in the production operation,it may bring great losses.Since the root cause of most of the concurrency problems is data-race,it is necessary to detect data-race.In order to solve the above problems,this thesis proposes a static detection method for data-race of multi-threaded programs.The LLVM/Clang(Low Level Virtual Machine/Clang Static Analyzer)compiler technology is used to collect the information of the source code and extract the variables,function,expressions,statements and other information in the multithreaded source code.By preprocessing the information,the source code information and the configuration file information of the programming environment are integrated,and finally the XML reading and writing model is constructed.Aiming at the XML read-write model,the method of Depth First Traversal is used to construct the search space,which simulates all path information generated by multi-threaded program scheduling.According to the conditions of data-race,the competitive sequence model is constructed and classified.For each path,a datarace sequence model matching algorithm is used to obtain all suspicious sequences with datarace.Finally,this thesis proposes a method of competitive result analysis based on user acceptability,for all suspicious data-race sequences the results of data-race are filtered by combining with user annotation information.The accuracy of data-race static detection is improvedBased on the research of data-race static detection model,this thesis develops a data-race static detection tool Detector,which is used to detect defect source codes of embedded platform C6678.The results show that the Detector can detect the data-race of source code well and meet the personalized needs of users.Compared with the data race detection tool threadsanitizer,the experimental results show that the competition reports detected by Detector are more readable,and considering the user's acceptability of some competition sequences,the false positives of data-race detection are reduced.
Keywords/Search Tags:multi-thread program, data-race, static analyze, acceptability
PDF Full Text Request
Related items