一种嵌入式操作系统定时保护的实现方法技术方案

技术编号:7085099 阅读:523 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种嵌入式操作系统定时保护的实现方法,通过对任务或中断控制块中剩余执行时间、执行时间预算时间以及系统时钟模块定时保护通道计数器、比较寄存器中的值进行计算、比较,并进行相应的操作,使其不超过系统为该任务或中断所配置的执行时间预算,同时,将就绪或到达时间减去任务控制块或中断控制块中上次激活时刻,并与配置信息表中到达预算时间间隔进行比较,如果小于任务或中断到达预算时间间隔,则阻止该任务或中断就绪。这样实现了嵌入式操作系统定时保护,避免执行时间超时和到达频率过高影响其他任务或中断正确执行情况的发生。

【技术实现步骤摘要】

本专利技术属于计算机
,更为具体地讲,涉及。
技术介绍
在汽车电子应用领域,某些汽车电子的控制器系统需要使用到嵌入式实时操作系统软件,提供多任务的应用软件运行环境。AUTOSAR OS (Automotive Open Systems Architecture Operating System)定义了一套支持分布式的、功能驱动的汽车电子软件开发方法和电子控制单元上的软件架构标准化方案,以便应用于不同的汽车平台,提高软件复用,降低开发成本。AUTOSAR OS为实时应用提供了所有基本服务,即中断处理、调度、系统时间和时钟同步、本地消息处理,以及错误检测机制等。AUTOSAR OS是AUTOSAR体系架构中对嵌入式实时操作系统提出的规范,基于OSEK OS并对其在安全保护以及时间触发的网络同步等功能进行了扩展,更好的满足汽车电子应用领域的需求。^fc AUTOSAR OS 夫 1 ^ (AUTOSAR Specification of Operating System Version4. 0, November 30th, 2009)中,提出了定时保护的概念,对任务或中断等实体的运行时间等进行检测。其具体含义是1)、在实时操作系统中,对任务或者中断在的结束时间有严格约束,即任务或中断执行必须在某个时间点之前完成,称之为任务或中断的截止时间。2)、如果任务或者中断错过其截止时间,对整个应用系统也许会造成致命的损伤。 而对于支持多任务的操作系统来说,一个任务能否按时执行很可能受到其他任务的影响。 比如一个系统中有三个周期性任务,表1中给出该三个任务的执行参数,其截止时间等于任务的周期,任务必须在截止时间前完成。任务ID优先级执行时间截止时间(=任务周期)A15B中38C低515表 1图1是现有技术的任务执行过程示意图。如图1所示,任务A、B、C同时在时刻0就绪,任务A优先级最高,先执行,当其在时刻ι执行完毕接着任务B执行,由于某些原因任务B执行超时,当它在时刻5执行完后,任务A又再次就绪,任务A也因为某些原因执行超时,当其在时刻7执行完毕,任务C得以运行,而任务C运行一个周期,在时刻8任务B又就绪将任务C抢占,这样任务A、B、C按照优先级抢占运行,最终导致任务C在其截至时间,即时刻15前并没有执行完。而任务C本身并没有超时现象,是由于任务A、B的超时导致了任务C截至时间未言旨完成。3)、所以根据以上示例分析,定时保护应该在系统级,对各个任务和中断的执行都进行监测,才能保证系统中的各任务/中断保持独立,不相互影响,超时不扩散。而一个任务或中断是否能够满足它的截止时间是由上面提到的“某些原因”所决定的,“某些原因”具体包括(1)系统中任务/中断的执行时间,执行时间过长影响其他任务或者中断的执行;(2)系统中任务/中断的到达间隔时间,任务或中断切换的频率过高,间隔时间过短,影响任务或中断的正确执行。4)、当任务或者中断有违规或超时现象发生时,操作系统可以采取终止任务或者中断,以避免超时扩散到其他任务,也方便定位出现问题的任务或者中断,满足AUTOSAR OS 规范有关定时保护的要求。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供,使任务/中断的执行时间以及到达时间间隔不超过预算值,避免影响其他任务或中断的正确执行。为实现上述目的,本专利技术嵌入式操作系统定时保护的实现方法,其特征在于,包括以下步骤(1)、在任务控制块中,增加任务剩余执行时间元素以及任务上次激活时刻元素; 在任务控制块中任务配置信息表指针指向的任务配置信息表中,增加任务执行预算时间以及任务到达预算时间间隔,任务剩余执行时间的初始值等于任务执行预算时间;在中断控制块中,增加中断剩余执行时间元素以及中断上次激活时刻元素;在中断控制块中中断配置信息表指针指向的中断配置信息表中,增加中断执行预算时间以及中断到达预算时间间隔,中断剩余执行时间的初始值等于中断执行预算时间;O)、执行的定时保护选择系统时钟模块的一个通道作为执行的定时保护通道2. 1)对于任务,在任务即将进入运行态之前,将该任务的任务控制块中记录任务剩余执行时间与定时保护通道中计数器的计数值相加,并存入定时保护通道的比较寄存器中,开始执行的定时保护监测任务在执行过程中,计数器以递增的方式计数,当计数器的计数值与比较寄存器中暂存的数值相同时,该任务的执行预算时间到达,定时保护通道产生中断,在该产生中断的服务程序中进行用户所需要的保护处理操作;如果任务在其执行预算时间到之前正常执行完毕,说明该任务并没有超过其执行预算时间,则恢复该任务控制块中的任务剩余执行时间为其任务配置信息表中静态配置的任务执行预算时间;如果任务在其执行过程中被抢占,由运行态切换到就绪态时,则将定时保护通道比较寄存器中的数值减去计数器的计数值,得到任务剩余执行时间,并存入该任务的任务控制块中的任务剩余执行时间元素中;2.2)对于中断,当中断触发并且处理器响应中断后,首先进入操作系统的中断服务程序,在跳转到具体对应的中断服务程序之前,将该中断的中断控制块中记录中断剩余执行时间与定时保护通道中计数器的计数值相加,并存入定时保护通道的比较寄存器中, 开始执行的定时保护监测中断在执行过程中,计数器以递增的方式计数,当计数器的计数值与比较寄存器中暂存的数值相同时,该中断的执行预算时间到达,定时保护通道产生中断,该产生中断的优先级高于当前正在执行的中断并且抢占后者,在该产生中断的服务程序中进行用户所需要的保护处理操作;如果中断在其执行预算时间到之前正常执行完毕,说明该中断并没有超过其执行预算时间,则恢复该中断控制块中的中断剩余执行时间为其中断配置信息表中静态配置的中断执行预算时间;如果中断在其执行过程中被抢占,由运行态切换到就绪态时,则将定时保护通道比较寄存器中的数值减去计数器的计数值,得到中断剩余执行时间,并存入该中断的中断控制块中的中断剩余执行时间元素中;(3)、任务和中断的到达时间间隔的定时保护在任务或中断就绪或到达时,对本次就绪或到达时间减去任务控制块或中断控制块中上次激活时刻,得到本次到达时间间隔,并与任务配置信息表或中断配置信息表中的任务或中断到达预算时间间隔进行比较,如果小于任务或中断到达预算时间间隔,则阻止该任务或中断就绪。本专利技术的专利技术目的是这样实现的在本专利技术中,定时保护需要监测的内容及其约束条件有每个任务的执行时间不能超过系统为该任务所配置的执行时间预算,即任务配置信息表中静态配置的任务执行预算时间,每个任务的就绪或到达间隔时间不能小于系统为该任务所配置的任务到达间隔预算,即任务配置信息表中静态配置的任务到达预算时间间隔;每个中断的执行时间不能超过系统为该中断所配置的执行时间预算,即中断配置信息表中静态配置的中断执行预算时间,每个中断的就绪或到达间隔时间不能小于系统为该中断所配置的中断到达间隔预算, 即中断配置信息表中静态配置的中断到达预算时间间隔。本专利技术通过对任务或中断控制块中剩余执行时间、执行时间预算时间以及系统时钟模块定时保护通道计数器、比较寄存器中的值进行计算、比较,并进行相应的操作,使其不超过系统为该任务或中断所配置的执行时间预算,同时,将就绪或到达时间减去任务控制块或中断控制块中上次激活时刻,并本文档来自技高网
...

【技术保护点】
1.一种嵌入式操作系统定时保护的实现方法,其特征在于,包括以下步骤:(1)、在任务控制块中,增加任务剩余执行时间元素以及任务上次激活时刻元素;在任务控制块中任务配置信息表指针指向的任务配置信息表中,增加任务执行预算时间以及任务到达预算时间间隔,任务剩余执行时间的初始值等于任务执行预算时间;在中断控制块中,增加中断剩余执行时间元素以及中断上次激活时刻元素;在中断控制块中中断配置信息表指针指向的中断配置信息表中,增加中断执行预算时间以及中断到达预算时间间隔,中断剩余执行时间的初始值等于中断执行预算时间;(2)、执行的定时保护选择系统时钟模块的一个通道作为执行的定时保护通道:2.1)对于任务,在任务即将进入运行态之前,将该任务的任务控制块中记录任务剩余执行时间与定时保护通道中计数器的计数值相加,并存入定时保护通道的比较寄存器中,开始执行的定时保护监测:任务在执行过程中,计数器以递增的方式计数,当计数器的计数值与比较寄存器中暂存的数值相同时,该任务的执行预算时间到达,定时保护通道产生中断,在该产生中断的服务程序中进行用户所需要的保护处理操作;如果任务在其执行预算时间到之前正常执行完毕,说明该任务并没有超过其执行预算时间,则恢复该任务控制块中的任务剩余执行时间为其任务配置信息表中静态配置的任务执行预算时间;如果任务在其执行过程中被抢占,由运行态切换到就绪态时,则将定时保护通道比较寄存器中的数值减去计数器的计数值,得到任务剩余执行时间,并存入该任务的任务控制块中的任务剩余执行时间元素中;2.2)对于中断,当中断触发并且处理器响应中断后,首先进入操作系统的中断服务程序,在跳转到具体对应的中断服务程序之前,将该中断的中断控制块中记录中断剩余执行时间与定时保护通道中计数器的计数值相加,并存入定时保护通道的比较寄存器中,开始执行的定时保护监测:中断在执行过程中,计数器以递增的方式计数,当计数器的计数值与比较寄存器中暂存的数值相同时,该中断的执行预算时间到达,定时保护通道产生中断,该产生中断的优先级高于当前正在执行的中断并且抢占后者,在该产生中断的服务程序中进行用户所需要的保护处理操作;如果中断在其执行预算时间到之前正常执行完毕,说明该中断并没有超过其执行预算时间,则恢复该中断控制块中的中断剩余执行时间为其中断配置信息表中静态配置的中断执行预算时间;如果中断在其执行过程中被抢占,由运行态切换到就绪态时,则将定时保护通道比较寄存器中的数值减去计数器的计数值,得到中断剩余执行时间,并存入该中断的中断控制块中的中断剩余执行时间元素中;(3)、任务和中断的到达时间间隔的定时保护在任务或中断就绪或到达时,对本次就绪或到达时间减去任务控制块或中断控制块中上次激活时刻,得到本次到达时间间隔,并与任务配置信息表或中断配置信息表中的任务或中断到达预算时间间隔进行比较,如果小于任务或中断到达预算时间间隔,则阻止该任务或中断就绪。...

【技术特征摘要】

【专利技术属性】
技术研发人员:李允高嵊昊陈丽蓉
申请(专利权)人:电子科技大学
类型:发明
国别省市:90

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1