欢迎来到天天文库
浏览记录
ID:34528122
大小:251.51 KB
页数:7页
时间:2019-03-07
《二进制翻译中的库函数识别技术研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第"+卷第,期计算机应用b6U*"+?6*,!!"##+年,月‘67KPODL:KKU05IO062M:KL*"##+文章编号:#&%(#’&("##+)#,%#(’-%#-二进制翻译中的库函数识别技术研究齐!宁,付!文,赵荣彩(信息工程学院计算机科学与技术系,河南郑州,$###")./0120234&+-*5678摘!要:体系结构的不断发展给软件开发者带来了巨大的风险,造成了新体系结构推广的困难,而二进制翻译技术使得可执行代码可自动迁移到新的体系结构。介绍了在开发一个静态二进制翻译系统(9":翻译系统)中的库函数识别技术,并提出了解决
2、库函数识别问题的新的方法。基于9:;+,体系结构的调用约定及实例分析证明,该方法是一种简单实用的库函数识别方法,经9":系统验证是有效的。关键词:库函数;二进制翻译;过程恢复;9:%+,;调用约定中图分类号:<=-&&*$,!!文献标识码::!"#$%&’()*+,+%’#-.")&-/+0.&1-)2)-1"0.3-&(&1%)-*)-,+%"+,-/(,")&->9?023@ABCD2@EF:GH623;5I0(!"#$%&’"(&)*+)’#,&"%-./"(."$(01".2()3)4567(*)%’$&/)($(08(4/(""%
3、/(49(/:"%;/&56<2"(4=2),>"($(,$###"6+2/($)4*/"+,."5:2DJKL65DMM6LIL5N0OD5OPLDK6MDMM0320Q05I2OL0MRO6M6QOJILDSDTDU6KDLM@N02SDLONDK6KPUIL0VIO0626QOND2DJIL5N0OD5OPLD*W02ILXOLI2MUIO0626QQDLMM6UPO062MQ6LIPO67IO05IUUX562TDLO023DYD5POIZUD56SDO6LP2622DJIL5N0OD5OPLDM*4、2MLD56320V023OD5N20/PD029":Z02ILXOLI2MUIO6LJIM02OL6SP5DS*[MKD50IUUXI2DJIKKL6I5N6QU0ZLILXQP25O062LD56320V023KL6ZUD7JIM30TD2*9O0MIM07KUDI2SKLI5O05IU7DON6SO6LD56320V023U0ZLILXQP25O062MZIMDS62OND5IUU023562TD2O062M6Q9:;+,IL5N0OD5OPLDI2S6ZMDLTIO0626QONDKL63LI702MOI25D*9O0MKL6TDS5、O6ZDDQQD5O0TDZXOND9":OLI2MUIO062MXMOD7*60%7&+$/5U0ZLILXQP25O062Z02ILX;OLI2MUIO062KL65DSPLDLD56TDLX9:;+,5IUU023562TD2O062率较高,几乎可以达到目标机本地代码的执行速度,缺点是对#!引言自修改代码等情况无法处理,需要依赖解释器的支持。二进制翻译使得原本为源体系结构平台]所编译得到的对二进制翻译技术的需求背景主要分如下两种情况:代码可以在目标体系结构平台<上运行。同解释或模拟的方&)将代码从遗产平台向新平台移植;")为了6、运行竞争对手的法不同,通过二进制翻译得到的代码几乎可以获得平台<的二进制代码。目前二进制翻译的研究主要包括如9W^公司本地代码的执行速度。当遗产代码只以二进制形式存在时,的_I0MX、W<是一个可变源、可二进制翻译大致分为前端、分析器和优化器以及后端三变目标的静态二进制翻译框架,它将机器无关的部分分离出部分。7、前端读入源二进制代码程序,并根据源机器的指令集来,用描述语言如]a[_、]]a、=:a来支持机器相关的部分,从和调用约定等知识,识别指令序列和数据段并将指令序列提而提高了框架的可重用性。升为中间表示形式;分析器和优化器在中间表示级进行分析9:;+,体系结构是92ODU与F=联合开发的新一代体系结和优化;后端将中间表示变换为目标机器指令序列和所需格构,其特点在于使用+,位指令集体系(9]:),该指令集应用式的二进制文件。了[=9‘(显式并行指令计算)技术,代表了当今高性能计算机[&]基于软件的二进制翻译系统可分为以下三类:解释的发展方向之一。8、器、动态翻译器和静态翻译器。解释器在运行时对指令逐条本文将介绍笔者参与研发的9:;+,到:UKNI的二进制翻解释执行,相对容易开发,而且较容易同旧的体系结构高度兼译系统(9":)
4、2MLD56320V023OD5N20/PD029":Z02ILXOLI2MUIO6LJIM02OL6SP5DS*[MKD50IUUXI2DJIKKL6I5N6QU0ZLILXQP25O062LD56320V023KL6ZUD7JIM30TD2*9O0MIM07KUDI2SKLI5O05IU7DON6SO6LD56320V023U0ZLILXQP25O062MZIMDS62OND5IUU023562TD2O062M6Q9:;+,IL5N0OD5OPLDI2S6ZMDLTIO0626QONDKL63LI702MOI25D*9O0MKL6TDS
5、O6ZDDQQD5O0TDZXOND9":OLI2MUIO062MXMOD7*60%7&+$/5U0ZLILXQP25O062Z02ILX;OLI2MUIO062KL65DSPLDLD56TDLX9:;+,5IUU023562TD2O062率较高,几乎可以达到目标机本地代码的执行速度,缺点是对#!引言自修改代码等情况无法处理,需要依赖解释器的支持。二进制翻译使得原本为源体系结构平台]所编译得到的对二进制翻译技术的需求背景主要分如下两种情况:代码可以在目标体系结构平台<上运行。同解释或模拟的方&)将代码从遗产平台向新平台移植;")为了
6、运行竞争对手的法不同,通过二进制翻译得到的代码几乎可以获得平台<的二进制代码。目前二进制翻译的研究主要包括如9W^公司本地代码的执行速度。当遗产代码只以二进制形式存在时,的_I0MX、W<是一个可变源、可二进制翻译大致分为前端、分析器和优化器以及后端三变目标的静态二进制翻译框架,它将机器无关的部分分离出部分。
7、前端读入源二进制代码程序,并根据源机器的指令集来,用描述语言如]a[_、]]a、=:a来支持机器相关的部分,从和调用约定等知识,识别指令序列和数据段并将指令序列提而提高了框架的可重用性。升为中间表示形式;分析器和优化器在中间表示级进行分析9:;+,体系结构是92ODU与F=联合开发的新一代体系结和优化;后端将中间表示变换为目标机器指令序列和所需格构,其特点在于使用+,位指令集体系(9]:),该指令集应用式的二进制文件。了[=9‘(显式并行指令计算)技术,代表了当今高性能计算机[&]基于软件的二进制翻译系统可分为以下三类:解释的发展方向之一。
8、器、动态翻译器和静态翻译器。解释器在运行时对指令逐条本文将介绍笔者参与研发的9:;+,到:UKNI的二进制翻解释执行,相对容易开发,而且较容易同旧的体系结构高度兼译系统(9":)
此文档下载收益归作者所有