System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及嵌入式操作系统,具体涉及一种基于实时操作系统(rtos)开发的软件运行实时性监测方法及系统。
技术介绍
1、在嵌入式系统中,应用程序的实时性至关重要,各任务对运算和执行时间有严格限制,超出设计的时间范围可能导致严重后果。为确保实时性,嵌入式软件大多基于实时操作系统(rtos)进行开发。
2、目前,针对rtos自身的实时性测试和评估方法较多,主要关注指标包括上下文切换时间、抢占时间、中断延迟时间等。良好的rtos实时性指标是嵌入式应用软件实时性的基础,但优秀的rtos实时性却不能保证应用程序一定满足系统实时性指标要求。在一个完整的嵌入式系统中,在rtos之上还有板级支持包(bsp)、总线数据收发、协议解析等基础驱动,在基础驱动之上才是应用程序。除rtos之外,驱动程序和应用程序共享操作系统资源,包括内存、任务、锁、定时器、中断等资源,设计方式和处理策略均会影响整个系统的实时性,可能导致嵌入式系统实时性不满足要求。
3、针对嵌入式软件实时性不满足要求问题,若不进行监测和处理,可能导致系统功能失效,影响系统可靠性。当前对于嵌入式软件运行监测较为常见的是看门狗守护程序。但看门狗程序侧重于粗粒度的时间监测,较难用于实时性监测,因为看门狗程序一般监测超时和死循环,触发狗咬表明系统陷入异常的故障状态,看门狗触发门限一般在秒级以上。软件实时性调度和处理要求往往在毫秒级甚至更短,时间精度比看门狗高,实时性不符合设计时难以触发看门狗复位。另外,看门狗一般基于功能流程进行监测,一个功能流程往往涉及多个任务,功能流
技术实现思路
1、针对现有技术中存在的问题,提供了一种基于rtos的软件运行实时性监测方法及系统,可以确保基于rtos开发的应用软件满足实时性要求。
2、本专利技术第一方面提出了一种基于rtos的软件运行实时性监测方法,包括:
3、配置监测参数,并在上电时读取并解析所配置的监测参数;所述监测参数至少包括实时性监测任务数量、实时性监测任务优先级以及实时性监测任务异常处理方式;
4、根据监测参数创建监测任务,并对软件进行实时性异常判断;
5、统计和记录实时性异常信息以及根据监测参数进行故障处理。
6、作为一种优选方案,所述监测参数还包括实时性监测任务调度周期、实时性监测任务超时时间门限以及实时性监测任务超时异常次数。
7、作为一种优选方案,所述对软件进行实时性异常判断,具体包括:
8、步骤1、创建监测任务,初始化上次判断时间为rtos当前时间;
9、步骤2、根据实时性监测任务调度周期调用rtos接口进行时延,释放cpu资源;
10、步骤3、获取rtos当前时间,并判断rtos当前时间减去上次判断时间是否大于实时性监测任务超时时间门限,若是,进入步骤4;若否,将上次判断时间刷新为rtos当前时间,进入步骤2;
11、步骤4、调度超时次数加一,判断调度超时次数是否大于或等于实时性监测任务超时异常次数,若是则表示存在实时性异常,否则,将上次判断时间刷新为rtos当前时间,进入步骤2。
12、作为一种优选方案,所述统计和记录实时性异常信息包括发送时间、监测任务优先级、当前所有任务cpu占用率、异常累计次数、超时时间以及调度周期,用于后续改进设计或定位问题。
13、作为一种优选方案,所述实时性监测任务异常处理方式包括提示、降级和重启。
14、作为一种优选方案,所述根据监测参数进行故障处理,具体包括:
15、在监测到实时性异常后,进行提示、降级或重启处理;其中,提示包括进行日志打印并记录,输出用户实时性异常信息,但不影响或中断正常业务运行;降级包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性异常事件,应用根据事件信息进行业务降级处理;重启包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性准备重启事件,重启系统。
16、本专利技术第二方面提出了一种基于rtos的软件运行实时性监测系统,包括:
17、配置数据管理模块,用于配置监测参数,所述监测参数至少包括实时性监测任务数量、实时性监测任务优先级、实时性监测任务异常处理方式、实时性监测任务调度周期、实时性监测任务超时时间门限以及实时性监测任务超时异常次数;
18、监测任务管理模块,用于根据监测参数生成监测任务,对软件进行实时性异常监测,并输出异常监测结果;
19、统计和记录模块,用于统计和记录实时性异常,并记录相关信息;
20、故障处理模块,用于根据异常检测结果与监测参数执行相应异常处理。
21、作为一种优选方案,所述监测任务管理模块中,对软件进行实时性异常监测的具体过程包括:
22、步骤a、创建监测任务,初始化上次判断时间为rtos当前时间;
23、步骤b、根据实时性监测任务调度周期调用rtos接口进行时延,释放cpu资源;
24、步骤c、获取rtos当前时间,并判断rtos当前时间减去上次判断时间是否大于实时性监测任务超时时间门限,若是,进入步骤d;若否,将上次判断时间刷新为rtos当前时间,进入步骤b;
25、步骤d、调度超时次数加一,判断调度超时次数是否大于或等于实时性监测任务超时异常次数,若是则表示存在实时性异常,否则,将上次判断时间刷新为rtos当前时间,进入步骤b。
26、作为一种优选方案,统计和记录模块记录发送时间、监测任务优先级、当前所有任务cpu占用率、异常累计次数、超时时间以及调度周期在内的信息,用于后续改进设计或定位问题。
27、作为一种优选方案,在故障处理模块中,执行包括提示、降级或重启在内的故障处理方式;其中,提示包括进行日志打印并记录,输出用户实时性异常信息,但不影响或中断正常业务运行;降级包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性异常事件,应用根据事件信息进行业务降级处理;重启包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性准备重启事件,重启系统
28、与现有技术相比,采用上述技术方案的有益效果为:
29、1、本专利技术的监测任务所需资源开销较小,对应用性能影响可忽略不计,可在不修改应用的情况下独立实施和部署,快速为应用软件增加实时性监测和异常处理支持,提升系统可靠性。
30、2、本专利技术在检测到实时性异常后,可根据记录信息等事后分析手段,快速定位和隔离问题,提高开发和维护效率。
本文档来自技高网...【技术保护点】
1.一种基于RTOS的软件运行实时性监测方法,其特征在于,包括:
2.根据权利要求1所述的基于RTOS的软件运行实时性监测方法,其特征在于,所述监测参数还包括实时性监测任务调度周期、实时性监测任务超时时间门限以及实时性监测任务超时异常次数。
3.根据权利要求2所述的基于RTOS的软件运行实时性监测方法,其特征在于,所述对软件进行实时性异常判断,具体包括:
4.根据权利要求1所述的基于RTOS的软件运行实时性监测方法,其特征在于,所述统计和记录实时性异常信息包括发送时间、监测任务优先级、当前所有任务CPU占用率、异常累计次数、超时时间以及调度周期,用于后续改进设计或定位问题。
5.根据权利要求1所述的基于RTOS的软件运行实时性监测方法,其特征在于,所述实时性监测任务异常处理方式包括提示、降级和重启。
6.根据权利要求5所述的基于RTOS的软件运行实时性监测方法,其特征在于,所述根据监测参数进行故障处理,具体包括:
7.一种基于RTOS的软件运行实时性监测系统,其特征在于,包括:
8.根据权利要求7
9.根据权利要求7所述的基于RTOS的软件运行实时性监测系统,其特征在于,所述统计和记录模块记录发送时间、监测任务优先级、当前所有任务CPU占用率、异常累计次数、超时时间以及调度周期在内的信息,用于后续改进设计或定位问题。
10.根据权利要求7所述的基于RTOS的软件运行实时性监测系统,其特征在于,所述故障处理模块中,执行包括提示、降级或重启在内的故障处理方式;其中,提示包括进行日志打印并记录,输出用户实时性异常信息,但不影响或中断正常业务运行;降级包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性异常事件,应用根据事件信息进行业务降级处理;重启包括进行日志打印并记录,输出用户实时性异常信息,向应用发出实时性准备重启事件,重启系统。
...【技术特征摘要】
1.一种基于rtos的软件运行实时性监测方法,其特征在于,包括:
2.根据权利要求1所述的基于rtos的软件运行实时性监测方法,其特征在于,所述监测参数还包括实时性监测任务调度周期、实时性监测任务超时时间门限以及实时性监测任务超时异常次数。
3.根据权利要求2所述的基于rtos的软件运行实时性监测方法,其特征在于,所述对软件进行实时性异常判断,具体包括:
4.根据权利要求1所述的基于rtos的软件运行实时性监测方法,其特征在于,所述统计和记录实时性异常信息包括发送时间、监测任务优先级、当前所有任务cpu占用率、异常累计次数、超时时间以及调度周期,用于后续改进设计或定位问题。
5.根据权利要求1所述的基于rtos的软件运行实时性监测方法,其特征在于,所述实时性监测任务异常处理方式包括提示、降级和重启。
6.根据权利要求5所述的基于rtos的软件运行实时性监测方法,其特征在于,所述根据监测参数进行故障处理,具体包括:
...
【专利技术属性】
技术研发人员:熊国刚,蔡晶,叶永强,熊波,吴媺民,王奔,张亚平,周斌斌,祁培文,成程,
申请(专利权)人:中国电子科技集团公司第二十九研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。