[发明专利]多线程看门狗监控方法在审
申请号: | 201010127765.3 | 申请日: | 2010-03-18 |
公开(公告)号: | CN101794244A | 公开(公告)日: | 2010-08-04 |
发明(设计)人: | 郝盼 | 申请(专利权)人: | 上海乐毅信息科技有限公司 |
主分类号: | G06F11/00 | 分类号: | G06F11/00;G06F11/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200110 上海市闵*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多线程 看门狗 监控 方法 | ||
技术领域
本发明涉及多线程看门狗监控技术,尤其涉及一种在线程执行时间不确定的前提下看门狗监控的实现方法。
背景技术
众所周知,嵌入式产品一般对工作环境的要求比较苛刻,而且要求全天候运行。因此,为保证嵌入式系统的高可靠性和稳定性,现有技术一般都会在嵌入式系统中加入软件看门狗,与外部的硬件看门狗相配合,保证嵌入式系统的自我恢复性。
硬件看门狗一般需要软件输出周期性的电平变换(此动作称为:“喂狗”)来确认系统处于正常的运行状态,如无周期性的电平变换则会触发复位信号,使系统复位。因此软件输出变化电平的周期性显得尤为重要。
在现有的嵌入式系统中,整个嵌入式程序都属于整个循环中,进行周期性的执行,看门狗设计者只需要在此循环中分段插入“喂狗”操作,便可以检测整个系统的运行情况。
但是随着嵌入式系统的复杂性提高,原有的单循环系统被拆分为多进程多线程系统,因此嵌入式系统就需要监控每一个线程的运行情况才能最终保证整个系统的稳定性。
中国专利公开号CN1547125、CN101295271A发明中均提及了采用线程进行看门狗监控的情况,并对如何保证看门狗的稳定性提出了一些技术设想。但对看门狗监控技术的核心环节:如何根据各线程的特点来定制每个线程的执行时间,并能够辨别线程因等待资源而合理挂起的情况,却未提供解决的方案。因此上述技术方案在具体实施中还存在技术空白。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种实时、有效、可控的多线程看门狗监控方法。
为实现上述目的,本发明提供了一种多线程看门狗监控方法,至少包括以下步骤:
步骤一,初始化看门狗监控队列;
步骤二,建立看门狗监控进程,将本步骤的监控线程定义为最高优先级,周期执行时间为T1;
步骤三,创建其他应用线程,在创建其他应用线程时根据需要设定是否进行看门狗监控;如需要,则设置看门狗监控的开始时间T2和执行时间T3;
步骤四,如果线程中有阻塞资源,在阻塞前先关闭该线程的看门狗监控;否则跳至步骤六;
步骤五,等待步骤五中所述阻塞资源有效;
步骤六,开启该线程的看门狗监控,重置开始时间和执行时间为T2,T3;
步骤七,监控线程等待定时信号,定时检测看门狗监控队列;
步骤八,检测监控对象的开始时间是否达到,未到达返回步骤七;
步骤九,检测到监控对象中剩余时间小于0,则判断该线程为异常,回收该线程(或通过硬件看门狗复位系统),返回步骤三;
步骤十,将该线程执行时间减去T1,返回步骤六;
步骤十一,在功能线程执行一次循环后,返回步骤四。
与现有技术的软件看门狗相比,现有技术的软件看门狗无法根据各线程自身的特点来制定每个线程的执行时间,并无法分辨线程是因等待资源而合理挂起还是运行出现异常而挂起的缺陷,而本发明是一种有效、可控的看门狗的监控方法。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明一具体实施例的流程图。
具体实施方式
如图1所示,本发明的多线程看门狗监控方法一具体实施例包括以下步骤:
步骤一,创建监控守护线程,此线程具有较高的优先级,并且此线程与监控的其它功能线程属于不同的进程,功能单一,以避免受到其他线程影响。
步骤二,创建监控队列,进行初始化。为了能够和其他进程共享此监控队列,通过采用一资源共享机制,以便于和其他进程进行共享。
在不同具体实施例中,上述的资源共享机制可以是:共享内存,有名消息队列,有名管道等之一。
步骤三,监控守护进程挂起,等待定时器发送的定时信号量,执行周期为T1。
步骤四,此时其他功能线程开始创建,并运行。
步骤五,如果该线程需要监控线程进行监控,设置此线程的开始监控时间为T2,执行时间为T3。此参数可根据线程的具体需求进行单独设置,从而达到为每一个线程进行定制的技术效果。
步骤六,如果线程在运行过程中阻塞其他资源,则在阻塞之前,关闭此线程的看门狗监控,防止由于阻塞造成线程执行的不确定性。
步骤七,功能线程处于挂起状态,等待信号。
步骤八,在等待到信号之后,重新设置该线程的开始时间和执行时间。
步骤九,再次开启此线程的看门狗监控。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海乐毅信息科技有限公司,未经上海乐毅信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010127765.3/2.html,转载请声明来源钻瓜专利网。