Concurrent program data competition instruction level positioning method

A technology of program data and positioning method, which is applied in the direction of electrical digital data processing, instrumentation, error detection/correction, etc., and can solve problems such as inability to compete for data and command positioning

Active Publication Date: 2019-07-26
XIAN UNIV OF POSTS & TELECOMM
View PDF8 Cites 6 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0006] The main problem to be solved by the present invention is that the existing detection method cannot realize the positioning of concurrent program data competition instruction pairs. The present invention performs dynamic instruction-level instrumentation on the concurren

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
  • Concurrent program data competition instruction level positioning method
  • Concurrent program data competition instruction level positioning method
  • Concurrent program data competition instruction level positioning method

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0024] The following in conjunction with example specifically illustrates the implementation of the data competition positioning method of the present invention, but the implementation of the present invention is not limited thereto, the experimental environment of this experiment is: operating system Ubuntu116.04, stake tool: Intel Corporation's dynamic stake tool PIN, The version number is 3.4.

[0025] Such as figure 1 As shown, a concurrent program data race instruction-level positioning method includes the following steps:

[0026] exist figure 2 In the example code datarace_true shown, the main thread performs a read operation on the shared variable global, the sub-threads thrd1 and sub-thread thrd2 respectively perform a write operation on the shared variable global, and the sub-thread thrd3 performs a read operation on the shared variable global operation, because all the operations of the main thread and the three sub-threads are not protected by any locks, so they...

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 discloses a concurrent program data competition instruction level positioning method for solving the problem of concurrent program data competition positioning, and belongs to the technical field of software testing. The method comprises the following steps: firstly, carrying out data competition preliminary detection on instruction information obtained in the dynamic binary instrumentation process of a concurrent program by utilizing a data competition definition, and setting a vector clock for each thread to track and record the time of accessing a shared memory by the thread;and judging whether data competition occurs or not by judging whether the vector clocks of the threads threaded by the instructions have a partial order relationship or not according to the happens-before rule, and forming a final data competition positioning report. The invention provides a concurrent program data competition instruction level positioning method, effectively reduces the false alarm rate and the missing alarm rate of detection, and is used for improving the precision and efficiency of concurrent program testing.

Description

technical field [0001] The invention belongs to the technical field of software testing, specifically relates to the problem of precise positioning of data competition in concurrent program testing, and provides a method for dynamically tracking each instruction of a program and traversing all pairs of instructions to locate data competition, and mainly solves the problem in concurrent program testing How to detect the location of instructions where data races occur, and improve the accuracy and efficiency of software testing. Background technique [0002] In the era of big data, the scale of software and the amount of data are increasing, and the multi-core hardware of computers is also developing rapidly. The defects caused by multi-threaded concurrent programs are also spreading quickly. Due to the inherent concurrency and uncertainty of multi-threaded programs, these defects It is difficult to detect, debug, and repair. These problems bring great challenges to the analys...

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
IPC IPC(8): G06F11/36
CPCG06F11/3688G06F11/3692
Inventor 孙家泽阳伽伟王曙燕
Owner XIAN UNIV OF POSTS & TELECOMM
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