[发明专利]用于生产调试的诊断工作流程有效
申请号: | 201580056568.8 | 申请日: | 2015-10-26 |
公开(公告)号: | CN107077414B | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | J·戴维斯 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华;李峥宇 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 生产 调试 诊断 工作 流程 | ||
诊断工作流文件可用于在调试器执行时没有与调试器进行用户交互的情况下,控制调试器将来执行的诊断操作。诊断工作流文件由调试器在调试会话期间使用。调试器执行由诊断工作流文件指引的动作以模拟交互式实时调试会话。诊断工作流文件可以包括条件诊断操作,其执行取决于调试会话中的程序变量,诊断变量和诊断原语的状态。
背景技术
传统的软件诊断工具通常在实时(live)运行的过程或保存的过程状态上操作。例如,实时调试器在正在执行的过程上运行。在保存的过程状态上执行的调试器不被附加到正在执行的过程,并在正在被调试的过程执行时通过处理收集的历史日志文件或过程转储(dump)文件来运行。这种类型的调试器与正在被调试的过程分开执行,通常在正在被调试的过程被完成执行之后的某个时间。调试实时过程提供很少或没有关于过程如何达到其当前状态的历史上下文。调试过程转储文件和/或日志文件通常是耗时和迭代的。
发明内容
诊断工具可以在由诊断工作流制品指引的过程上执行活动类型调试,而不停止该过程。诊断工具可以以与用于实时调试的方式类似的方式执行条件或无条件断点处理和条件或无条件异常处理,但是不具有实时调试通常对过程的性能影响。如本文所使用的“生产”或“生产环境”是指所使用的软件已经从开发和/或测试阶段退出并且是“正在生产”的环境,即,用于执行实际工作而不是开发和/或测试。诊断工作流文件中提供的指令可以用于自动控制调试器的未来诊断操作(当调试器执行时,用户不必与调试器交互)。可以基于正在执行的应用的当前状态有条件地执行在诊断工作流文件中指定的诊断操作。“当前状态”可以包括诊断原语(primitive)的状态。诊断原语是影响诊断工具状态的任何操作,例如但不限于创建断点,移除断点,禁用断点,改变断点的条件,基于异常的类型启用异常,基于异常的类型禁用异常,基于与异常相关联的调用堆栈来调整异常,步进操作(诸如步入到代码中,跳过指令等,以及步出代码)。“当前状态”可以包括各种变量的状态,包括但不限于程序变量和诊断变量。程序变量指被调试程序使用的那些变量。诊断变量(例如,保存特定断点被命中的次数或者指定类型的异常是否被抛出的变量的值,或者异常是否在指定的调用堆栈被抛出)指由调试器用于调试的那些变量。
诊断工作流文件可以从集成开发环境(IDE)或其他开发环境生成。诊断工作流可以使得诊断动作能够在程序执行时自动执行(在没有人工干预的情况下)。诊断操作包括但不限于以下操作:当指定的事件发生时,可以启用断点,当指定的事件发生时可以禁用断点,当指定类型的异常首次被抛出时可以启用程序处理中的断点或转储生成,当异常在特定调用堆栈或者特定行首次被抛出时,可以启用程序处理中的中断或转储生成,异常的类型可以用作中断或转储生成的次要条件,当发生上述条件之一时可以启用诊断记录,和/或当发生以下情况之一时可以禁用诊断记录:可以执行步进操作,可以评估变量,可以将变量写入日志等。也就是说,当用户控制调试器时,用户将能够直接执行的由诊断工具支持的任何动作可以由工作流文件自动驱动执行。
可以将诊断工作流文件提供给生产或非生产环境中的调试会话。诊断工作流可以应用于生产环境中的实时调试会话。工作流中描述的动作可以在没有用户交互的情况下动态地控制调试器或其他诊断工具。诊断工作流中指定的条件的状态可以在每个生成的诊断制品中可见。诊断制品可以包括实时调试会话,轻量级过程快照或从实时过程或轻量级过程快照生成的过程转储。
提供本发明内容以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
附图说明
在附图中:
图1示出了根据本文描述的主题的各方面的用于生成和/或执行诊断工作流的系统100的示例;
图2示出了根据本文公开的主题的方面的包括生成诊断工作流和/或执行诊断工作流的方法的示例的方法200的示例;
图3是根据本文公开的主题的各方面的计算环境的示例的框图;和
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580056568.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:耳机检测电路、方法及终端
- 下一篇:一种麦克风放大电路