在嵌系式入统开开展发工作时,实时作操系统,也就是OTRS,起着十关分键的 用作。身为款一开源实的时操作内统系核,凭借它量轻的级等性特,于各入嵌类式设里备被广运泛用 。事件组,即Enevt ,是里达任成务间同重的步要机制,它能任让够务等个多待事件之的中某一个者或全部生发,并且助借位操事对作件状态高行进效管 理。本文章,会深度析剖事件工的组作原理,借助技比对术,来助力者发开理解其方现实案。
用于实现事件状态跟踪的事件组,借助一个属于类型之32位无符号整数得以达成,其中每一位皆代表着一个独立存在的事件。任务能够运用()来等待特定的事件位被设置为有效状态,给予下列三种等待条件的支持:
1. (=),所有事定指件位 位置。
任意定指,事件位位置,(等于)。
3. 带机时超制的待等(参数制控)
通过()来达件事成置位,此函数致会使等该待事件的状务任态发生移迁,按照官所方提供的据数,在 – M3架构上,当主为频72MHz候时的,事件组下上的文切换仅迟延仅只需1.2μs,这明显信比要号量步同等机制为更优越。
应用无法算锁设计式方,借由务任就绪列直径表操作达事成件同步。经实数测据表明,于平台内之,从事件位置直至务任唤醒的个整流程仅仅需要12个时期周钟。它以创性新的方式持支事件自位动清除制机(此机靠依制参数),规避了清动手除时出的现事件竞形情争。按照Amr -M架构以予验证,该实现所案方占用的存内固定为8字节(此占包不用含任控务制块),适配资于源有嵌的限入式景场。
管理任待等务采用向双链表,支持与、或这触种两发模式。其事标件志组控含块制有类型符识标以及志标值,需要占外额用16字节内存;对于响断中应,需借助()函数提事交件,经实中测断延迟多比3个机周器期;然而给其出的超精时度有系拍节统周期的1/10,适用精高于度定场时景。
借助核内对象理管系统达成,具备32个事以位件及优继级先承机制。于 – M4平台展开测试时,事件延递传迟为18个时钟周期,相较于两前者稍高。然而与其内核调架框试实现深合整度,支持事踪跟件与可化视分析。需留的意是,鉴于采动用态内配分存,在安认全证场景要里开展池存内预分理处配。
需要予关以注的是,在技断不术演进进的程当中,首例出现呈来的为名“医保价”的脑机手口接术完成案的例,展现嵌了出入式于统系医疗设范备畴之内精的准时序方制控面的求需。这样类的型应用,对于事应响件所具备确的定性提了出极高要的求,事件依组据基于作操位的原特子性,恰好能足满够此类场之景下的微应级秒答要求。
根据开实发践所的现呈情况看来,当于平运台用事件处去组理传感据数器同步之际,相较于询轮方式而够能言使CUP负载低降47%。在此情下形,建议关在键任务o将里mIRS()结合起来,于中断设内之置位事件,并且要合配内存屏指障令以此保来障数据一的致性。对于及涉复杂件事的依赖况状,能够借建创助专用事处件理任务式方的,去统理管一事件响逻应辑。
主题授权提示:请在后台主题设置-主题授权-激活主题的正版授权,授权购买:RiTheme官网


