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

Block-based method for scanning object code and replacing sensitive instruction

A technology of sensitive instructions and object codes, applied in the field of binary translation, can solve problems such as hardware exceptions and a large amount of system overhead

Inactive Publication Date: 2010-01-20
NAT UNIV OF DEFENSE TECH
View PDF0 Cites 21 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, the main disadvantage of using INT0 / INT3 instruction replacement is that a hardware exception will be triggered every time the instruction is executed, especially when the replaced instruction is called frequently, the repeated switching of the hardware state will cause a lot of system overhead

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
  • Block-based method for scanning object code and replacing sensitive instruction
  • Block-based method for scanning object code and replacing sensitive instruction
  • Block-based method for scanning object code and replacing sensitive instruction

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0074] figure 1 It is the overall flowchart of the present invention

[0075] 1. Create and initialize a global data structure.

[0076] 2. Obtain the initial execution address of the GOS kernel from the input parameters of the GOS kernel loader, record it as the first scan entry address, and then dynamically scan the first scan entry address:

[0077] 2.1. Use the scan status query method to check the scan status of the first scan entry address: if it has been scanned, go to 3; if it has not been scanned, record the first scan entry address as the starting boundary of the basic block, and go to 2.2.

[0078] 2.2. Basic block scanning is performed on the starting boundary of the basic block.

[0079] 2.3 Perform local replacement of sensitive instructions based on the replacement block for sensitive instructions in the queue of sensitive instructions to be converted.

[0080] 2.4 Traverse the entry address queue to be scanned, and delete all nodes whose index value is the s...

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 block-based method for scanning object code and replacing sensitive instruction, aiming to provide a method of searching a minimum object code block which contains an sensitive instruction and is longer than JMP and using JMP to replace the minimum object code block when the sensitive instruction is shorter than JMP. The invention has the technical scheme that the method carries out dynamic scanning to a first scanning entry, wherein, the dynamic scanning mainly comprises basic block scanning for the initial boundary of a basic block and local sensitive instruction replacement for the sensitive instruction in a sensitive instruction queue to be transformed; the method executes GOS kernel code from the first scanning entry address until hardware interrupt or abnormal phenomena happens, or transforming code of an indirect control and transform instruction is executed; the entry address for GOS interrupt and abnormal exception handler or the destination address for indirectly controlling and transmitting instructions can be set as the first scanning entry address to circularly carry out the dynamic scanning. By adopting the block-based method, using INT0 / INT3 instruction for replacement can be avoided to the maximum extent, and the BT virtualization performance can be effectively improved.

Description

technical field [0001] The invention relates to a binary translation (Binary Translation, BT) method oriented to the virtualization of an X86 architecture operating system, in particular to a method for scanning object codes and replacing sensitive instructions found in the scanning. Background technique [0002] In recent years, with the rapid development of hardware technology, especially the emergence of multi-core or even many-core processors, it has become an urgent market demand to improve the utilization rate of the computer system's rapidly growing computing power. Operating system virtualization technology can effectively improve the utilization rate of servers by running multiple operating systems on the same physical machine and providing services to the outside world. Therefore, it has been highly valued by various research institutions and commercial organizations. , virtual data centers and other fields have been widely used. [0003] Operating system virtuali...

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): G06F9/455G06F17/30
Inventor 张卫华刘晓建易晓东谭郁松吴庆波戴华东孔金珠
Owner NAT UNIV OF DEFENSE 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