[发明专利]二进制翻译中的字节序调整方法有效

专利信息
申请号: 201010300018.5 申请日: 2010-01-04
公开(公告)号: CN101763242A 公开(公告)日: 2010-06-30
发明(设计)人: 管海兵;梁阿磊;朱彤;刘博;杨辉兵 申请(专利权)人: 上海交通大学
主分类号: G06F7/76 分类号: G06F7/76;G06F9/30
代理公司: 上海交达专利事务所 31201 代理人: 王锡麟;王桂忠
地址: 200240 *** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 二进制 翻译 中的 字节 调整 方法
【权利要求书】:

1.一种二进制翻译中的字节序调整方法,其特征在于,包括以下步骤:

第一步,动态二进制翻译系统的执行引擎加载源程序可执行映像,将各个程序段的内容进行字节序调整,同时调整加载进来的参数个数、参数内容和环境变量;

所述的字节序调整是指:动态二进制翻译系统的执行引擎将MIPS体系结构的可执行文件映像加载到动态二进制翻译系统内存空间中,并读取代码段入口地址,加载过程中需对源程序的各段进行字节序翻转,源机器平台和目标机器平台的字节顺序不同,则源程序映像的.text段和.bss段,在加载的时候都需要进行字节序的翻转,设置堆栈时,压入的参数,即参数个数和参数内容和环境变量也要做字节序翻转处理;

第二步,修改表示内存访问的中间指令的有效地址,使修改后的有效地址的表达符合源程序内存访问指令的语义,以在内存中加载或存储正确的数据;

所述的修改后的有效地址等于,内存中数据的最高地址与数据的最低地址的和,减去访存指令操作的字节数与源程序要访问的有效地址的和;

所述的修改后的有效地址适用于地址以字为单位进行分配的体系结构,并且存储器访问都是对齐的,即:半字从双字节的边界加载和存储,字从四字节的边界加载和存储,根据表示内存访问的中间指令的参数求出该访存指令访问的有效地址,然后更新有效地址以完成中间指令修改,具体过程为:

1)如果访问的是字节数据,将有效地址和4做求模运算得i,如果i为0,则将该有效地址加3;如果i为1,则将该有效地址加1;如果i为2,则将该有效地址减1;如果i为3,则将该有效地址减3;

2)如果访问的是半字数据,将有效地址和4做求模运算得i,如果i为0,则将该有效地址加2;如果i为2,则将该有效地址减2;

3)如果访问的是字数据,无需做地址转换;

第三步,前端解码器将源程序指令翻译为中间指令,然后将生成的中间指令加入到构建的中间指令基本块中,直到发生直接跳转或系统调用,则结束当前基本块的构造,并将该基本块发送到后端执行。

2.根据权利要求1所述的二进制翻译中的字节序调整方法,其特征是,所述的动态二进制翻译系统包括:前端解码器、中端优化器、后端编码器和中间指令集,其中:前端解码器与中间指令集相连传输源程序,中间指令集和中端优化器相连传输中间代码信息,中端优化器与后端编码器相连传输优化后的中间代码信息,后端编码器输出编码后的代码信息。

3.根据权利要求2所述的二进制翻译中的字节序调整方法,其特征是,所述的动态二进制翻译系统是昆士兰大学的UQDBT系统,或者是弗吉尼亚大学的strata系统,或者是上海交通大学的CrossBit系统。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010300018.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top