Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Parallel Symbolic Execution System Based on Multi-agent Distributed Scheduling

A symbolic execution and distributed technology, applied in the direction of concurrent instruction execution, machine execution device, multiprogramming device, etc., can solve the problems of affecting parallel efficiency, unknown shape, unbalanced load distribution, etc., to achieve flexible technical management and improve parallelism. The effect of efficiency

Active Publication Date: 2019-02-12
THE PLA INFORMATION ENG UNIV
View PDF4 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0004] The present invention aims at the problem that the current test scheduling strategy based on parallel symbol execution is unknown due to the unknown shape of the program execution subtree, resulting in unbalanced load distribution and affecting parallel efficiency, and proposes a parallel symbol execution system based on multi-Agent scheduling.

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
  • Parallel Symbolic Execution System Based on Multi-agent Distributed Scheduling
  • Parallel Symbolic Execution System Based on Multi-agent Distributed Scheduling

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0040] Example 1: Combining figure 1 , a parallel symbolic execution system based on multi-agent scheduling, including a distributed scheduling and monitoring unit 10, an execution trace generation unit 11, a symbolic execution unit 12 and a constraint solving unit 13; the distributed scheduling and monitoring unit 10 is used for Assignment and scheduling of tasks, monitoring the node idle status of the execution trace generation unit 11, the symbol execution unit 12 and the constraint solving unit 13, so as to maintain load balance;

[0041]The execution trace generation unit 11 includes a plurality of execution trace generation nodes 111, each node has the same structure and function, can independently perform related functions, and includes an Agent1111 for communicating with the distributed scheduling and monitoring unit 10; wherein , the execution trace generation node 111 is used to drive the specific input to actually execute the program under test, detect whether an ab...

Embodiment 2

[0068] Example 2, combined with figure 2 , the parallel symbolic execution system based on multi-agent scheduling includes: a distributed scheduling and monitoring unit 10 , an execution trace generation unit 11 , a symbolic execution unit 12 and a constraint solving unit 13 .

[0069] The distributed scheduling and monitoring unit 10 is used to implement pipeline parallel scheduling for the execution trace generation unit, the symbolic execution unit and the constraint solving unit. The purpose of job scheduling is to increase the degree of parallel operation of the system and avoid idle nodes. The producers and consumers of the three task queues of the parallel scheduling service are as follows: 1. The producer of the input sample queue 103 is the constraint solving unit 13, and the consumer is the execution trace generation unit 11; 2. The producer of the execution trace queue 105 is the execution trace generating unit 11 , and the consumer is the symbolic execution unit ...

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 parallel symbol execution system based on multi-Agent distributed scheduling. The system comprises a distributed scheduling and monitoring unit, an execution track generating unit, a symbol execution unit and a constraint solving unit. The distributed scheduling and monitoring unit is used for achieving pipeline parallel scheduling on the execution track generating unit, the symbol execution unit and the constraint solving unit, the parallel operating degree of the system is increased, and loads are balanced. The execution track generating unit is used for actually executing specific input drive measured programs, detecting whether abnormalities are generated or not, recording a program execution instruction sequence and generating a program execution track in an intermediary language expression form through analysis and transformation. The symbol execution unit is used for conducting symbolic simulation execution on the program execution track, collecting constraint conditions of route branches and generating a corresponding constraint expression. The constraint solving unit is used for conducting depth-first negation solving on the constraint expression, generating a new input sample, marking the negated expression and avoiding repeated route analysis. A realized task scheduling policy can realize pipeline parallelism, and the problem of load imbalance caused by the fact that only program execution sub-trees serve as scheduling loads is avoided.

Description

technical field [0001] The invention is a software vulnerability parallel detection system, which belongs to the technical field of software engineering, and in particular relates to a parallel symbol execution system based on multi-Agent scheduling. Background technique [0002] The emergence of parallel symbolic execution technology is to alleviate the problem of path space explosion in symbolic execution. Symbolic execution may become the core method to solve the problem of software automation testing. However, as people's demand for software functional applications continues to increase, the size and complexity of a single software will also continue to expand. Due to the huge number of software branches and the number of loops, there is an exponentially growing execution path, which leads to the potential path explosion problem of symbolic execution in practical applications, which has become the bottleneck of symbolic execution applications. In order to effectively a...

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 Patents(China)
IPC IPC(8): G06F9/48G06F9/38
CPCG06F9/3867G06F9/4881G06F2209/483
Inventor 魏强曹琰武泽慧柳晓龙麻荣宽曾杰
Owner THE PLA INFORMATION ENG UNIV
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products