[发明专利]用于虚拟和接口方法调用的装置和方法有效
申请号: | 201580072468.4 | 申请日: | 2015-11-23 |
公开(公告)号: | CN107111495B | 公开(公告)日: | 2020-11-17 |
发明(设计)人: | 杨明耀;伊恩·安德鲁·罗杰斯 | 申请(专利权)人: | 谷歌有限责任公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 周亚荣;安翔 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 虚拟 接口 方法 调用 装置 | ||
本发明公开了用于调用软件方法的装置和方法。计算设备可以接收调用类实例的软件方法的请求,所述类实例包括接口方法表和虚拟方法表(vtable)。所述接口方法表可以包括接口方法表条目,所述接口方法表条目可以包括针对与所述类实例相关联的软件接口的特定接口方法的特定接口方法表条目。所述特定接口方法表条目可以参考所述特定接口方法。所述vtable可以包括vtable条目,所述vtable条目可以包括针对与所述类实例相关联的特定虚拟方法的特定vtable条目。所述特定vtable条目可以参考所述特定虚拟方法。所述计算设备可以基于接口方法表和/或所述vtable来确定所述调用的软件方法的入口点。所述计算设备可以通过在所述入口点处执行指令来调用所述调用的软件方法。
相关申请的交叉引用
本申请要求2015年1月5日提交的标题为“Apparatus and Methods for Virtualand Interface Method Calls”的美国专利申请第14/589,898号的优先权,该申请的全部内容通过引用合并于此。
背景技术
除非本文另有指出,否则在本部分中描述的材料不是本申请中的权利要求的现有技术,并且不因为被包括在本部分中就被承认为是现有技术。
现代软件往往是使用面向对象原则来构建的,其中,利用对象的集合来执行软件的任务并且存储与软件相关的数据。许多对象包括对数据进行操作的方法(method)或者软件功能(function),所述数据包括但不限于作为对象的一部分存储的数据。在软件中,可以将对象定义为类,其包括用于该对象的方法列表和数据。类可以充当更专门的类的集合的原型。例如,在面向对象的图形软件中,可以将多边形的类用作三角形、方形、六角形等的类的原型。原型类可以称为基础类,并且更专门的类可以称为基础类的子类。
发明内容
在一个方面中,提供了一种方法。计算设备接收调用类实例的软件方法的请求。该类实例包括接口方法表和虚拟方法表。该接口方法表包括一个或者多个接口方法表条目。该一个或者多个接口方法表条目包括针对与类实例相关联的软件接口的特定接口方法的特定接口方法表条目。该特定接口方法表条目包括与特定接口方法有关的引用。虚拟方法表包括一个或者多个虚拟表条目。该一个或者多个虚拟表条目包括针对与类实例相关联的特定虚拟方法的特定虚拟表条目。该特定虚拟表条目包括与特定虚拟方法有关的引用。计算设备基于接口方法表和虚拟方法表中的至少一个来确定调用的软件方法的入口点。计算设备可以通过在入口点处执行指令来调用所调用的软件方法。
在另一方面中,提供了一种计算设备。该计算设备包括一个或者多个处理器和数据存储。该数据存储上存储有指令,该指令在由该一个或者多个处理器执行时使该一个或者多个处理器执行功能。所述功能包括:接收调用类实例的软件方法的请求,其中,该类实例包括接口方法表和虚拟方法表,其中,接口方法表包括一个或者多个接口方法表条目并且虚拟方法表包括一个或者多个虚拟表条目,其中,该一个或者多个接口方法表条目包括针对与类实例相关联的软件接口的特定接口方法的特定接口方法表条目,该特定接口方法表条目包括与特定接口方法有关的引用,其中,该一个或者多个虚拟表条目包括针对与类实例相关联的特定虚拟方法的特定虚拟表条目,该特定虚拟表条目包括与特定虚拟方法有关的引用;基于接口方法表和虚拟方法表中的至少一个来确定调用的软件方法的入口点;以及通过在入口点处执行指令来调用所调用的软件方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于谷歌有限责任公司,未经谷歌有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580072468.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能钥匙及其控制系统
- 下一篇:一种安全技术防范系统