Data race false positive reduction method based on control flow

A technology of data competition and control flow, applied in software testing/debugging, multi-programming devices, etc., can solve the problems of increasing the cost of analyzing the correctness of C source programs, covering up data competition, etc., and achieve the goal of simple implementation and reduction of data competition False positives, low complexity effects

Active Publication Date: 2014-03-26
BEIJING INST OF CONTROL ENG
View PDF2 Cites 2 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0006] Therefore, a large number of reports of such harmless data races will greatly increase the cost of analyzing the correctness of C source programs, and even cover up harmful data races

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
  • Data race false positive reduction method based on control flow
  • Data race false positive reduction method based on control flow
  • Data race false positive reduction method based on control flow

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0024] By analyzing the syntax of the C program, the interrupt context of the C program is constructed and shared variables are identified. By induction, if a shared variable satisfies the following conditions at the same time, it is considered that the data competition related to the shared variable is harmless.

[0025] 1. The frequency of interrupts is lower than the cycle execution frequency of the main program, that is, the interrupts occur at most once in each cycle;

[0026] 2. The value of the shared variable in the main program and interrupt is two-state (for example, TRUE and FALSE);

[0027] 3. There is only one write operation to the variable in the interrupt service routine, and the variable is assigned one of the states (for example, TRUE);

[0028] 4. There is one read operation and one write operation for this variable in the main program;

[0029] 5. The read operation of the variable in the main program is the condition of the if statement or the loop state...

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

A data race false positive reduction method based on control flow is an improved method for spaceflight embedded C routine data race detection, and aims to reduce false positives and improve analysis accuracy. It is generally recognized that when a main routine and an interrupt service routine have shared variables, if at least one of the main routine and the interrupt service routine conducts write operation on the shared variables, data races can probably occur in the variables. Based on a grammatical analysis technology, by the combination of field characteristics, harmless data races are recognized, and the false positive rate of data race detection is reduced. According to the check method, the false positive rate of data race detection is reduced, and truly harmful data races can be easily found.

Description

technical field [0001] The invention relates to a data competition detection method for an aerospace embedded C program, which is used for identifying harmless data competition during program operation and reducing the false alarm rate of data competition detection. Background technique [0002] The aerospace embedded C program generally adopts the main program-interrupt structure. The main program is called regularly by the control cycle. During the execution of the main program, if an interrupt signal occurs, the main program is suspended and transferred to the corresponding interrupt service routine. Generally speaking, aerospace embedded C programs have multiple interrupts, and these interrupts have different priorities. When the interrupt service routine corresponding to the low-priority interrupt is executed, if a high-priority interrupt signal occurs, the current interrupt service routine is suspended and transferred to the interrupt service routine corresponding to...

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/36G06F9/46
Inventor 顾斌王政董晓刚綦艳霞陈尧赵雷陈睿
Owner BEIJING INST OF CONTROL ENG
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