[发明专利]状态转变的诊断有效
申请号: | 201480026890.1 | 申请日: | 2014-03-10 |
公开(公告)号: | CN105308578B | 公开(公告)日: | 2018-12-04 |
发明(设计)人: | M·C·范宁;F·G·T·I·安德鲁;D·J·莫斯利;S·卡尔维特;A·R·斯特兰德;T·莱斯;J·T·费希尔;R·A·帕韦泽;T·C·沃尔;G·米斯凯利;H·L·皮尔森三世;C·艾德蒙兹;E·H·奥米亚;K·V·纳迪希;F·J·翁;Z·高;A·斯塔修克 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/07 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 杨丽 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 状态 转变 诊断 | ||
公开了一种用于诊断与控制转移有关的计算机可读指令的方法。在计算机可读指令的运行时期间将逻辑操作内的执行单元的状态转变记入日志。逻辑操作的诊断信息与状态转变相关联。提供状态转变和相关联的诊断信息以供在计算机可读指令中的所选点处进行检索。
程序调试或调试是发现和减少计算机程序或电子硬件片断中的错误或缺陷数目以使得计算机程序如预期那样表现的一种方法过程。一般来说,调试是耗时且令人厌烦的任务,并且程序员常常使用用于监视计算机程序的执行以及执行程序调试的软件工具,诸如对被调试进程进行操作的调试程序等。在程序调查期间,程序员可以停止被调试进程的执行,收集数据值,或者基于变量的值以其他方式影响被调试进程的执行。
调试技术常常力图想要跟上开发技术中的改进。软件开发技术已经进展到向许多开发者提供容易地创建具有丰富用户体验的程序的附加工具,这些附加工具适配成用于具有以曾经仅对最高级开发者可用的方式针对所选用户群的定制的多个平台和系统。这些开发技术中的许多技术出于许多原因已经使得传统调试过程变得更困难。因而,软件开发者常常陷入是否要利用需要极大调试成本并且可能破坏将产品快速带给消费者的能力的开发技术来实现新的软件的难题。
发明内容
本概述被提供以便以简化形式介绍概念的选集,所述概念将在以下详细描述中进一步描述。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。
在其中发生中断的代码片断的源头在执行期间实际发生问题时是未知的情形中,对代码进行调试或故障排除是困难的。这一信息通常不再可供检索和检查,并且因为异步编程的特性而常常已经从调用栈中出栈,在异步编程中,例程负责完成长期运行的工作,该长期运行的工作与启动该长期运行的工作的例程或工作并发且分开地运行。在一些示例中,诸如在涉及多个线程的应用中,相关信息可能在栈上可用,但难以跨许多可用线程的特定子集来定位。另外,尽管这一信息可能存在,但与信息片断有关的序列和定时可能丢失。
本公开包括一种关联与其中运行时问题往往在稍后才体现的运行时人工制品的源头有关的诊断信息的方法。示例人工制品包括回调、用于插入文档对象模型(DOM)元素的事件处理程序、以及控制转移的其他示例。在一个示例中,一个逻辑操作(诸如异步操作)内的执行单元的状态转变在计算机可读指令的运行时期间被记入日志。诊断信息(诸如调用栈帧)与该逻辑操作相关联。记入日志的状态转变和相关联的诊断信息被提供以供在所选点处进行检索,该所选点诸如在中断点处或者在抛出异常时。出于解说而使用异步操作,但各示例可适用于其他的控制转移。
开发者在对照那些目标进行标准的故障排除操作时可以咨询诊断信息,标准的故障排除操作诸如命中受影响的回调中的中断点或者检查处于非正确状态的DOM元素。诊断信息可被用来执行标准调试和故障排除操作(诸如跳转到代码)以便对表示问题的根本原因的始发代码进行故障排除。所有对象构建的调用栈位置也可被收集以便协助存储器剖析、协助调试存储器泄漏等。
包括附图来提供了对各实施例的进一步理解,且这些附图被合并在本发明书内并构成其一部分。附图示出各实施例,并且与说明书一起用于解释本发明的原理。其他实施例和各实施例的许多预期优点将随着参考下面的详细描述进行更好的理解而得到认识。附图的元素不一定相对于彼此而缩放。类似的附图标号指定对应的类似部分。
图1是示出计算设备的示例的框图。
图2是可被配置成在图1的计算设备上运行的用于诊断状态转变的方法的框图。
图3是示出被配置成在图1的一个或多个计算设备上运行的诊断工具的示例的框图。
图4是可被配置成在图1的计算设备上运行的用于诊断状态转变的方法的框图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201480026890.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:非易失性存储器接口
- 下一篇:用差异盘改进的虚拟机部署