[发明专利]共享对象层级上的二进制转换的方法、系统和介质有效
申请号: | 201580078239.3 | 申请日: | 2015-04-10 |
公开(公告)号: | CN107408052B | 公开(公告)日: | 2021-04-16 |
发明(设计)人: | 叶夫根尼·艾尔钦;尼古拉·伊戈蒂;安德烈·哈尔佳温;德米特里·波卢欣 | 申请(专利权)人: | 谷歌有限责任公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/455 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 李宝泉;周亚荣 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 共享 对象 层级 二进制 转换 方法 系统 介质 | ||
1.一种用于二进制转换的计算机实现的方法,包括:
在主机平台处接收为与所述主机平台不同的指定客户机平台编写的软件程序,其中所述软件程序使用与所述客户机平台相关联的共享对象或动态加载库的集合,并且其中所述软件程序和所述共享对象或动态加载库的集合与所述主机平台不兼容;
在所述主机平台内对所述指定客户机平台进行仿真;
确定所述主机平台是否具有没有进行二进制转换的对应共享对象或动态加载库,但是实现与来自所述共享对象或动态加载库的集合内的指定的共享对象或动态加载库公共的外部接口;
如果所述主机平台具有所述对应共享对象或动态加载库,则基于将所述软件程序中的一个或多个链接修改为指向所述对应共享对象或动态加载库的链接来使用所述对应共享对象或动态加载库取代所述指定的共享对象或动态加载库以供所述主机平台内的所述软件程序的执行,避免所述指定的共享对象或动态加载库的二进制转换,其中,所述公共的外部接口与所述指定的共享对象或动态加载库实现相似或相同的函数调用以及响应于函数调用的相似或相同的行为;以及
如果所述主机平台没有所述对应共享对象或动态加载库,则执行所述指定的共享对象或动态加载库的二进制转换,以供所述主机平台内的所述软件程序的执行。
2.根据权利要求1所述的方法,其中,执行所述指定的共享对象或动态加载库的所述二进制转换包括创建第一二进制转换对象,其中所述第一二进制转换对象的外部接口包括对用于所述主机平台的第二二进制转换对象或对最初用于所述主机平台的对象的函数调用。
3.根据权利要求1所述的方法,其中,所述共享对象或动态加载库的集合包括与所述主机平台处的所述对应共享对象或动态加载库关联的至少一个系统库和不与所述主机平台处的所述对应共享对象或动态加载库关联的至少一个供应商库。
4.根据权利要求1所述的方法,其中,所述指定客户机平台包括ARM硬件,并且其中,所述主机平台包括x86硬件。
5.根据权利要求1所述的方法,其中,使用所述对应共享对象或动态加载库取代所述指定的共享对象或动态加载库以供所述主机平台内的所述软件程序的执行包括:
提供桥接器,使得对所述指定的共享对象或动态加载库的调用被变换成对所述对应共享对象或动态加载库的调用。
6.根据权利要求1所述的方法,进一步包括:
接收需要访问被仿真的客户机平台的状态或所述主机平台的状态的调用;以及
响应于所述调用,将所仿真的客户机平台的状态与所述主机平台的状态同步。
7.一种非瞬时计算机可读介质,所述非瞬时计算机可读介质包括指令,所述指令在由一个或多个计算机执行时致使所述一个或多个计算机实现一种方法,所述方法包括:
在主机平台处接收为与所述主机平台不同的指定客户机平台编写的软件程序,其中所述软件程序使用与所述客户机平台相关联的共享对象或动态加载库的集合,并且其中所述软件程序和所述共享对象或动态加载库的集合与所述主机平台不兼容;
确定所述主机平台是否具有没有进行二进制转换的对应共享对象或动态加载库,但是实现与来自所述共享对象或动态加载库的集合内的指定的共享对象或动态加载库公共的外部接口;
如果所述主机平台具有所述对应共享对象或动态加载库,则基于将所述软件程序中的一个或多个链接修改为指向所述对应共享对象或动态加载库的链接来使用所述对应共享对象或动态加载库取代所述指定的共享对象或动态加载库以供所述主机平台内的所述软件程序的执行,避免所述指定的共享对象或动态加载库的二进制转换,其中,所述公共的外部接口与所述指定的共享对象或动态加载库实现相似或相同的函数调用以及响应于函数调用的相似或相同的行为;以及
如果所述主机平台没有所述对应共享对象或动态加载库,则执行所述指定的共享对象或动态加载库的二进制转换,以供所述主机平台内的所述软件程序的执行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于谷歌有限责任公司,未经谷歌有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580078239.3/1.html,转载请声明来源钻瓜专利网。