Unlock instant, AI-driven research and patent intelligence for your innovation.

Hardware-based advanced program dynamic control flow tracking method and device

A dynamic control and advanced program technology, applied in the direction of program control device, program control design, software testing/debugging, etc., can solve problems such as structural differences and achieve the effect of reducing impact

Active Publication Date: 2021-06-04
NANJING UNIV
View PDF4 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

What's more troublesome is that various check codes (such as dyslexia and boundary checks) may be inserted into the code at runtime, resulting in a huge structural difference between the code written by the developer and the actual CPU execution.

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
  • Hardware-based advanced program dynamic control flow tracking method and device
  • Hardware-based advanced program dynamic control flow tracking method and device
  • Hardware-based advanced program dynamic control flow tracking method and device

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0054] The present invention will be described in further detail below in conjunction with the accompanying drawings.

[0055] In this embodiment, a hardware-based high-level program dynamic control flow tracking method is to track the dynamic control flow of a Java language program, which is implemented by a software program running on a computer with an Intel processor. For Intel processors, the hardware trace is based on the Intel Processor Trace (Intel PT) development kit. Corresponding to the Java language program, the virtual machine is a Java virtual machine. refer to figure 1 , the method of this embodiment includes the following steps:

[0056] S1: Obtain the program to be tracked;

[0057] S2: Perform static analysis on the program to be tracked, and generate a control flow graph, a class inheritance graph, and a call relationship graph;

[0058] S3: collecting the bytecode instruction template, execution information and tracking data when the program to be track...

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 hardware-based advanced program dynamic control flow tracking method and device. The method comprises the following steps: statically analyzing a to-be-tracked program, generating a control flow graph, a class inheritance graph and a call graph, and executing the to-be-tracked program through a virtual machine to collect a byte code instruction template, execution information and tracking data. then decoding and matching the tracking data according to a thread, generating a corresponding execution flow graph according to a control flow graph, finally, judging whether the execution flow data is missing, if yes, restoring the execution flow graph as far as possible, restoring the missing part, and finally outputting the execution flow graph . According to the method and device, the control flow of the high-level language program is tracked by utilizing the hardware tracking module, and the problem that the tracking data output by the hardware is inconsistent with the storage speed of the disk is solved by executing the filling analysis processing of the flow data.

Description

technical field [0001] The present invention relates to dynamic control flow tracing for hardware-based high-level program execution. Background technique [0002] Most modern CPUs are equipped with hardware trace modules, such as Intel Processor Trace (PT) and ARM Embedded TraceMacrocell (ETM), which provide efficient control flow trace capabilities. Control flow tracing plays an important role in a wide range of software engineering activities, including testing, debugging, and performance analysis. For example, if we obtain the complete control flow tracking information of a program, various execution information such as method and statement coverage, path coverage and call information can be easily calculated. [0003] Existing tracking technologies mainly include two categories: software tracking and hardware tracking. Software tracing typically instrumentes user source code, is often compiler architecture dependent and has high runtime overhead. Compared with softwa...

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/455
CPCG06F11/3636G06F9/45558G06F2009/45591
Inventor 左志强吉凯王乙飞陶威王林章李宣东
Owner NANJING UNIV