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

A hardware-based high-level program dynamic control flow tracking method and device

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

Active Publication Date: 2022-04-22
NANJING UNIV
View PDF4 Cites 0 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
  • A hardware-based high-level program dynamic control flow tracking method and device
  • A hardware-based high-level program dynamic control flow tracking method and device
  • A hardware-based high-level 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 high-level program dynamic control flow tracking method and device. The method statically analyzes the program to be traced, generates a control flow graph, a class inheritance graph, and a call graph, and collects bytecode instruction templates, execution information, and trace data by executing the program to be traced through a virtual machine. Then decode and match the tracking data according to the thread, generate the corresponding execution flow graph against the control flow graph, and finally judge whether there is any missing execution flow data. If so, restore the execution flow graph as much as possible and restore the missing part. The final output execution flow graph. The invention realizes the control flow tracking of the high-level language program by using the hardware tracking module, and solves the problem of inconsistency between the output tracking data of the hardware and the storage speed of the disk by performing 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 Patents(China)
IPC IPC(8): G06F11/36G06F9/455
CPCG06F11/3636G06F9/45558G06F2009/45591
Inventor 左志强吉凯王乙飞陶威王林章李宣东
Owner NANJING UNIV