[发明专利]使用动态编程语言的元数据的运行时优化方法和系统有效

专利信息
申请号: 201380007185.2 申请日: 2013-01-31
公开(公告)号: CN104081350B 公开(公告)日: 2017-06-23
发明(设计)人: G·巴瑞克罗;F·J·皮茨罗 申请(专利权)人: 苹果公司
主分类号: G06F9/455 分类号: G06F9/455
代理公司: 中国国际贸易促进委员会专利商标事务所11038 代理人: 冯玉清
地址: 美国加*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 使用 动态 编程 语言 数据 运行 优化
【权利要求书】:

1.一种用于运行时编译的计算机实现的方法,包括:

针对与第一键相关联的源代码的多个部分推测生成编译代码,其中,从所述源代码编译的代码包括推测生成的所述编译代码;

利用运行时状态在运行时期间执行从所述源代码编译的所述代码,其中所述运行时状态包括用一个或多个键索引的一个或多个散列数据,所述一个或多个键包含所述第一键,其中所述第一键具有元数据,所述元数据描述与所述运行时状态下的所述散列数据有关的所述第一键的一个或多个全局属性的断言;

更新所述第一键的元数据以保持所述第一键的全局属性与所述运行时状态之间的一致性;

确定与所述第一键相关联的所述推测生成的编译代码是否因所述第一键的已更新的元数据而失效,以保证所述推测生成的编译代码具有可靠性,而不会在所述散列数据上引发查找操作;以及

如果所述推测生成的编译代码失效,针对与所述第一键相关联的所述源代码的所述多个部分更新从所述源代码编译的所述代码,其中执行已更新的代码而不执行所述推测生成的编译代码。

2.根据权利要求1所述的方法,其中使用被导向所述推测生成的编译代码的执行路径来执行从所述源代码编译的所述代码而不执行查找操作,并且其中执行已更新的代码以重新导向来自所述推测生成的编译代码的所述执行路径,所述重新导向的执行路径包括在所述运行时状态的所述散列数据中的查找操作。

3.根据权利要求1所述的方法,其中所述第一键的所述全局属性具有值,并且其中所述确定与所述第一键相关联的所述推测生成的编译代码是否因所述第一键的已更新的元数据而失效基于所述值是否满足指示所述第一键当前未在运行时状态下的现有数据对象的任何一者中被使用或标引的条件。

4.根据权利要求3所述的方法,其中所述推测生成的编译代码基于所述第一键的所述全局属性的初始值。

5.根据权利要求4所述的方法,其中所述第一键的所述全局属性指示是否在所述运行时状态下使用所述第一键来索引所述散列数据,并且其中具有所述初始值的所述全局属性指示所述第一键当前未在所述运行时状态下使用。

6.根据权利要求1所述的方法,其中根据从所述源代码编译的所述代码的所述执行来更新所述运行时状态下的所述一个或多个散列数据,并且其中根据已更新的所述一个或多个散列数据来更新所述元数据以保持所述一致性。

7.根据权利要求1所述的方法,其中所述第一键从所述源代码进行概要分析。

8.一种用于运行时编译的系统,包括:

用于针对与第一键相关联的源代码的多个部分推测生成编译代码的装置,其中,从所述源代码编译的代码包括推测生成的所述编译代码;

用于利用运行时状态在运行时期间执行从所述源代码编译的所述代码的装置,其中所述运行时状态包括用一个或多个键索引的一个或多个散列数据,所述一个或多个键包含所述第一键,其中所述第一键具有元数据,所述元数据描述与所述运行时状态下的所述散列数据有关的所述第一键的一个或多个全局属性的断言;

用于更新所述第一键的元数据以保持所述第一键的全局属性与所述运行时状态之间的一致性的装置;

用于确定与所述第一键相关联的所述推测生成的编译代码是否因所述第一键的已更新的元数据而失效,以保证所述推测生成的编译代码具有可靠性,而不会在所述散列数据上引发查找操作的装置;以及

用于如果所述推测生成的编译代码失效则针对与所述第一键相关联的所述源代码的所述多个部分更新从所述源代码编译的所述代码的装置,其中执行已更新的代码而不执行所述推测生成的编译代码。

9.根据权利要求8所述的系统,其中使用被导向所述推测生成的编译代码的执行路径来执行从所述源代码编译的所述代码而不执行查找操作,并且其中执行已更新的代码以重新导向来自所述推测生成的编译代码的所述执行路径,所述重新导向的执行路径包括在所述运行时状态的所述散列数据中的查找操作。

10.根据权利要求8所述的系统,其中所述第一键的所述全局属性具有值,并且其中所述确定与所述第一键相关联的所述推测生成的编译代码是否因所述第一键的已更新的元数据而失效基于所述值是否满足指示所述第一键当前未在运行时状态下的现有数据对象的任何一者中被使用或标引的条件。

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

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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