[发明专利]生产诊断中的历史控制流可视化有效
申请号: | 201580059174.8 | 申请日: | 2015-10-26 |
公开(公告)号: | CN107111544B | 公开(公告)日: | 2021-07-27 |
发明(设计)人: | J·戴维斯;M·福克斯 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 生产 诊断 中的 历史 控制 可视化 | ||
1.一种用于收集在程序的执行期间生成的用于诊断目的的控制流数据而不停止所述程序的所述执行的系统,所述系统包括:
至少一个处理器;
连接到所述至少一个处理器的存储器;以及
诊断工具,包括:
被加载到所述存储器中的至少一个程序模块,所述至少一个程序模块:
通过动态地检测原始函数,基于检测文件来创建检测函数,包括:从与所述原始函数相关的源代码部件创建中间语言部件,所述中间语言部件的代码可动态重写,分析所述中间语言部件来将所述原始函数的按顺序执行的指令分组到单个基本块,从而创建多个基本块,插入针对每个基本块的计数器并且动态地插入至少一个非停止断点,
执行所述中间语言部件,从而将其编译到适合在所述处理器上运行的机器语言部件,
在所述处理器上执行所述机器语言部件,
在所述检测函数的调用期间遇到非停止断点时,通过创建处理数据的快照来收集控制流数据,
所述控制流数据还包括所述多个基本块中的每个基本块在所述检测函数的所述调用期间被执行的次数,所述次数通过递增与所述基本块相关的相应计数器来确定,
所述计数器由保持所述计数器的值的所述原始函数的局部变量表示;以及
提供所述控制流数据的可视化,以用于诊断目的。
2.根据权利要求1所述的系统,其中所述控制流数据的可视化包括异常信息,所述异常信息包括所述多个基本块中的基本块中被抛出的异常的类型以及抛出所述异常的所述基本块中被映射到由所述基本块表示的源程序的行的指令。
3.根据权利要求1所述的系统,还包括从在运行的生产应用中搜集历史控制流信息的诊断工具接收信息的至少一个程序模块,所述历史控制流信息至少包括关于执行应用的所执行的程序指令的所述顺序的信息。
4.根据权利要求1所述的系统,还包括从在执行应用上运行的调试会话中搜集控制流信息的诊断工具接收信息的至少一个程序模块。
5.根据权利要求1所述的系统,还包括聚合函数的多个调用的本地控制流信息以提供所述函数的全局控制流的可视化的至少一个程序模块。
6.根据权利要求1所述的系统,还包括向生产环境发送所述检测文件的至少一个程序模块。
7.一种用于收集在程序的执行期间生成的用于诊断目的的控制流数据而不停止所述程序的所述执行的方法,所述方法包括:
由计算设备的至少一个处理器和存储器,通过动态地检测原始函数,基于检测文件来创建检测函数,包括:从与所述原始函数相关的源代码部件创建中间语言部件,所述中间语言部件的代码可动态重写,分析所述中间语言部件来将所述原始函数的按顺序执行的指令分组到单个基本块,从而创建多个基本块,插入针对每个基本块的计数器并且动态地插入至少一个非停止断点,
由所述至少一个处理器执行所述中间语言部件,从而将其编译到适合在所述处理器上运行的机器语言部件,
由所述至少一个处理器,在所述处理器上执行所述机器语言部件,
由所述计算设备的所述至少一个处理器和所述存储器,在所述检测函数的调用期间遇到非停止断点时,通过创建处理数据的快照来收集控制流数据,
所述控制流数据还包括所述多个基本块中的每个基本块在所述检测函数的所述调用期间被执行的次数,所述次数通过递增与所述基本块相关的相应计数器来确定,
所述计数器由保持所述计数器的值的所述原始函数的局部变量表示;以及
由所述计算设备的所述至少一个处理器和所述存储器,可视化所收集的所述控制流数据,以用于诊断目的。
8.根据权利要求7所述的方法,还包括:
由所述计算设备的所述至少一个处理器和所述存储器,向控制流可视化器提供所收集的所述控制流数据。
9.根据权利要求7所述的方法,还包括:
由所述计算设备的所述至少一个处理器和所述存储器,通过创建过程数据的快照来收集控制流数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580059174.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种超市智能购物方法
- 下一篇:包装袋(牛肉干)