[发明专利]基于动态二进制重写器架构的轻量级服务有效
申请号: | 201080038984.2 | 申请日: | 2010-08-31 |
公开(公告)号: | CN102483700A | 公开(公告)日: | 2012-05-30 |
发明(设计)人: | 马克·赫德格;史蒂芬·T·泰;迈克尔·贝迪;安东·切诺夫 | 申请(专利权)人: | 超威半导体公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 上海胜康律师事务所 31263 | 代理人: | 李献忠 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 动态 二进制 重写 架构 轻量级 服务 | ||
技术领域
本发明涉及信息处理系统,尤其是涉及程序执行的监控以及动态二进制重写器(rewriter)。
背景技术
当监控在客户进程中执行的计算机应用程序时,监控程序需要分析该客户进程以确定较频繁执行的代码(即,热代码)的所处区域。当应用程序的初始源代码不易被修改或重新编辑时,这样的监控程序能存在于系统中。当对监控程序来说唯一可用的信息是运行时间信息时,定位以及构建这些区域则是有挑战的。
众所周知,利用动态二进制优化器(DBO:dynamic binary optimizer),动态二进制重写器(DBR:dynamic binary rewriter)的一种特殊类型,来监控程序的执行并且优化频繁执行代码(即,热代码)以提高性能。公知的DBOs通常分为两种类型,基于DBOs的解释(Interpretation)和基于DBOs的采样(Sampling)。基于DBOs的解释平衡(leverage)解释程序(interpreter)或当时的(just-in-time)编译器以遵照程序的动态指令。基于DBOs的采样移除解释程序并利用基于技术的低成本采样来标识热代码。公知的DBOs为转换(transformation)选择热跟踪路径(hot trace)。该路径是执行单一入口、多出口的跨进程执行路径。
除了操作在本机二进制上而不需要任何静态程序信息之外,DBR与管理运行时间环境相类似。
发明内容
根据本发明,基于DBR架构的采样被说明,该DBR架构平衡(leverage)用于程序分析的独立的内核。该架构包括硬件性能监控器,作为独立进程执行的DBR服务和在客户进程内部执行的轻量级DBR代理。该DBR服务聚集(aggregate)来自硬件性能监控器的样本,通过推测热采样周围的程序结构来执行区域选择,在所选择的区域上执行转换(例如,优化),以及生成替换代码。然后该DBR代理补丁客户进程以使用该替换代码。
DBR在本机二进制上操作不需要之前的静态信息。因此,DBR能转换传统的二进制或资料库,对资料库来说,源代码是不可用的。同时,通过在运行时的操作,DBR调整在编译时不能用的转换时机。例如,DBR可基于当前程序的输入行为来执行转换,调整代码到特定下层结构以及执行跨动态链接库的转换。
附图说明
对本领域技术人员来说,通过参考附图本发明应该被更好的理解,其多个对象、特性和优势应该更加明显。在多个附图中使用相同的附图标记表示相同或类似的元件。
图1显示了具有动态二进制重写器的计算机系统的系统框图;
图2显示了基于动态二进制重写器架构的服务的框图;
图3显示了动态二进制重写器的区域选择操作的伪代码表示;
图4显示了在示例的客户程序上执行动态二进制重写器的热代码发现操作的结果的框图;
图5显示了在示例的客户程序上执行动态二进制重写器的代码分区操作的结果的框图;
图6显示了在示例的客户程序上执行动态二进制重写器的热代码调用内联操作的结果的框图;
图7显示了在示例的客户程序上执行动态二进制重写器的补丁点选择操作的结果的框图;
图8显示了在示例的客户程序上执行动态二进制重写器的代码精简操作的结果的框图;
图9显示了在示例的客户程序上执行动态二进制重写器的完整区域选择操作的结果的框图;
图10显示了热代码发现操作的伪代码表示;
图11显示了代码分区操作的伪代码表示;
图12显示了补丁点选择操作的伪代码表示;
具体实施方式
简要的参照图1,显示了计算机系统100的系统框图。计算机系统100包括处理器102;输入/输出(I/O)设备104,诸如显示器,键盘,鼠标以及相关的控制器(其中的每一个可远程的耦合到计算机系统100上);存储器106,其包括易失性存储器,例如随机访问存储器(RAM:random access memory),和非易失性存储器,例如硬盘和驱动器;以及其他存储设备108,例如光盘和驱动器和其他存储器设备;以及其他多个子系统110,所有这些设备通过一条或多条总线112互联。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于超威半导体公司,未经超威半导体公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201080038984.2/2.html,转载请声明来源钻瓜专利网。