[发明专利]异步运行时编译无效
申请号: | 200680042080.0 | 申请日: | 2006-10-18 |
公开(公告)号: | CN101310256A | 公开(公告)日: | 2008-11-19 |
发明(设计)人: | V·谭 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海专利商标事务所有限公司 | 代理人: | 陈斌 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 异步 运行 编译 | ||
版权告示和许可
本专利文献的公开内容的一部分可能包含受版权保护的材料。版权所有者不 反对任何人对在(美国)专利商标局文件或记录中所出现的本专利文献或专利公 开的复制,但无论如何都保留所有版权。以下告示应用于本文:Copyright◎2005, Microsoft Corp。
背景
在典型的仿真器/运行时(just-in-time,JIT)编译器中,代码执行和同步代 码翻译线程一般位于同一个处理器或处理器核上。当用户导航该程序时,该代码 执行线程将试图在已翻译的代码高速缓存中找到所请求的功能。当这些功能存在 时,该线程将全速执行它们并且用户会感到极少或没有延迟。然而,如果这些功 能不存在,则代码执行线程将对同步代码翻译线程作出一阻塞请求并且等待直到 该线程报告该功能已经被翻译。这些情况下,在已发生来代表仿真/JIT编译的程 序执行中,用户会感到短暂的“抖动”。在用户需要平滑且逼真的操作以及诸如 计算机游戏玩家所期望的那些视觉效果的程序中,这是非常有问题的。
基于这点考虑,需要一种提供程序模块的平滑且即时执行的仿真器/JIT编译 器。
概述
提供本概述一般用简化的形式介绍以下将在详细描述中进一步描述的一些 概念。本概述并不旨在确定所要求保护的主题的关键特征或必要特征,也不旨在 用于帮助确定所要求保护的主题的范围。
考虑到本领域中的上述不足,提供了异步JIT编译。对于几个实施例,该异 步JIT编译部分地通过检测计算机程序的将来执行可能所需的至少一个计算机程 序代码模块,并且随后对检测到的程序代码模块进行翻译以便执行,同时执行该 计算机程序的至少一个其它先前已翻译的程序代码模块来实现。例如,这可以通 过由同步代码翻译线程调用异步代码翻译线程以便在计算机程序的用户执行之 前运行并且预翻译用于所述预翻译的检测到的程序代码来完成。异步线程可以自 由地继续翻译,然后在代码高速缓存内存储预期将来用户可能需要的已发现的第 二个功能。这种协作增加了用户请求的下一个功能已经被翻译的可能性。在理想 的环境中,这种方法允许整个程序在用户行使其更复杂的特征之前被良好地转 换,从而减少感知到的“抖动”并提高平均性能。
本发明其它的优点和特征将在以下描述。
附图简述
参考附图将进一步描述阻塞本地感测阻挡物,其中:
图1是示出根据使用一个处理器的同步运行时(JIT)编译的进程的示例性实 现的时间图;
图2是示出根据使用两个处理器的异步运行时(JIT)编译的进程的示例性实 现的时间图;
图3是示出根据异步运行时(JIT)编译的进程的示例性实现的流程图;
图4示出了适用于实现图1到图3的运行时编译进程的示例性计算设备的框 图;
图5示出了其中可实现许多计算机化进程以执行图1到图3的运行时编译进 程的示例性联网计算环境;
详细描述
在以下的描述和附图中阐明了某些具体细节以便提供对本发明的各实施例 的全面理解。经常与计算和软件技术相关联的某些众所周知的细节未在以下公开 内容中阐明以免不必要地混淆本发明的各实施例。此外,相关领域的普通技术人 员会明白,没有以下所述的一个或多个细节也可以实施本发明的其它实施例。最 后,尽管参考以下公开内容中的步骤和序列来描述各方法,但是这样的描述用于 提供本发明实施例的清除实现,而不应该将各步骤和步骤序列认为是实施本发明 所必需的。
参考图1和图2,所示的是示出根据使用一个处理器的同步运行时(JIT)编 译(图1)和使用两个处理器的异步运行时编译(图2)的进程的示例性实现。 如图所示,利用使用两个处理器的异步运行时编译的系统的组件的示例包括以 下:
1.响应于用户输入并代表用户执行已翻译代码的代码执行线程101。
2.可由代码执行线程101在代码执行线程101需要首次103翻译一功能 时调用的同步代码翻译线程102。在退化的情况下,代码执行线程101和同步线 程102运行于同一个处理器或处理器核104上。
3.可由同步线程102调用或者可自调用以便在用户执行之前运行并且预 翻译代码117的异步代码翻译线程105。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200680042080.0/2.html,转载请声明来源钻瓜专利网。