Software fault analysis method based on multi-sample difference comparison
A software fault and analysis method technology, applied in the field of software analysis, can solve problems such as inability to locate complex faults, and achieve the effects of solving complex faults that cannot be located, improving work efficiency, and improving accuracy
- Summary
- Abstract
- Description
- Claims
- Application Information
AI Technical Summary
Problems solved by technology
Method used
Image
Examples
Embodiment 1
[0017] Example 1: see figure 1 , The present invention uses the software failure analysis method of multi-sample difference comparison, and its steps include:
[0018] 1) Disassemble and dynamically insert the analyzed program;
[0019] 2) Track and record the execution instruction flow of the program to be analyzed, and construct the control flow diagram of the program with the basic block as the smallest unit. The basic block is defined as the instruction from the previous jump instruction to the next jump instruction in the execution instruction flow set;
[0020] 3) Select the data processing entry point as the base point for comparison, build a multi-sample difference tree model, group multiple samples in pairs to compare the control flow graph, find the key differences that lead to different branches of the control flow, and obtain incorrect data input The critical path from point to point of difference.
Embodiment 2
[0021] Example 2: see figure 2 , The software failure analysis method using multi-sample difference comparison of this embodiment is different from the first embodiment: further, in step 1), the binary data stream is reversely restored to assembly code according to the x86 instruction set specification, according to The jump instruction divides the assembly code into multiple basic blocks, and the flow is as follows:
[0022] (1) Analyze the PE structure of the executable file, including the load base address of the executable file, the name of the module to be loaded, the section table (Section Table), the file size, the alignment, the alignment granularity, and the import table (Import Table) Output table (Export Table) and other information.
[0023] (2) Identify import and export functions, combine the structure of the PE file with the information output by the disassembly, identify the import and export functions of the executable file, including their function names and addr...
Embodiment 3
[0028] Example three: see image 3 This embodiment uses the software failure analysis method of multi-sample difference comparison. The difference from the second embodiment is that the process of dynamic instrumentation of the analyzed program is as follows:
[0029] 1) Establish a dynamic debugging framework: Establish a standard debugging framework in accordance with the Windows system software debugging framework provided by Microsoft. The framework sets memory breakpoints, environment context sampling, and instruction flow tracking and recording debugging characteristics based on basic blocks;
[0030] 2) Instruction flow single-step tracking, condition tracking and data flow read-write tracking.
[0031] It includes the following steps:
[0032] (1) Establish a dynamic debugging framework: Establish a standard debugging framework in accordance with the Windows system software debugging framework provided by Microsoft. Various debugging features are added to the framework accordin...
PUM
Abstract
Description
Claims
Application Information
- R&D Engineer
- R&D Manager
- IP Professional
- Industry Leading Data Capabilities
- Powerful AI technology
- Patent DNA Extraction
Browse by: Latest US Patents, China's latest patents, Technical Efficacy Thesaurus, Application Domain, Technology Topic, Popular Technical Reports.
© 2024 PatSnap. All rights reserved.Legal|Privacy policy|Modern Slavery Act Transparency Statement|Sitemap|About US| Contact US: help@patsnap.com