Dynamic and static fusion binary translation method and system based on dynamic link library

A dynamic link library, binary technology, applied in the direction of program control design, program control device, program loading/starting, etc., can solve the problems of translation execution efficiency and overhead impact, improve code quality and overall system performance, and reduce translation costs. The effect of optimizing overhead and improving execution efficiency

Inactive Publication Date: 2020-09-04
PLA STRATEGIC SUPPORT FORCE INFORMATION ENG UNIV PLA SSF IEU
View PDF5 Cites 4 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, due to the limitation of various factors in the execution process of the existing dynamic and static combined binary translation, the static exe

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 and static fusion binary translation method and system based on dynamic link library
  • Dynamic and static fusion binary translation method and system based on dynamic link library

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0020] In order to make the purpose, technical solution and advantages of the present invention more clear and understandable, the present invention will be further described in detail below in conjunction with the accompanying drawings and technical solutions.

[0021]The binary translation process is similar to the traditional compilation process, and can be divided into three stages: front-end, middle-end and back-end: 1) Front-end decoder of source binary code: according to the instruction structure characteristics of the source machine and the format of the executable file, Binary code is processed through instruction pattern matching to complete a function similar to disassembly. This part needs to decode the binary code accurately, deal with issues such as indirect jump / indirect call, self-modifying code, identification and analysis of data content, etc. The output of the decoder is some form of abstract intermediate representation for analysis and optimization. 2) Mid...

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 belongs to the field of software transplantation, and particularly relates to a dynamic and static fusion binary translation method and system based on a dynamic link library. The methodincludes: dividing a program by taking a function as a unit, and if the function is a third-party library function, executing the program in a local library replacement mode; if the indirect jump branch instruction exists in the function, placing the function in a dynamic translator part for translation execution, and if the indirect jump branch instruction does not exist in the function, statically translating the function by taking a basic block as a unit, recording relocation information translated by the function, and generating a function relocation information table; analyzing and optimizing the translated target code according to the static analysis information and the relocation information, and generating a dynamic link library for calling the target program in the dynamic execution process; and during dynamic execution, preferentially executing the optimized function according to the relocation information table and the dynamic link library. According to the method, the advantages of static binary translation offline optimization are fully utilized, codes needing to be translated and optimized in the dynamic execution period are statically executed, translation expenditure is reduced, and execution efficiency is improved.

Description

technical field [0001] The invention belongs to the technical field of software transplantation, and in particular relates to a binary translation method and system based on a dynamic link library combining dynamic and static. Background technique [0002] The processor is the core component of the modern computer architecture, and the design and manufacturing technology of the processor is the core technology of the entire information industry. For different functional requirements and application scenarios, a large number of processor architectures including x86, Alpha, PowerPC, IA-64, ARM, MIPS, Shenwei, and Loongson have emerged. Different processor architecture designs use different instruction sets, which brings software compatibility problems, that is, binary executable programs generated for a certain processor cannot be directly run on other processors with incompatible instruction sets. In this case, binary translation technology came into being. A binary transla...

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): G06F8/76G06F9/445
CPCG06F8/76G06F9/44521
Inventor 庞建民王军单征岳峰李明亮傅立国张家豪谭捷祝迪王其涵郭佳郁
Owner PLA STRATEGIC SUPPORT FORCE INFORMATION ENG UNIV PLA SSF IEU
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products