[发明专利]应用程序调试方法和装置无效
申请号: | 200810088812.0 | 申请日: | 2008-03-28 |
公开(公告)号: | CN101546289A | 公开(公告)日: | 2009-09-30 |
发明(设计)人: | 张建鑫 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司 | 代理人: | 李春晖;李德山 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 调试 方法 装置 | ||
技术领域
本发明总体上涉及计算机应用技术领域,更具体地说,涉及应用程序的调试方法和装置。
背景技术
在计算机操作系统中,一个进程对应于一个应用程序,在调试或者运行时,一个应用程序可以包含一个或多个进程。在进行程序调试时,经常需要同时在若干不同应用程序的进程之间进行调试,例如在基于COM或基于DCOM的应用程序的进程之间,或者基于客户-服务器关系的应用程序的进程之间进行调试。例如,如果程序员正在调试客户应用程序中的进程,并且客户应用程序中的该进程请求服务器应用程序中某进程所提供的服务,则现有技术中没有方便的方法实现在这两个应用程序的进程之间进行调试。考虑下列的需要在若干进程之间进行调试的情形。
1)OLE客户应用程序调用InvokeHelper函数以请求由OLE服务器应用程序提供的OLE方法。
2)网络客户应用程序发送请求以调用服务器应用程序的服务,并等待直到其接收到反馈。
3)DCOM客户应用程序调用由DCOM服务器应用程序所提供的服务。
当然,上述情形只是示例性而非限制性的,实践中还存在其它需要在若干应用程序的进程之间进行调试的情形。
当前通用的调试器不具有从当前被调试的应用程序的进程进入其它应用程序的进程调试的功能。程序员必须手动地准备进入其它进程调试的环境。具体而言,如果程序员想要在调试客户应用程序的进程期间进入服务器应用程序的进程所提供的服务进行调试(debug into),则其应当分别为客户应用程序和服务器应用程序启动调试器实例,并事先在服务器的调试器实例中于被请求服务的代码的第一条语句处设置断点。如图7所示,这种传统的在若干应用程序的进程之间调试的方法典型地通过以下步骤来实现:
1)程序员启动一个调试器实例,打开客户应用程序的项目,然后开始调试客户应用程序。
2)程序员在客户应用程序的调试器中执行步过(step over)操作。
3)程序员遇到请求服务器应用程序中某进程提供的服务的语句,因此其想要立即进入该服务的代码进行调试。
4)程序员启动一个新的调试器实例,打开服务器应用程序的项目,并将该新的调试器实例加载(attach)到服务器应用程序。
5)程序员在服务器应用程序的源代码中搜索所请求的服务名称以找出该服务的代码的入口点,使得其能在该服务的代码的第一条语句处设置断点。
6)程序员步过客户调试器实例中请求服务的语句。结果服务器调试器实例中的断点被激活,使得程序员进入服务器应用程序中该进程所提供的服务的代码进行调试。
7)程序员在该服务的代码的入口点处删除该断点,因为该断点是暂时的,然后在服务器的调试器实例中进行调试,直到从所请求的服务返回。
8)返回请求服务的语句,程序员继续在客户应用程序中调试。
可见,现有技术中的上述方法存在以下问题:
●进入其它应用程序的进程调试前的准备工作耗时且繁琐,导致效率低下;
●通常在所请求的服务的代码的入口点处设置的断点是暂时的,一旦该断点被激活,它就不再有用。程序员经常忘记删除该断点,则该断点将在一个不相关的场景下被激活,将影响应用程序的正常调试。
发明内容
鉴于上述现有技术中存在的问题,根据本发明的第一方面,提供了一种调试应用程序的方法,包括步骤:
确定当前调试的进程所属的应用程序与要调试进入的进程所属的另一个应用程序是不同的应用程序;
基于所述确定步骤的确定结果,根据所述当前调试的进程与所述要调试进入的进程之间的关联关系来定位所述另一个应用程序,以及使得所述要调试进入的进程能够被调试执行;和
调试进入所述进程。
根据本发明的第二方面,提供了一种应用程序调试装置,包括:
确定单元,用于确定当前调试的进程所属的应用程序与要调试进入的进程所属的另一个应用程序是不同的应用程序;
调度单元,用于基于所述确定单元的确定结果,根据所述当前调试的进程与所述要调试进入的进程之间的关联关系来定位所述另一个应用程序,以及使得所述要调试进入的进程能够被调试执行;和
调试单元,用于响应于所述调度单元的处理结果调试进入所述进程。
附图说明
通过结合附图对本发明的具体实施方式的描述,本发明的以上的和其它目的、特点和优点将变得显而易见,在附图中:
图1是示出了根据本发明的应用程序调试方法的一个实施例的流程简图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810088812.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:滤芯振动导入装配装置
- 下一篇:快插接头半自动装配机