[发明专利]一种程序崩溃的签名方法和装置有效
申请号: | 201310130187.2 | 申请日: | 2013-04-15 |
公开(公告)号: | CN103164322A | 公开(公告)日: | 2013-06-19 |
发明(设计)人: | 于维军 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 唐华明 |
地址: | 518031 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 程序 崩溃 签名 方法 装置 | ||
1.一种程序崩溃的签名方法,其特征在于,包括:
获取计算机系统在执行应用程序的进程过程中,发生程序崩溃时调用的堆栈信息;
在所述堆栈信息中获取所述应用程序的进程对应的第一堆栈信息;
根据所述第一堆栈信息对发生的所述程序崩溃进行签名。
2.如权利要求1所述的方法,其特征在于,所述获取计算机系统在执行应用程序的进程过程中,发生程序崩溃时调用的堆栈信息,具体包括:
获取所述计算机系统的内存镜像文件,所述内存镜像文件是所述计算机系统在执行所述应用程序的进程过程中发生程序崩溃时产生的文件;
根据所述应用程序的进程对应的调试文件,对所述内存镜像文件进行预分析得到预分析文件;
在所述预分析文件中查找到所述堆栈信息。
3.如权利要求2所述的方法,其特征在于,所述在所述堆栈信息中获取所述应用程序的进程对应的第一堆栈信息,具体包括:
获取所述堆栈信息中从栈顶到所述堆栈信息的第N层作为第一堆栈信息;或,
从所述堆栈信息的栈顶到栈底,取所述堆栈信息中的M层作为第一堆栈信息;或,
如果所述堆栈信息少于M层时,则取全部的所述堆栈信息作为第一堆栈信息。
4.如权利要求2所述的方法,其特征在于,若在所述预分析文件中查找到如下信息:进行预分析得到的所述程序崩溃的原因类型,和/或,所述应用程序的进程对应的计算机系统内存中储存的除所述堆栈信息外的其它信息;
则所述根据所述第一堆栈信息对发生的所述程序崩溃进行签名,具体包括:
将所述第一堆栈信息与如下任一种或多种信息拼接得到拼接后信息,计算所述拼接后信息的信息标识得到所述程序崩溃的签名:所述原因类型和所述计算机内存中储存的其它信息。
5.如权利要求2至4任一项所述的方法,其特征在于,所述方法还包括:
如果在所述预分析文件中未查找到所述堆栈信息,所述程序崩溃的原因类型,和,所述应用程序的进程对应的计算机系统内存中储存的除所述堆栈信息外的其它信息,则确定所述内存镜像文件无效,重新从所述计算机系统获取所述内存镜像文件。
6.一种程序崩溃的签名装置,其特征在于,包括:
堆栈获取单元,用于获取计算机系统在执行应用程序的进程过程中,发生程序崩溃时调用的堆栈信息;
程序堆栈获取单元,用于在所述堆栈信息中获取所述应用程序的进程对应的第一堆栈信息;
签名单元,用于根据所述第一堆栈信息对发生的所述程序崩溃进行签名。
7.如权利要求6所述的装置,其特征在于,所述堆栈获取单元具体包括:
镜像文件获取单元,用于获取所述计算机系统的内存镜像文件,所述内存镜像文件是所述计算机系统在执行所述应用程序的进程过程中发生程序崩溃时产生的文件;
分析单元,用于根据所述应用程序的进程对应的调试文件,对所述内存镜像文件进行预分析得到预分析文件;
查找单元,用于在所述预分析文件中查找到所述堆栈信息。
8.如权利要求7所述的装置,其特征在于,
所述程序堆栈获取单元,具体用于获取所述堆栈信息中从栈顶到所述堆栈信息的第N层作为第一堆栈信息;或,从所述堆栈信息的栈顶到栈底,取所述堆栈信息中的M层作为第一堆栈信息;或,如果所述堆栈信息少于M层时,则取全部的所述堆栈信息作为第一堆栈信息。
9.如权利要求7所述的装置,其特征在于,
所述查找单元,还用于在所述预分析文件中查找到如下信息:进行预分析得到的所述程序崩溃的原因类型,和/或,所述应用程序的进程对应的计算机系统内存中储存的除所述堆栈信息外的其它信息;
则所述签名单元,具体用于将所述第一堆栈信息与如下任一种或多种信息拼接得到拼接后信息,计算所述拼接后信息的信息标识得到所述程序崩溃的签名:所述原因类型和所述计算机内存中储存的其它信息。
10.如权利要求7至9任一项所述的装置,其特征在于,还包括:
无效处理单元,用于如果在所述预分析文件中未查找到所述堆栈信息,所述程序崩溃的原因类型,和,所述应用程序的进程对应的计算机系统内存中储存的除所述堆栈信息外的其它信息,则确定所述内存镜像文件无效,通知所述镜像文件获取单元重新从所述计算机系统获取所述内存镜像文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310130187.2/1.html,转载请声明来源钻瓜专利网。