程序运行异常时的数据获取方法、装置、终端及存储介质制造方法及图纸

技术编号:24090532 阅读:34 留言:0更新日期:2020-05-09 07:52
本发明专利技术公开了一种程序运行异常时的数据获取方法、装置、终端及存储介质,所述方法包括:当程序出现异常运行状态时,获取所述程序中与所述异常运行状态中所对应的函数之间的调用关系数据;获取所述程序中与所述异常运行状态中所对应的函数的内存数据。本发明专利技术中通过获取程序中出现的异常运行状态,并进一步获取异常运行状态对应的函数的调用关系数据以及内存数据,以便根据保存的数据来解决异常,可见本发明专利技术无需对所有的函数的相关数据都进行保存,简化了流程,节省了资源的占用。

Data acquisition method, device, terminal and storage medium in case of abnormal program operation

【技术实现步骤摘要】
程序运行异常时的数据获取方法、装置、终端及存储介质
本专利技术涉及数据获取
,尤其涉及的是一种程序运行异常时的数据获取方法、装置、终端及存储介质。
技术介绍
随着现代程序的代码规模和业务复杂度不断的增加,迫切需要一种能够准确获取程序运行发生错误时的相关内存数据和定位代码的手段,来达到快速解决复杂程序运行错误的目的。特别是嵌入式环境下的程序,系统资源和调试工具的不足更要求该手段满足简单、易实现、资源占用低的要求。现有linux内核的coredump调试技术(当程序运行的过程中异常终止或崩溃,操作系统会将程序当时的内存状态记录下来,保存在一个文件中,该技术即为coredump调试技术),会无差别的保存程序运行中的所有内存数据,占用大量的存储空间,且不适用于嵌入式系统环境。因此,现有技术还有待改进和发展。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种程序运行异常时的数据获取方法、装置、终端及存储介质,旨在解决现有技术中当程序出现异常时,会无差别的保存程序运行中的所有内存数据,本文档来自技高网...

【技术保护点】
1.一种程序运行异常时的数据获取方法,其特征在于,所述方法包括:/n当程序出现异常运行状态时,获取所述程序中与所述异常运行状态中所对应的函数之间的调用关系数据;/n获取所述程序中与所述异常运行状态中所对应的函数的内存数据。/n

【技术特征摘要】
1.一种程序运行异常时的数据获取方法,其特征在于,所述方法包括:
当程序出现异常运行状态时,获取所述程序中与所述异常运行状态中所对应的函数之间的调用关系数据;
获取所述程序中与所述异常运行状态中所对应的函数的内存数据。


2.根据权利要求1所述的程序运行异常时数据获取方法,其特征在于,所述获取所述程序中与所述异常运行状态中所对应的函数的内存数据,包括:
获取所述异常运行状态,并对所述异常运行状态进行解析,得到与所述异常运行状态所对应的函数;
从所述函数中获取被调用函数以及调用者函数之间的调用关系数据。


3.根据权利要求1所述的程序运行异常时数据获取方法,其特征在于,所述从所述函数中获取被调用函数以及调用者函数之间的调用关系数据,包括:
获取被调用函数的栈帧地址,从所述被调用函数的所述栈帧地址中获取调用者函数的指令地址;
从调用者函数的指令地址中获取调用者函数的申请栈帧长度,得到获取被调用函数以及调用者函数之间的调用关系数据。


4.根据权利要求3所述的程序运行异常时数据获取方法,其特征在于,所述获取所述程序中与所述异常运行状态中所对应的函数的内存数据,包括:
获取所述函数所对应的栈帧地址,并从所述栈帧地址中获取内存数据。


5.根据权利要求4所述的程序运行异常时数据获取方法,其特征在于,所述从所述栈帧地址中获取内存数据,包括:
从所述被调用函数的栈帧地址中获取所述被调用函数的内存数...

【专利技术属性】
技术研发人员:向卫东孟庆晓吴闽华
申请(专利权)人:深圳震有科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1