二进制翻译中自修改代码的缓存策略研究

被引量 : 0次 | 上传用户:crystal19900224
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
自修改代码是二进制翻译研究中的难点和影响翻译效率的重要因素。众多文献介绍了自修改代码对二进制翻译效率的影响,但均缺乏量化分析;自修改代码具有在程序执行过程中动态地改变程序自身执行指令的特点,在计算机安全领域有广泛的应用。在自修改代码频繁出现时,二进制翻译器中如何设计和实现高效的代码缓存策略是加速二进制翻译效率值得研究的问题。针对上述问题,利用QEMU作为实验平台,对自修改代码和非自修改代码进行了大量的测试,量化地分析了自修改代码对翻译器的翻译效率和翻译块数量的影响。在量化分析了自修改代码对翻译效率影响的基础上,结合翻译器以基本块和Trace翻译的优点,精确的自修改代码缓存策略PSCM(Precise Self-modifying Code cache Management policy)在以Trace为翻译机制的前提下,通过基本块的精确替换方式,替换由于自修改造成的代码缓存中不一致的翻译块。PSCM通过页块映射把发生自修代码的物理页映射到具体的基本翻译块,通过Trace的定位确定基本翻译块对应的Trace,通过代码缓存管理维护代码缓存中的基本翻译块和Trace链,通过精确的块替换方法替换由于自修改代码造成的代码缓存中失效的基本翻译块。研究结果表明,在QEMU翻译器上,自修改代码随着自修改同比次数增长,其执行时间的增加速度平均是非自修改程序的5.81倍。平均每增加1次自修改,对应在QEMU上的翻译块数量增加10.51。翻译器以Trace为翻译机制的效率较基本块有明显优势。对于PSCM的测试表明,在代码缓存(Code cache)中的翻译块的数量(Flush Blocks counts,FB)为11时,PSCM策略加速因子为3.95;PSCM策略加速因子随着FB的增加而增加,数据说明利用PSCM策略能够改进翻译器在自修改代码翻译的效率。
其他文献
中国数字音乐市场发展潜力大,产生了巨大的经济效益,同时也面临着版权、市场秩序等诸多问题,研究多元化、个性化的运营模式有利于促进这一新兴产业的发展。本文介绍数字音乐
筒节夹钳是冶金行业中的特种起重设备,夹钳夹持的可靠性及其本身的强度在设计中很关键,如果设计不当,将会导致在夹持物料过程中产生物料坠落等事故。由于作业场地的危险性较
语言是文化的载体,而词汇又是语言中最活跃的因子。澳大利亚英语与其他英语变体相比,其语汇特征鲜明,主要体现在以带有澳大利亚本土风情的词汇为基础,移民词汇与土著词汇相当
农业装备现代化既是我国实现农业现代化的主要手段之一,也是我国实现农业现代化的主要目标之一。实现农业装备现代化将有助于改善农业落后的生产条件,是我国解决“三农”问题
<正>一、我国目前工程造价管理的特点1.随着社会的不断进步和发展,工程项目的规模扩大,工程造价管理的数据处理量也越来越多。以北京为例,奥运带来的项目投入,城市基础设施建
传力杆锈蚀所引起的混凝土保护层开裂是影响水泥混凝土路面结构使用寿命的重要因素。该文基于扩展有限元方法,建立了传力杆锈蚀产物-混凝土保护层耦合作用开裂力学分析模型。
<正> 在我的生活中,一直有着这样一份入党申请书:它讲述了一个高原女儿奇特的一生,母女两代人不同的生活经历。它,也是一份迟交的入党申请书。让我先从一个高原女儿真实的故
作为一项基础产业,建筑行业在我国社会经济发展中担任着中流砥柱的作用,是我国经济不容小觑的重要组成部分。目前,我国税制改革中一项重要任务便是将建筑行业的营业税调整为
S124.3 1055测定含~(36)Cl 水溶液的新方法/肖京城(中国农业科学院原子能利用研究所),曾鸣//核农学通报/中国原子能农学会.-1991,12(3).-127~129 S124.3 1055 A New Method
<正>每个国家都有能力形成各自的技能版图。成人技能调查评估的信息处理技能是可以"习得的"。也就是说,国家可以通过在正式的教育机构和工作场所提供优质公平的学习机会,来重