【24h】

Instruction Emulation and OS Supports of a Hybrid Binary Translator for x86 Instruction Set Architecture

机译:用于x86指令集体系结构的混合二进制转换器的指令仿真和OS支持

获取原文
获取原文并翻译 | 示例

摘要

Binary translation is one of the most important techniques of virtualization. The main purpose of a binary translator (BT) is to translate an executable from a source instruction set architecture (ISA) to a target ISA. Traditionally, there are two types of binary translators: static binary translator (SBT) and dynamic binary translator (DBT). In recent years, a new type of BT called hybrid binary translator (HBT) was proposed, which translates the source executable first at static time, and then, at run time, if the execution of the target executable emits an exception because of reaching statically untranslated code, it switches to the attached dynamic translator for translating these code. Therefore, an HBT may have the merits of both good performance of SBT and easy handling of code discovery and code location problems of DBT. Nowadays, massive application programs have been developed for x86 platforms, and thus, many binary translators have been proposed for x86 ISA. However, due to the characteristics of CISC architecture of x86, for example, variable-length instruction format, the BT designed for it previously usually apply dynamic translation strategy or make use of profiling data for resolving the code discovery and code location problems. In this paper, we present an HBT which supports x86 ISA and emulates the execution behavior of an x86 executable under Linux operation system. In our x86-32 to x86-64 translation experiments, the target executables translated by our HBT outperform that of QEMU on most programs of EEMBC benchmark suite.
机译:二进制翻译是虚拟化最重要的技术之一。二进制转换器(BT)的主要目的是将可执行程序从源指令集体系结构(ISA)转换为目标ISA。传统上,有两种类型的二进制转换器:静态二进制转换器(SBT)和动态二进制转换器(DBT)。近年来,提出了一种新型的BT,称为混合二进制翻译器(HBT),它首先在静态时间翻译源可执行文件,然后在运行时翻译目标可执行文件的执行是否由于静态到达而引发异常。未翻译的代码,它将切换到附加的动态翻译器以翻译这些代码。因此,HBT可能既具有SBT的良好性能,又具有易于处理DBT的代码发现和代码位置问题的优点。如今,已经为x86平台开发了大量的应用程序,因此,已经为x86 ISA提出了许多二进制转换器。但是,由于x86的CISC体系结构的特性(例如可变长度指令格式),以前为其设计的BT通常以前采用动态转换策略或利用概要分析数据来解决代码发现和代码位置问题。在本文中,我们提出了一种HBT,它支持x86 ISA并模拟Linux操作系统下x86可执行文件的执行行为。在我们的x86-32到x86-64转换实验中,在大多数EEMBC基准套件程序中,由HBT转换的目标可执行文件的性能优于QEMU。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号