[发明专利]基于OSEK嵌入式实时操作系统的非周期定时器驻留机制有效
申请号: | 201910661028.2 | 申请日: | 2019-07-22 |
公开(公告)号: | CN110457120B | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 吕攀;章昌仲;杨国青;李红;吴朝晖 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 杭州天勤知识产权代理有限公司 33224 | 代理人: | 王琛 |
地址: | 310013 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 osek 嵌入式 实时 操作系统 周期 定时器 驻留 机制 | ||
本发明公开了一种基于OSEK嵌入式实时操作系统的非周期定时器驻留机制,该机制将硬件时钟与系统计数器相关联,并将多个周期或非周期定时器关联到计数器,组成定时器链表,在每个定时器上可选地绑定任务或回调函数。本发明中定时器到期时会首先调用回调函数,通过回调函数高效地执行时间关键程序而不需要上下文切换;回调函数中若重新启用已触发的非周期定时器,可以驻留该非周期定时器,而在使用后立即删除。本发明主要优点在于采用的非周期定时器驻留机制结合了回调函数和非周期定时器,在使用回调函数机制执行高效操作的同时仍能使用非周期定时器实现周期不固定的系统服务,既提高了程序运行效率,又简化了编程工作。
技术领域
本发明属于计算机技术领域,具体涉及一种基于OSEK嵌入式实时操作系统的非周期定时器驻留机制。
背景技术
在微控制器中,通常使用实时操作系统来提供多任务和资源共享的功能,实时操作系统(RTOS)是指为实时任务提供服务的操作系统,这些实时任务在有限的时间内处理到来的数据。由于实时系统对时间的限制非常严格,定时器作为实时系统时间管理的核心就显得十分重要。因此,设计一个安全、高效、且符合系统设计要求的定时器机制是非常重要的。
现有的uCOS、μClinux、SMC-RTOS和eCOS等实时操作系统中,定时器机制所调度的最小实体是任务,但不同任务之间的调度会发生上下文切换,上下文切换的过程中则需要保存并恢复大量的寄存器,这个过程会消耗一定的时间。但在实时操作系统中,一些定时器相关的系统级服务往往需要多个高频率定时器协同工作,例如OSEK直接网络管理服务就需要使用至少五个频繁触发的定时器,并且定时器触发后需要执行的时间又十分短暂。在这类服务中,如果以任务作为定时器的最小调度实体,那么频繁的任务调度所引发的上下文切换会消耗很多时间。
OSEK/VDX规范所制定的实时操作系统标准在定时器中引入了回调函数,回调函数是比任务更轻的调度实体,它直接在实时操作系统内核的上下文中执行,不需要进行上下文切换工作,相对任务而言执行效率更高,更适合前述的定时器相关系统级服务。此外,OSEK/VDX规范还区分了周期定时器和非周期定时器,提供了更加灵活的定时器机制,例如OSEK直接网络管理中,操作系统需要根据硬件运行状态来修改各个定时器的触发时间,这种情况下,固定周期的周期定时器无法满足需求,使用非周期定时器显然能够简化编程工作。
但是,OSEK/VDX规范所制定的实时操作系统标准没有考虑回调函数机制与非周期定时器相结合的情况,现有的FreeOSEK、SmartOSEK等根据OSEK/VDX规范实现的嵌入式实时操作系统都不能在回调函数中设置非周期性定时器,无法将回调函数机制的高效性和非周期定时器的灵活性相结合,影响了定时器相关系统级服务如OSEK直接网络管理服务的运行效率。
发明内容
鉴于上述,本发明提供了一种基于OSEK嵌入式实时操作系统的非周期定时器驻留机制,能够解决现有技术中回调函数无法设置非周期定时器,影响定时器相关系统级服务运行效率的技术问题。
一种基于OSEK嵌入式实时操作系统的非周期定时器驻留机制,包括如下:
(1)将操作系统最底层的计数器与硬件的时钟相关联,并将一个或多个定时器绑定到操作系统的计数器上;
(2)将操作系统预定义的一个或多个任务与定时器进行一对一或多对一绑定,并为每一定时器定义一个回调函数;
(3)每个计数器计数周期到达时,系统查询计数器对应的定时器链表是否为空:如果为空,则等待下一个计数周期;如果不为空,将计数器的RemainTicks减1后判断RemainTicks是否为0:若RemainTicks不为0,说明此时没有待触发的定时器,系统执行空闲任务,等待下一个计数周期到来;若RemainTicks为0,则此时至少有一个待触发的定时器,且系统进行以下操作:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910661028.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:异步处理回调方法及装置
- 下一篇:一种支持用户态任务动态调度的探针方法和装置