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

Dynamic slicing system based on execution tract of program

A program execution and trajectory technology, applied in the field of dynamic slicing system based on program execution trajectory, can solve the problems of low efficiency and precision

Inactive Publication Date: 2012-11-21
CHINA UNIV OF MINING & TECH
View PDF3 Cites 10 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] In order to overcome the problem of low efficiency and precision of the existing dynamic slicing algorithm, the present invention provides a dynamic slicing system based on the program execution trajectory, the dynamic slicing system The method of slicing according to the stack trace first uses the information of the debugger to record the program execution trace, and finds out the statements involved in the execution; while recording the program execution trace, calculates the control dependencies of the program to obtain the program slice. There is no need to backtrack the program during the process, which greatly improves the efficiency of the algorithm, and improves the accuracy of slicing according to the definition and reference information of control dependencies and variables

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
  • Dynamic slicing system based on execution tract of program
  • Dynamic slicing system based on execution tract of program
  • Dynamic slicing system based on execution tract of program

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0046] In order to facilitate slicing programs using program execution trajectories, we first define the dependencies of the slicing process:

[0047] Definition 1 Control dependency: If the statements u and w in the program meet the following three conditions, then it is said that w directly controls and depends on u;

[0048] 1) There is a path P from u to w;

[0049] 2) From every node v on P except u and w, node w is its necessary backward node;

[0050] 3) Node w is not a necessary backward node of node u.

[0051] Definition 2 Control dependency graph G(N,E), N represents the node set corresponding to the statement in the program, E represents the edge set, and each edge represents w control depends on u.

[0052] Definition 3 Data dependence: If in the program, the statement u defines the variable v, w refers to the value of the variable v, and there is a path between u and w, and v is not redefined on this path, then it is called w Direct data about va...

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 relates to a dynamic slicing system based on the execution tract of a program, which comprises functions as follows: acquiring execution path information of the program, statically analyzing a class file of the Java, analyzing the attached variable set of each sentence of each sequence in the execution track of the program, acquiring a direct control dependence junction point of each sentence in a source program, executing additional control dependence of each sentence of each sequence in the execution tract of the program and dynamically slicing the process internal program of the Java. Retrospection of the program is not required during program slicing; efficiency of algorithm is greatly improved; and precision of the program slicing is advanced according to a control dependence relationship and definition reference information of variable.

Description

technical field [0001] The invention relates to a method for program slicing in the process of software development, in particular to a dynamic slicing system based on program execution track that can not only effectively process complex large-scale programs but also improve slicing precision. Background technique [0002] As the scale of software increases day by day, traditional debugging techniques cannot effectively deal with complex and large programs. Large-scale application systems usually have hundreds of lines of code, and program developers are often unable to quickly understand the code in the program, which brings great difficulties to program debugging and maintenance. Program slicing is a program analysis technique that is used to decompose a large program into small pieces, delete some statements that are not related to the points of interest, and help developers extract interesting parts from them. Its concept and principle were first established in 1979 ...

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
Inventor 姜淑娟王兴亚李海洋张艳梅李威
Owner CHINA UNIV OF MINING & TECH
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