[发明专利]一种调试嵌入式系统多中断的方法和装置有效
申请号: | 201710110051.3 | 申请日: | 2017-02-27 |
公开(公告)号: | CN106933661B | 公开(公告)日: | 2020-06-02 |
发明(设计)人: | 董时舫;赵谊科 | 申请(专利权)人: | 百富计算机技术(深圳)有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 李艳丽 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 调试 嵌入式 系统 中断 方法 装置 | ||
本发明属于嵌入式软件领域,提供了一种调试嵌入式系统多中断的方法和装置,以便快速、准确地定位出多中断交错产生情况下发生异常的根本原因。该方法包括:为包括N个元素的环形结构数组分配内存;按照一个元素写入一个系统中断的中断运行状态信息的方式,向环形结构数组循环写入系统中断的中断运行状态信息;当有输出要求时,输出环形结构数组中写入的中断运行状态信息。本发明提供的技术方案一方面既避免了中断数据较多时缓存不足导致数据溢出的问题,又可提供最近的有利于快速、有效地复现出异常的流水;另一方面,输出中断运行状态信息时不会打乱系统原本的中断发生次序,不会对系统原本的中断产生影响,输出中断运行状态信息的通道可控可选。
技术领域
本发明属于嵌入式软件领域,尤其涉及一种调试嵌入式系统多中断的方法和装置。
背景技术
在嵌入式系统软件的运行中,经常出现多个中断交错产生即同时、嵌套或串行发生,并因此发生异常的情况,因而需要跟踪定位多中断情况下发生异常的根本原因并加以解决。
现有的一种调试多中断的方法是在中断服务程序中将当前中断的断点信息采集后,立即从某个可输出模块输出。现有的调试方法存在的问题包括:
1)若输出过程采用中断方式来进行,则使系统中断增多,也打乱了系统原本的中断发生次序,若输出过程采用非中断方式来进行,则加大了对应中断服务程序的执行时间,会引起中断响应不及时的其它系统问题;
3)数据量往往非常巨大,查找数据非常麻烦和困难;
4)被聚焦调试的模块无法被用来进行调试输出,例如,通讯端口自身中断的调试无法采用本端口来即时输出调试信息,屏幕自身中断的调试无法采用屏幕来即时输出,打印机自身中断的调试无法采用打印机来即时输出。
综上,上述现有的调试多中断的方法会对系统本身的中断造成不良影响,常常难以跟踪定位出发生异常的原因。
发明内容
本发明的目的在于提供一种调试嵌入式系统多中断的方法和装置,以避免对嵌入式系统本身的中断造成不良影响,并提高调试的效率。
本发明第一方面提供一种调试嵌入式系统多中断的方法,所述方法包括:
为包括N个元素的环形结构数组分配内存,所述N为大于2的整数;
按照一个元素写入一个系统中断的中断运行状态信息的方式,向所述环形结构数组循环写入系统中断的中断运行状态信息;
当有输出要求时,输出所述环形结构数组中写入的中断运行状态信息。
本发明第二方面提供一种调试嵌入式系统多中断的装置,所述装置包括:
内存分配模块,用于为包括N个元素的环形结构数组分配内存,所述N为大于2的整数;
写入模块,用于按照一个元素写入一个系统中断的中断运行状态信息的方式,向所述环形结构数组循环写入系统中断的中断运行状态信息;
输出模块,用于当有输出要求时,输出所述环形结构数组中写入的中断运行状态信息。
从上述本发明技术方案可知,由于保存中断运行状态信息的数组是环形结构,因此,一方面,既避免了中断数据较多时缓存不足导致数据溢出的问题,又可提供最近的一段中断发生情况的流水,这些流水有利于快速、有效地定位出异常;另一方面,输出中断运行状态信息时不会打乱系统原本的中断发生次序,不会对系统原本的中断产生影响,而且,输出中断运行状态信息的通道可控可选。
附图说明
图1是本发明实施例一提供的调试嵌入式系统多中断的方法的实现流程示意图;
图2是本发明实施例二提供的调试嵌入式系统多中断的装置的结构示意图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百富计算机技术(深圳)有限公司,未经百富计算机技术(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710110051.3/2.html,转载请声明来源钻瓜专利网。