[发明专利]一种软件错误现场定位及处理的方法及装置在审
申请号: | 201610458512.1 | 申请日: | 2016-06-22 |
公开(公告)号: | CN107526677A | 公开(公告)日: | 2017-12-29 |
发明(设计)人: | 王丹丹 | 申请(专利权)人: | 上海中兴软件有限责任公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京元本知识产权代理事务所11308 | 代理人: | 秦力军 |
地址: | 201203 上海自由*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 错误 现场 定位 处理 方法 装置 | ||
技术领域
本发明涉及嵌入式系统技术领域,特别涉及一种软件错误现场定位及处理的方法及装置。
背景技术
凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统,嵌入式系统可采用多种类型的处理器和处理器体系结构。嵌入式系统有着广泛的应用领域和应用前景,如手机、数字相机、数字摄像机、机顶盒、高清电视、游戏机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等。
随着软件规模的逐渐扩大,它的复杂度也在增加,软件可靠性往往随着规模的增加而下降,软件质量也越来越难保证,尽管加强了软件开发过程的管理,开发了良好的测试用例,采用了多种测试方法,都不能保证软件运行过程中完全没有异常,其中,内存异常和程序进入某个异常分支而导致死循环,都是很难定位和排查的。内存异常可能是内存的读写超过了正常的范围,比如数组越界、堆栈溢出,也可能是内存存储单元长期受外界条件影响而失效。容易触发的软件错误往往在开发和测试阶段就已解决,遗留到产品中的软件错误往往程序运行一段时间后才会暴露问题,难以及时定位。目前,嵌入式系统软件开发商对这种软件异常错误发现和处理各不相同,并没有统一的方式。通常,软件错误检测都是停留调度和算法级别上的检测,不主动检测内存方面的异常,程序一直处于异常状态,或程序异常退出,或待人为发现程序异常后主动复位系统,未能识别是嵌入式系统中的哪个处理器造成的错误,是否有必要复位整个系统。或者软件错误检测单元和被检测单元是同一个处理器上,一旦发生软件错误,无法保证检测错误检测单元能够正常工作。或者主动监测代码异常,发现异常时才会复位处理器,此时内存改写可能已经发生一段时间了,即使保存内存信息也不是最接近异常现场的。
发明内容
根据本发明实施例提供的方案解决的技术问题是无法及时发现处理器是否发生了软件错误。
根据本发明实施例提供的一种软件错误现场定位及处理的方法,包括:
系统上电后,各数字信号处理单元对其运行软件进行软件错误检测;
未检测到软件错误的数字信号处理单元,向中央处理单元发送处理器状态正常通知消息,并进行正常操作;
检测到软件错误的数字信号处理单元,则进入不可屏蔽中断,并停止向中央处理单元发送处理器状态正常通知消息。
优选地,当所述中央处理单元未收到处理器状态正常通知消息时,则确认相应数字信号处理单元出现了软件错误;
其中,所述软件错误包括数字信号处理单元检测到的内存代码段改写,和/或堆栈溢出,和/或异常表改写的软件错误和数字信号处理单元未检测到的错误代码引起程序进入死循环和错误代码引起程序代码跑飞的软件错误。
优选地,所述中央处理单元确认相应数字信号处理单元出现了软件错误后,包括:
所述中央处理单元停止向相应数字信号处理单元指派业务。
优选地,所述中央处理单元确认相应数字信号处理单元出现了软件错误后,包括:
所述中央处理单元启动定时器开始计时,并读取相应数字信号处理单元的内存数据;
所述中央处理单元将所读取的内存数据发送到服务器进行保存;
当所述中央处理单元的定时器计时到预置时间或内存数据全部保存至服务器时,通知相应数字信号处理单元进行软件复位。
优选地,所述中央处理单元接收到数字信号处理单元发送的处理器状态正常通知消息后,包括:
所述中央处理单元对数字信号处理单元发送的处理器状态正常通知消息进行校验;
若对所述处理器状态正常通知消息校验成功,则所述中央处理单元向相应数字信号处理单元指派业务;
若对所述处理器状态正常通知消息校验失败,则所述中央处理单元确认相应数字信号处理单元出现了软件错误。
根据本发明实施例提供的一种软件错误现场定位及处理的装置,包括:
检测模块,用于系统上电后,各数字信号处理单元对其运行软件进行软件错误检测;
第一处理模块,用于未检测到软件错误的数字信号处理单元,向中央处理单元发送处理器状态正常通知消息,并进行正常操作;
第二处理模块,用于检测到软件错误的数字信号处理单元,则进入不可屏蔽中断,并停止向中央处理单元发送处理器状态正常通知消息。
优选地,还包括第三处理模块,用于检测到所述中央处理单元未收到处理器状态正常通知消息时,则确认相应数字信号处理单元出现了软件错误;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海中兴软件有限责任公司,未经上海中兴软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610458512.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种跨系统测试方法及装置
- 下一篇:Web应用程序的测试方法和装置