一种嵌入式系统的故障修复方法及设备的制作方法

文档序号:6367958阅读:369来源:国知局
专利名称:一种嵌入式系统的故障修复方法及设备的制作方法
技术领域
本发明关于数据通信领域,特别是关于嵌入式系统中的数据通讯技术,具体的讲是ー种嵌入式系统的故障修复方法及设备。
背景技术
嵌入式系统以其高效率、低功耗和高可靠性的特点,广泛的应用于各个领域。近年来随着视频监控、会议终端、物联网等的重大发展,嵌入式系统更为普遍地运用于实时变化的外界环境,并进行更加可靠的信息采集、获取、交互、共享、决策和控制。与此同时,嵌入式系统的主要危害源正日趋复杂。硬件方面的危害源除了雷电、静电等自然危害源之外,还包括通信、雷达、无线识别等射频干扰源,甚至ー些人为的电磁危 害源。而软件方面的危害源则包括由各个产品厂家自主研发的程序和大量的开源软件,这些软件之前的资源竞争、相互交互以及内部的稳定性都会影响到嵌入式系统的稳定。然而大部分的嵌入式产品如安防所使用的编解码器等常常放置在无人值守、较高的地方,并且这些产品相对分散,一旦出现这些嵌入式产品发生故障无法正常工作的情况吋,将对维修人员的维修工作带来巨大的困难。如此便造成这些应用于通用嵌入式系统的产品故障修复能力差的问题,难以满足电子系统在不同层面上的多种安全运行要求,且其综合生存能力降低。现有技术中的部分嵌入式系统的产品也拥有故障修复功能,但是这些产品均有如下缺陷部分嵌入式系统的复杂程度较高,可复用性低;部分嵌入式系统的算法占用资源较高,对整体的嵌入式系统性能造成影响;部分嵌入式系统的产品对系统要求比较固定,诸如仅限于在Linux或Wince上使用,跨平台性能差;部分嵌入式系统仅能满足个别故障问题,对于新出现的故障无法处理,可扩展性差。

发明内容
本发明实施例提供了ー种嵌入式系统的故障修复方法及设备,通过进程发送的故障报告,获取对应的策略,进而实现了对嵌入式系统进程中故障的自动修复,极大提高了整个系统的稳定性,增强了用户体验。本发明的目的之ー是,提供ー种嵌入式系统的故障修复方法,所述的方法包括接收嵌入式系统中的进程发送的故障报告;解析所述的故障报告得到当前故障报告对应的故障类型;根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型;根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略;执行所述的策略以修复与所述的故障报告对应的故障。本发明的目的之ー是,提供ー种嵌入式系统的故障修复设备,所述的设备包括故障报告接收模块,用于接收嵌入式系统中的进程发送的故障报告;解析模块,用于解析所述的故障报告得到当前故障报告对应的故障类型;策略类型获取模块,用于根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型;策略获取模块,用于根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略;策略执行模块,用于执行所述的策略以修复与所述的故障报告对应的故障。本发明的有益效果在于,实现了对嵌入式系统故障的自动无缝修复,且整个系统的复杂程度低,便于使用者理解,有利于推广和二次开发,对系统硬件的配置需求较低,仅需组成ー个基本嵌入式系统的硬件结构即可,且系统运行占用的系统资源较少,不会对嵌入式系统的整体性能产生影响。此外,由于本发明没有依赖固定的系统函数库,在任意的嵌入式系统上均可使用,还实现了对系统新出现的故障的修复,并通过将该种处理方式向其他同类产品进行传送,实现了其他的产品对该故障的修复。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例提供的ー种嵌入式系统的故障修复方法的流程图;图2为本发明实施例提供的ー种嵌入式系统的故障修复方法中S103的具体流程图;图3为本发明实施例提供的ー种嵌入式系统的故障修复方法中S105的具体流程图;图4为本发明实施例提供的ー种嵌入式系统的故障修复方法的具体实施例的流程图;图5为本发明实施例提供的ー种嵌入式系统的故障修复设备中故障表、策略表以及对应关系的不例图;图6为本发明实施例提供的ー种嵌入式系统的故障修复设备之间的交互图;图7为本发明实施例提供的ー种嵌入式系统的故障修复设备的结构框图;图8为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式ニ的结构框图;图9为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式三的结构框图;图10为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式四的结构框图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范围。图I为本发明实施例提供的ー种嵌入式系统的故障修复方法的流程图,由图I可知,所述的方法包括
SlOl :接收嵌入式系统中的进程发送的故障报告。S102 :解析所述的故障报告得到当前故障报告对应的故障类型。每个进程发送的故障报告中均包含对应的故障类型,故障类型与故障报告一一对应。S103:根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型。图5为本发明实施例提供的ー种嵌入式系统的故障修复设备中故障表、策略表以及对应关系的示例图,由图5可知,嵌入式系统中预先存储了各个进程对应的故障表、策略表以及对应关系,其中故障表中存储了嵌入式系统中的各个进程的常见故障类型以及各个故障类型对应的策略类型。策略表中存储了各个策略以及与策略一一对应的策略类型,如此方可实现根据不同的策略类型查询对应的策略。策略中记录了嵌入式系统可以通过哪些方式来处理故障,策略表中的处理策略是需要预先定义好的,这些故障处理方式根据不同 的嵌入式系统而不同。除此之外,策略表中所记录的策略按照优先级由高到低排列,将对系统影响最小的处理方式定为优先级最高的策略,以此类推。图2为本发明实施例提供的ー种嵌入式系统的故障修复方法中S103的具体流程图,由图2可知,该步骤具体包括S201 :根据所述的故障类型在预先存储的故障表中进行搜索;S202 :判断步骤S201的搜索结果是否为空,当判断为是时,执行步骤S204,否则执行步骤S203 ;S203 :输出所述的搜索结果包含的与所述的故障类型对应的策略类型。捜索结果中的策略类型对应的策略即为修复当前故障的处理方式。S204 :输出预先存储的策略表中所有策略对应的策略类型。也即当前故障在故障表中无记录,预先存储的故障表中未包含当前故障,此时搜索结果中的策略类型为策略表中的所有策略对应的策略类型。S104 :根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略。对于步骤S203,获取的策略即为修复当前故障的策略。对于步骤S204,获取的策略即为嵌入式系统中的策略表中的所有策略。S105 :执行所述的策略以修复与所述的故障报告对应的故障。图3为当根据所述的故障类型在预先存储的故障表中进行搜索的结果为空吋,S105的具体流程图,由图3可知,该步骤具体包括S301 :判断搜索结果是否为空,当搜索结果为空时,执行步骤S302 ;S302 :按照策略优先级由高到低的顺序顺次执行ー个策略。执行的第一个策略即为策略表中优先级最高的策略。S303 :所述的ー个策略执行结束后,判断所述的进程是否正常运行。即判断执行完第一个策略后,进程的故障是否得到修复,当运行正常后,执行步骤S306,否则执行步骤S304 ;S304 :判断当前的策略是否为策略表中的最后ー个策略,当判断为否时,返回执行步骤S302,否则执行步骤S205 ;
S305 :将所述的故障报告存储在日志报告中。日常报告中的故障可后续由技术人员专门进行针对性研究,探寻对应的处理策略。
S306 :将所述的故障类型与当前的策略对应的策略类型存储在所述的故障表中。存储后,当前进程后续出现当前故障吋,即可在故障表中捜索到对应的策略类型,实时进行运行对应的策略以修复该故障。S307 :将所述的故障类型与当前的策略对应的策略类型通过UDP协议传送至其他嵌入式系统。如此,其他的嵌入式系统接收到该故障报告吋,即可执行对应的策略以修复该故障。图6为本发明实施例提供的ー种嵌入式系统的故障修复设备之间的交互图,由图6可知,嵌入式系统之间可通过UDP协议进行交互。本发明提供的ー种嵌入式系统的故障修复方法除了上述步骤之外,还包括在嵌入式系统中设置看门狗。通过不断的更新看门狗(喂狗)来确定整个系统的稳定性,当嵌入式系统的硬件出现故障导致整个系统无法正常运行或故障修复设备本身出现了故障时,故障修复设备将无法正常更新看门狗(喂狗),看门狗芯片会将整个硬件进行复位。图7为本发明实施例提供的ー种嵌入式系统的故障修复设备的结构框图,由图7 可知,所述的设备200包括故障报告接收模块201,用于接收嵌入式系统中的进程发送的故障报告;解析模块202,用于解析所述的故障报告得到当前故障报告对应的故障类型。每个进程发送的故障报告中均包含对应的故障类型,故障类型与故障报告一一对应。策略类型获取模块203,用于根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型。图5为本发明实施例提供的ー种嵌入式系统的故障修复设备中故障表、策略表以及对应关系的示例图,由图5可知,嵌入式系统中预先存储了各个进程对应的故障表、策略表以及对应关系,其中故障表中存储了嵌入式系统中的各个进程的常见故障类型以及各个故障类型对应的策略类型。策略表中存储了各个策略以及与策略一一对应的策略类型,如此方可实现根据不同的策略类型查询对应的策略。策略中记录了嵌入式系统可以通过哪些方式来处理故障,策略表中的处理策略是需要预先定义好的,这些故障处理方式根据不同的嵌入式系统而不同。除此之外,策略表中所记录的策略按照优先级由高到低排列,将对系统影响最小的处理方式定为优先级最高的策略,以此类推。图8为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式ニ的结构框图,由图8可知,所述的策略类型获取模块203具体包括搜索单元2031,用于根据所述的故障类型在预先存储的故障表中进行搜索;第一策略类型输出単元2032,用于当搜索结果不为空时,输出所述的搜索结果包含的与所述的故障类型对应的策略类型,捜索结果中的策略类型对应的策略即为修复当前故障的处理方式。第二策略类型输出単元2033,用于当搜索结果为空吋,输出预先存储的策略表中所有策略对应的策略类型。也即当前故障在故障表中无记录,预先存储的故障表中未包含当前故障,此时搜索结果中的策略类型为策略表中的所有策略对应的策略类型。策略获取模块204,用于根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略。对于第一策略类型输出单元2032,获取的策略即为修复当前故障的策略。对于第二策略类型输出単元2033,获取的策略即为嵌入式系统中的策略表中的所有策略。
策略执行模块205,用于执行所述的策略以修复与所述的故障报告对应的故障。图9为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式三的结构框图,由图9可知,当根据所述的故障类型在预先存储的故障表中进行搜索的结果为空时,所述的策略执行模块205包括第一策略执行单元2051,用于当搜索结果为空时,按照策略优先级由高到低的顺序顺次执行ー个策略,执行的第一个策略即为策略表中优先级最高的策略。判断単元2052,用于当所述的第一策略执行单元运行结束后,判断所述的进程是否正常运行,即判断执行完第一个策略后,进程的故障是否得到修复。第一存储单元2053,用于当所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型存储在所述的故障表中,存储后,当前进程后续出现当前故障时,即可在故障表中捜索到对应的策略类型,实时进行运行对应的策略以修复该故障。第二执行单元2054,用于当所述的进程运行故障时,按照策略优先级从高到低的顺序执行下ー个策略。图10为本发明实施例提供的ー种嵌入式系统的故障修复设备的实施方式四的结构框图,由图10可知,所述的设备还包括传送单元206,用于当搜索结果为空且所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型通过UDP协议传送至其他嵌入式系统。如此,其他的嵌入式系统接收到该故障报告吋,即可执行对应的策略以修复该故障。图6为本发明实施例提供的ー种嵌入式系统的故障修复设备之间的交互图,由图6可知,嵌入式系统之间可通过UDP协议进行交互。第二存储单元207,用于当执行完预先存储的策略表中的所有策略,所述的进程运行故障吋,将所述的故障报告存储在日志报告中。日常报告中的故障可后续由技术人员专门进行针对性研究,探寻对应的处理策略。所述的设备还包括看门狗208。通过不断的更新看门狗(喂狗)来确定整个系统的稳定性,当嵌入式系统的硬件出现故障导致整个系统无法正常运行或故障修复设备本身出现了故障时,故障修复设备将无法正常更新看门狗(喂狗),看门狗芯片会将整个硬件进行复位。如图4所示的本发明的ー种嵌入式系统的故障修复方法、设备的具体实施例中,具体包括S401 :启动看门狗线程。为了保证对整个系统中所有进程故障的完整收集,嵌入式系统启动后优先创建看门狗线程。S402 :对看门狗进行初始化,使看门狗开始工作。S403 :更新看门狗操作(即喂狗)。S404 :休眠预定时间后返回执行步骤S403。休眠时间可根据不同的设备预先设定。S405 :初始化网络资源。在该实施例中,初始化生成UDP Server和UDPClient,嵌入式系统中的各个进程通过各自的UDP Client发送故障报告。UDPServer接收故障报告。S406 :在UDP Server上阻塞式监听UDP Client的连接。S407 UDP Client连接完成后,UDP Server接收UDP Client发送的故障报告。 S408:接收到故障报告后,根据故障表判断当前故障是否为已知故障,如果是已知故障则执行步骤S415,否则执行步骤S409 ;S409 :当接收的故障为未知故障时,将处理指针指向策略表中优先级最高的策略;S410 :执行指定的策略;S411 :判断当前进程的故障是否得到修复,当判断为是时,执行步骤S416,否则执行步骤S412 ;S412:判断当前策略是否为 策略表中的最后ー个策略即判断指针是否指示到策略表的尾部,当判断为是时,执行步骤S413,否则执行步骤S414 ;S413 :将该故障记录在日志中,以便研发人员调试。S414 :指针移动到下一优先级的策略中,返回执行步骤S414 ;S415:直接按照该故障对应策略修复故障。执行结束后断开网络连接,对不用的资源进行释放。S416 :将该故障添加到故障表,并将该故障与修复故障的策略绑定;S417 :通过故障修复设备创建的UDP Client向网络广播该故障与其处理策略。下面以在TI DM6467平台上的一款音视频编解码器为例,具体介绍本发明实施例提供的ー种嵌入式系统的故障修复方法及设备。此音视频编解码的嵌入式硬件环境如下 主处理器为ARM926EJ-S的处理器,主频为297MHz。协处理器为C64x+,主频为594MZ。
DDR 主频为 297MHz。此音视频编解码的嵌入式软件环境如下 操作系统采用 Linux 2. 6. 18。 自身文件系统为YAFFS2。由于音视频编解码器通常放置无人值守的地方,故对自我修复要求相对较高。系统中存在高清编码进程、标清编码进程、高清解码进程、标清解码进程、业务转换进程、升级进程、还有大量的Shell脚本程序,这些进程在自身运行时都会将故障报告发送给故障修复设备。由音视频编码器的运行反馈可知,使用本发明提供的故障修复设备的已知故障修复率可达到100%,未知故障的修复率可达到97%,且本发明对CPU的占用情况小于0. 2%,对RAM的占用小于0. 15%。综上所述,本发明的有益成果是提供了ー种嵌入式系统的故障修复方法及设备,实现了对嵌入式系统进程中故障的自动无缝修复,极大提高了整个系统的稳定性,增强了用户体验。本发明的优点是I、创造性地解析进程发送的故障报告,根据解析得到的故障类型在预先存储的故障表中获取对应的策略类型,进而执行策略类型对应的策略以修复当前进程的故障,实现了对嵌入式系统故障的自动无缝修复,且整个系统的复杂程度低,便于使用者理解,有利于推广和二次开发。2、本发明提供的方案对系统硬件的配置需求较低,仅需组成ー个基本嵌入式系统的硬件结构即可,且系统运行占用的系统资源较少,不会对嵌入式系统的整体性能产生影响。此外,由于本发明没有依赖固定的系统函数库,在任意的嵌入式系统上均可使用。3、本发明对故障的处理可实现对硬件故障和软件故障的双重修复,还实现了对系统新出现的故障的修复,并通过将该种处理方式向其他同类产品进行传送,实现了其他的产品对该故障的修复。 本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种嵌入式系统的故障修复方法,其特征是,所述的方法包括 接收嵌入式系统中的进程发送的故障报告; 解析所述的故障报告得到当前故障报告对应的故障类型; 根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型; 根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略; 执行所述的策略以修复与所述的故障报告对应的故障。
2.根据权利要求I所述的方法,其特征是,根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型具体包括 根据所述的故障类型在预先存储的故障表中进行搜索; 当搜索结果不为空时,输出所述的搜索结果包含的与所述的故障类型对应的策略类型; 当搜索结果为空时,输出预先存储的策略表中所有策略对应的策略类型。
3.根据权利要求2所述的方法,其特征是,在所述的预先存储的策略表中,策略按照优先级由高到低排列。
4.根据权利要求3所述的方法,其特征是,执行所述的策略以修复与所述的故障报告对应的故障包括 当搜索结果为空时,按照策略优先级由高到低的顺序顺次执行一个策略; 所述的一个策略执行结束后,判断所述的进程是否正常运行; 当所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型存储在所述的故障表中; 当所述的进程运行故障时,按照策略优先级从高到低的顺序执行下一个策略。
5.根据权利要求4所述的方法,其特征是,当搜索结果为空且所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型通过UDP协议传送至其他嵌入式系统。
6.根据权利要求4所述的方法,其特征是,当执行完预先存储的策略表中的所有策略,所述的进程运行故障时,将所述的故障报告存储在日志报告中。
7.根据权利要求1-6任意一项所述的方法,其特征是,所述的方法还包括在嵌入式系统中设置看门狗。
8.一种嵌入式系统的故障修复设备,其特征是,所述的设备包括 故障报告接收模块,用于接收嵌入式系统中的进程发送的故障报告; 解析模块,用于解析所述的故障报告得到当前故障报告对应的故障类型; 策略类型获取模块,用于根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型; 策略获取模块,用于根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略; 策略执行模块,用于执行所述的策略以修复与所述的故障报告对应的故障。
9.根据权利要求8所述的设备,其特征是,所述的策略类型获取模块具体包括 搜索单元,用于根据所述的故障类型在预先存储的故障表中进行搜索; 第一策略类型输出单元,用于当搜索结果不为空时,输出所述的搜索结果包含的与所述的故障类型对应的策略类型; 第二策略类型输出单元,用于当搜索结果为空时,输出预先存储的策略表中所有策略对应的策略类型。
10.根据权利要求9所述的设备,其特征是,在所述的预先存储的策略表中,策略按照优先级由高到低排列。
11.根据权利要求10所述的设备,其特征是,所述的策略执行模块包括 第一策略执行单元,用于当搜索结果为空时,按照策略优先级由高到低的顺序顺次执行一个策略; 判断单元,用于当所述的第一策略执行单元运行结束后,判断所述的进程是否正常运行; 第一存储单元,用于当所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型存储在所述的故障表中; 第二执行单元,用于当所述的进程运行故障时,按照策略优先级从高到低的顺序执行下一个策略。
12.根据权利要求11所述的设备,其特征是,所述的设备还包括传送单元,用于当搜索结果为空且所述的进程正常运行时,将所述的故障类型与当前的策略对应的策略类型通过UDP协议传送至其他嵌入式系统。
13.根据权利要求12所述的设备,其特征是,所述的设备还包括第二存储单元,用于当执行完预先存储的策略表中的所有策略,所述的进程运行故障时,将所述的故障报告存储在日志报告中。
14.根据权利要求8-13任意一项所述的设备,其特征是,所述的设备还包括看门狗。
全文摘要
本发明实施例提供了一种嵌入式系统的故障修复方法及设备,所述的方法包括接收嵌入式系统中的进程发送的故障报告;解析所述的故障报告得到当前故障报告对应的故障类型;根据所述的故障类型在预先存储的故障表中获取与所述的故障类型对应的策略类型;根据所述的策略类型在预先存储的策略表中获取与所述的策略类型对应的策略;执行所述的策略以修复与所述的故障报告对应的故障。通过进程发送的故障报告,获取对应的策略,进而实现了对嵌入式系统进程中故障的自动无缝修复,极大提高了整个系统的稳定性,增强了用户体验。
文档编号G06F11/07GK102662784SQ201210106929
公开日2012年9月12日 申请日期2012年4月12日 优先权日2012年4月12日
发明者刘卫国, 单衍景, 王伟鸿, 谢泳江, 贾瑞明 申请人:北京华夏电通科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1