Constraint solving based atomic violation detection method

A technology of constraint solving and detection method, which is applied in the field of software testing, can solve the problems of high missed detection rate, high false detection rate of detection results, limited search and interweaving space, etc., and achieve the effect of improving accuracy and good ability to detect atomic violations

Active Publication Date: 2017-06-13
SOUTHEAST UNIV
View PDF4 Cites 3 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, many existing runtime prediction techniques either have a high false detection rate due to the use of a conservative concurrent program model, or have a high false detection rate due to the limited search interleaving space.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Constraint solving based atomic violation detection method
  • Constraint solving based atomic violation detection method

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0035] The present invention utilizes the original execution trajectory of concurrent programs, combines various error modes of atomic violations, establishes the constraint relationship between the execution sequence of events in the original execution trajectory, and solves it. When the constraint has a solution, the new execution trajectory corresponding to the solution There is an atomic violation phenomenon in , otherwise it does not exist, specifically, the following steps are included:

[0036] 1. Get the execution track:

[0037] (1) Instrument the original program to record the required trajectory execution information during operation;

[0038] Sequentially scan each statement in the program under test, insert codes before and after specific statements, such as: synchronization statement, assignment statement, branch statement, etc., collect information related to these statements during actual execution to combine into events and save them in in the database;

[0...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention provides a constraint solving based atomic violation detection method. The method includes: determining an atomic region by the aid of an original execution trace of a concurrent program; establishing constraint relation of execution sequence among events in the original execution trace by combining with various error modes of atomic violation; performing constraint solving by the aid of a Z3 solver and converting the atomic violation detection problem into a solving problem of constraint equation. The method belongs to runtime prediction technique, an unexposed atomic violation error hidden in the original execution trace can be solved according to constraints, and better capability in detecting atomic violation is achieved; a set of constraints is established in an intertwining manner for the original program trace and unserializable executions, the atomic violation detection problem is converted into the solving problem of the constraints, and precision in atomic violation detection can be improved.

Description

[0001] Technical field [0002] The invention relates to the technical field of software testing, in particular to an atomic violation detection method based on constraint solving. Background technique [0003] With the popularity of multi-core processors, concurrent programming technology has been widely used. Due to the large execution interleaving space and uncertain operation of concurrent programs, it is very difficult to test, debug and repair concurrent program errors. Among them, atomic violation is the most common concurrency error, accounting for about 65% of non-deadlock type concurrency errors. Existing atomic violation detection techniques can be roughly divided into three categories: static detection techniques, runtime monitoring techniques and runtime prediction techniques. Among them, static detection technology can identify potential atomic violation errors at the program source code level, but it cannot handle other types of synchronization primitives othe...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F11/36
CPCG06F11/3692
Inventor 戚晓芳周敏敏靳娜娜
Owner SOUTHEAST UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products