阅读器及其ro规则调度方法

文档序号:6585587阅读:157来源:国知局
专利名称:阅读器及其ro规则调度方法
技术领域
本发明涉及通信领域,具体而言,涉及一种阅读器及其RO规则调度方法。
背景技术
LLRP (Low Level Reader Protocol)协议是由 EPC global (Electronic Product Code global,EPCglobal是一个中立的、非赢利性标准化组织,由EAN和UCC两大标准化组 织联合成立)在2007年4月发布的底层阅读器协议,该协议提供了对空口操作和空口协议 命令参数的控制能力,提供了底层阅读器操作的访问能力。在LLRP协议中,一个R0(阅读器操作)规则(ROSpec)主要用于控制阅读器的清 点和射频监测的操作,它有删除态、休眠态、激活态和执行态四个状态。图1是根据相关技 术的LLRP协议对阅读器规则(ROSpec)的状态转换图,一个新的RO规则被创建以后,它首 先应该进入休眠态(Disabled),当收到激活指令(ENABLE_R0SPEC)之后它会转换到激活态 (InActive),此时,规则等待它的触发条件的到来,触发条件可以是一个GPI (通用输入)信 号,可以是定时器,还可以是一条指令,当它的触发条件到来时,规则将进入执行状态,开始 完成清点、射频检测等系列操作,当规则执行完毕之后跳转回到激活态,等待下一次触发条 件的到来。其中,每个规则有自己的优先级属性,高优先级的规则可以抢占低优先级的规则 率先执行。相关技术中至少存在以下问题在如图1所示的状态转换集中,无法回避这样的 冲突,当一个处在激活态的RO规则的触发条件到来时,如果上一个更高优先级的RO规则 还在占有阅读器资源,则抢占不会发生,现有的LLRP协议未对此种情况的处理方法进行描 述。

发明内容
本发明的目的在于提供一种阅读器及其RO规则调度方法,以解决上述如果上一 个更高优先级的RO规则还在占有阅读器的资源,则抢占不会发生的问题。为了实现上述目的,根据本发明的一个方面,提供了一种阅读器的RO规则调度方法。根据本发明的阅读器的RO规则调度方法包括阅读器创建RO规则;阅读器调度 RO规则进行状态转换,状态包括休眠态、删除态、激活态、就绪态和执行态;其中,当RO规则 处于激活态时,阅读器判断RO规则的触发条件到来、RO规则不具有抢占条件且阅读器的资 源忙,则阅读器调度RO规则进入就绪态;当RO规则处于就绪态时,阅读器判断其资源空闲, 则阅读器调度RO规则进入执行态,并执行RO规则。优选地,阅读器调度RO规则进行状态转换还包括当阅读器创建RO规则时,阅读 器调度RO规则进入休眠态;当RO规则处于休眠态时,阅读器根据接收到的RO规则的激活 指令调度RO规则进入激活态;当RO规则处于激活态时,阅读器根据接收到的RO规则的反 激活指令调度RO规则进入休眠态;当RO规则处于休眠态、激活态、就绪态或者执行态时,阅读器在删除RO规则之后,调度RO规则进入删除态;当RO规则处于就绪态时,阅读器判断RO 规则的结束条件到来,则阅读器调度RO规则进入激活态;当RO规则处于激活态时,阅读器 判断RO规则的触发条件到来且阅读器的资源空闲或者判断RO规则的触发条件到来且RO 规则具有抢占条件,则阅读器调度RO规则进入执行态;当RO规则处于执行态时,阅读器判 断RO规则执行完毕或者判断阅读器的资源被抢占或者判断RO规则的结束条件到来,则阅 读器调度RO规则进入激活态。优选地,阅读器判断RO规则是否具有抢占条件的方式包括当具有相同优先级或 更高优先级的另一个RO规则正在占用阅读器的资源时,阅读器判断RO规则不具有抢占条 件;当具有较低优先级的另一个RO规则正在占用阅读器的资源时,阅读器判断RO规则具有 抢占条件。优选地,阅读器调度RO规则进行状态转换还包括当RO规则处于就绪态或者执 行态时,阅读器判断RO规则的触发条件再次到来,则阅读器对再次到来的触发条件进行积 累;阅读器判断RO规则本次执行完毕,则阅读器直接再次执行RO规则,执行的次数为积累
的数量。优选地,在阅读器对再次到来的触发条件进行积累之前还包括阅读器判断积累 的数量是否达到预先配置的阈值;若达到阈值,则阅读器丢弃再次到来的触发条件。优选地,阅读器调度RO规则进行状态转换还包括当RO规则处于就绪态或者执行 态时,阅读器判断RO规则的结束条件再次到来,则阅读器将积累的数量减1。优选地,RO规则的属性、优先级以及当前所处的状态保存在阅读器的非易失性介 质中,阅读器调度RO规则进行状态转换还包括阅读器重新启动;若RO规则在阅读器重新 启动前所处的状态为就绪态或者执行态,则阅读器在重新启动后调度RO规则直接进入激 活态;若RO规则在阅读器重新启动前所处的状态为休眠态、激活态或者删除态,则阅读器 在重新启动后调度RO规则直接进入保存的在阅读器重新启动前所处的状态。优选地,阅读器中创建有多个RO规则,且阅读器中具有与休眠态对应的休眠态队 列、与激活态对应的激活态队列以及与就绪态对应的就绪态队列,阅读器调度RO规则进行 状态转换还包括当阅读器创建一个RO规则时,阅读器将RO规则放入休眠态队列;当RO规 则位于休眠态队列时,阅读器根据接收到的RO规则的激活指令将RO规则从休眠态队列中 取出并放入激活态队列;当RO规则位于激活态队列时,阅读器根据接收到的RO规则的反激 活指令将RO规则从激活态队列取出并放入休眠态队列;当RO规则位于激活态队列时,阅读 器判断RO规则的触发条件到来、RO规则具有抢占条件且阅读器的资源忙,则阅读器将RO规 则从激活态队列取出并放入就绪态队列;当RO规则处于就绪态队列时,阅读器判断RO规则 的结束条件到来,则阅读器将RO规则从就绪态队列取出并放入激活态队列;当RO规则处于 激活态队列时,阅读器判断RO规则的触发条件到来且阅读器的资源空闲或者判断RO规则 的触发条件到来且RO规则具有抢占条件,则阅读器将RO规则从激活态队列取出并执行RO 规则;当阅读器判断其资源空闲时,阅读器将就绪态队列中具有最高优先级的RO规则取出 并执行RO规则;当阅读器判断RO规则执行完毕或者判断阅读器的资源被抢占或者判断RO 规则的结束条件到来,则阅读器将RO规则放入激活态队列。为了实现上述目的,根据本发明的另一方面,提供了一种阅读器。根据本发明的阅读器,包括
创建模块,用于创建RO规则;调度模块,用于调度RO规则进行状态转换,状态包括休眠态、删除态、激活态、就 绪态和执行态;其中,调度模块还用于当RO规则处于激活态时,若判断RO规则的触发条件到来、RO规 则不具有抢占条件且阅读器的资源忙,则调度RO规则进入就绪态;还用于当RO规则处于就 绪态时,若判断阅读器的资源空闲,则调度RO规则进入执行态,并执行RO规则。优选地,阅读器还包括删除模块,用于删除RO规则;调度模块还用于当创建模块创建RO规则时,调度RO规则进入休眠态;还用于当 RO规则处于休眠态时,根据接收到的RO规则的激活指令调度RO规则进入激活态;还用于 当RO规则处于激活态时,根据接收到的RO规则的反激活指令调度RO规则进入休眠态;还 用于当RO规则处于休眠态、激活态、就绪态或者执行态时,在删除模块删除RO规则之后,调 度RO规则进入删除态;还用于当RO规则处于就绪态时,若判断RO规则的结束条件到来,则 调度RO规则进入激活态;还用于当RO规则处于激活态时,若判断RO规则的触发条件到来 且阅读器的资源空闲或者判断RO规则的触发条件到来且RO规则具有抢占条件,则调度RO 规则进入执行态;还用于当RO规则处于执行态时,若判断RO规则执行完毕或者判断阅读器 的资源被抢占或者判断RO规则的结束条件到来,则调度RO规则进入激活态。由于增加了就绪态,当一个处在激活态的RO规则的触发条件到来时,如果上一个 更高优先级的RO规则还在占有阅读器的资源,则该RO规则可以先进入就绪态等待资源空 闲时再进入执行态,解决了相关技术中当一个处在激活态的RO规则的触发条件到来时,如 果上一个更高优先级的RO规则还在占有阅读器的资源,则抢占不会发生以及未对此种情 况的处理方法提出解决方案的问题,从而完善了规则冲突时阅读器的处理方法,并且实现 后触发的RO规则不丢失执行机会的效果。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据相关技术的LLRP协议的RO规则的状态转换集;图2是根据本发明实施例的阅读器的RO规则调度方法的流程图;图3是根据本发明优选实施例的RO规则地状态转换集;图4是根据本发明一个优选实施例的阅读器重启前后的RO状态对应图;图5是根据本发明一个优选实施例的阅读器的RO规则的具体实现规则调度的流 程图;图6是根据本发明实施例的阅读器的示意图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例中的特征可以相互组合。图2是根据本发明实施例的阅读器的RO规则调度方法的流程图,包括以下步骤
步骤S202,阅读器创建RO规则;步骤S204,阅读器调度RO规则进行状态转换(如图3所示),状态包括休眠态、删 除态、激活态、就绪态和执行态;其中,当RO规则处于激活态时,阅读器判断RO规则的触发条件到来、RO规则不具有抢 占条件且阅读器的资源忙,则阅读器调度RO规则进入就绪态;当RO规则处于就绪态时,阅读器判断其资源空闲,则阅读器调度RO规则进入执行 态,并执行RO规则。该实施例由于增加了就绪态,当一个处在激活态的RO规则的触发条件到来时,如 果上一个更高优先级的RO规则还在占有阅读器的资源,则该RO规则可以先进入就绪态等 待资源空闲时再进入执行态,解决了相关技术中当一个处在激活态的RO规则的触发条件 到来时,如果上一个更高优先级的RO规则还在占有阅读器的资源,则抢占不会发生以及未 对此种情况的处理方法提出解决方案的问题。本实施例基于现有的LLRP标准协议,通过在 RO规则调度中设置就绪态,完善了规则冲突时阅读器的处理方法,并且实现后触发的RO规 则不丢失执行机会的效果。优选地,如图3所示,步骤S204还包括当阅读器创建RO规则时,阅读器调度RO规则进入休眠态;当RO规则处于休眠态时,阅读器根据接收到的RO规则的激活指令调度RO规则进 入激活态;当RO规则处于激活态时,阅读器根据接收到的RO规则的反激活指令调度RO规则 进入休眠态;当RO规则处于休眠态、激活态、就绪态或者执行态时,阅读器在删除RO规则之后, 调度RO规则进入删除态;当RO规则处于就绪态时,阅读器判断RO规则的结束条件到来,则阅读器调度RO 规则进入激活态;当RO规则处于激活态时,阅读器判断RO规则的触发条件到来且阅读器的资源空 闲或者判断RO规则的触发条件到来且RO规则具有抢占条件,则阅读器调度RO规则进入执 行态;当RO规则处于执行态时,阅读器判断RO规则执行完毕或者判断阅读器的资源被 抢占或者判断RO规则的结束条件到来,则阅读器调度RO规则进入激活态。其中,阅读器判断RO规则是否具有抢占条件的方式包括当具有相同优先级或更高优先级的另一个RO规则正在占用阅读器的资源时,阅 读器判断RO规则不具有抢占条件;当具有较低优先级的另一个RO规则正在占用阅读器的资源时,阅读器判断RO规 则具有抢占条件。该优选实施例提供了在增加了就绪态后,RO规则的整体的状态转换的具体实施方 案。如图3所示,在RO规则的激活态和执行态之间引入了就绪态这个状态,当后触发的规则 无法直接占有阅读器的资源(即占有阅读器的处理器)进入执行态的时候,则其转换为就 绪态,等待资源空闲时再转为执行态运行,为了和现有的LLRP标准协议接口兼容,此状态 为隐含状态,即从状态查询来看其已经是执行态,但在规则的调度中,并没有真正的开始执行,但从状态响应来看,和执行态一模一样,当收到删除消息时,规则也转换到删除态(即 被删除),当规则的结束条件到来时,即便没有开始执行,但和执行态的规则一样,转为激活 态。这样的设计,增加了对规则冲突情况的处理,对外亦不改变协议的原始消息接口。优选地,步骤S204还包括当RO规则处于就绪态或者执行态时,阅读器判断RO规则的触发条件再次到来,则 阅读器对再次到来的触发条件进行积累;阅读器判断RO规则本次执行完毕,则阅读器直接再次执行RO规则,执行的次数为 积累的数量,这时如果有比它更高优先级的RO规则被触发执行,则这些重复执行的过程也 会被抢占。其中,在阅读器对再次到来的触发条件进行积累之前还可以包括阅读器判断积累的数量是否达到预先配置的阈值;若达到阈值,则阅读器丢弃再次到来的触发条件。上述优选实施例通过触发条件积累,使得RO规则可以做到完全响应每一个触发 条件。触发条件比如GPI信号或者开始消息到来时,如果RO规则正处于激活态,则它将触 发运行或进入就绪态,但如果是已经在就绪态或是执行态的RO规则又收到触发条件这种 情况,现有的LLRP协议也没有描述,很多情况下,系统是希望保留这次触发并推后执行而 不是忽略它,本优选实施例就此对阅读器进行了扩展配置,可以将触发条件进行积累,即规 则在就绪态或执行态时又收到了这个特定的触发条件,则本次执行完之后,此RO规则直接 重新再次执行,除非被更高优先级的RO规则抢占。触发条件可以积累,也可以有一个可配 置的上限(即上述的阈值),超过该上限则不再积累。优选地,步骤S204还包括当RO规则处于就绪态或者执行态时,阅读器判断RO规则的结束条件再次到来,则 阅读器将积累的数量减1。该优选实施例在上述的积累触发条件的基础上,提出了结束条件的积累。同样,结 束条件也可以积累,当某RO规则已经积累了 η个触发条件,则收到一个结束条件使其触发 条件积累数减1,当触发条件个数减为0时,则将该RO规则转入激活态。优选地,如图4所示,RO规则的属性、优先级以及当前所处的状态保存在阅读器的 非易失性介质中,步骤S204还包括阅读器重新启动;若RO规则在阅读器重新启动前所处的状态为就绪态或者执行态,则阅读器在重 新启动后调度RO规则直接进入激活态;这时RO规则在等待触发条件的到来,比如触发条件 是周期定时器,触发条件到来后RO规则自动就可以重新工作了。若RO规则在阅读器重新启动前所处的状态为休眠态,则阅读器在重新启动后调 度RO规则直接进入休眠态;若RO规则在阅读器重新启动前所处的状态为激活态,则阅读器在重新启动后调 度RO规则直接进入激活态;若RO规则在阅读器重新启动前所处的状态为删除态,则阅读器在重新启动后调 度RO规则直接进入删除态。该优选实施例能够实现RO规则的持久化,实现阅读器在计划复位或意外复位后CN 102096604 A
说明书
6/7页
工作状态的智能恢复。在阅读器运行的过程中,可能出现掉电等意外重启的情况,为了使得 应用不必在阅读器重新启动以后每次重新配置规则,本优选实施例提出了一种规则持久化 的方案,即RO规则的属性定义和执行状态(即当前所处的状态)可以保存在非易失性介质 中,在阅读器重新启动后,启动前就绪态和执行态的规则会变为激活态,等待触发条件的到 来,其他状态的规则还保持其他状态。图5是根据本发明一个优选实施例的阅读器的RO规则的具体实现规则调度的流 程图。如图5所示,阅读器中创建有多个RO规则,且阅读器中具有与休眠态对应的休眠 态队列、与激活态对应的激活态队列以及与就绪态对应的就绪态队列,步骤S204还包括当阅读器创建一个RO规则时,阅读器将RO规则放入休眠态队列;当RO规则位于休眠态队列时,阅读器根据接收到的RO规则的激活指令将RO规则 从休眠态队列中取出并放入激活态队列;当RO规则位于激活态队列时,阅读器根据接收到的RO规则的反激活指令将RO规 则从激活态队列取出并放入休眠态队列;当RO规则位于激活态队列时,阅读器判断RO规则的触发条件到来、RO规则具有 抢占条件且阅读器的资源忙,则阅读器将RO规则从激活态队列取出并放入就绪态队列;当RO规则处于就绪态队列时,阅读器判断RO规则的结束条件到来,则阅读器将RO 规则从就绪态队列取出并放入激活态队列;当RO规则处于激活态队列时,阅读器判断RO规则的触发条件到来且阅读器的资 源空闲或者判断RO规则的触发条件到来且RO规则具有抢占条件,则阅读器将RO规则从激 活态队列取出并执行RO规则;当阅读器判断其资源空闲时,阅读器将就绪态队列中具有最高优先级的RO规则 取出并执行RO规则;当阅读器判断RO规则执行完毕或者判断阅读器的资源被抢占或者判断RO规则的 结束条件到来,则阅读器将RO规则放入激活态队列。该优选实施例使用队列的数据结构形式来存储LLRP协议中的RO规则实现一整套 规则调度的方案,解决了相关技术中没有给出具体的RO规则调度调度方法和细节操作方 法的问题,阅读器上在同一时间可能存在着处于不同状态的多个RO规则,本优选实施例使 用队列来管理这些规则,如图5所示。阅读器的规则调度系统中有三个队列休眠态队列, 激活态队列和就绪态队列,当阅读器新增一个RO规则时,先将其加入休眠态队列,当收到 激活指令时,将其从休眠态队列中取出并放入激活态队列中,当激活态队列中一个RO规则 的触发条件到来时,如果有更高优先级的RO规则占据阅读器的资源,则此RO规则进入就绪 态队列,就绪态队列中的RO规则按照各自优先级的顺序由高到低排列,当处在执行态的RO 规则完成工作,放弃阅读器的资源之后,就绪态队列中的第一个RO规则予以执行。如果在 等待的过程中,某个RO规则的结束条件到来或积累触发条件累计数变为0,则把它从就绪 态队列中摘除,重新放回到激活态队列之中。图6是根据本发明实施例的阅读器的示意图,该阅读器包括创建模块10,用于创建RO规则;
调度模块20,用于调度RO规则进行状态转换,状态包括休眠态、删除态、激活态、 就绪态和执行态;其中,调度模块20还用于当RO规则处于激活态时,若判断RO规则的触发条件到来、RO 规则不具有抢占条件且阅读器的资源忙,则调度RO规则进入就绪态;还用于当RO规则处于 就绪态时,若判断阅读器的资源空闲,则调度RO规则进入执行态,并执行RO规则。优选地,阅读器还包括删除模块30,用于删除RO规则;调度模块20还用于当创建模块10创建RO规则时,调度RO规则进入休眠态;还 用于当RO规则处于休眠态时,根据接收到的RO规则的激活指令调度RO规则进入激活态; 还用于当RO规则处于激活态时,根据接收到的RO规则的反激活指令调度RO规则进入休眠 态;还用于当RO规则处于休眠态、激活态、就绪态或者执行态时,在删除模块30删除RO规 则之后,调度RO规则进入删除态;还用于当RO规则处于就绪态时,若判断RO规则的结束条 件到来,则调度RO规则进入激活态;还用于当RO规则处于激活态时,若判断RO规则的触发 条件到来且阅读器的资源空闲或者判断RO规则的触发条件到来且RO规则具有抢占条件, 则调度RO规则进入执行态;还用于当RO规则处于执行态时,若判断RO规则执行完毕或者 判断阅读器的资源被抢占或者判断RO规则的结束条件到来,则调度RO规则进入激活态。上述实施例的阅读器采用上述如图2至图5所示的RO规则调度方法对创建的RO 规则进行调度。从以上的描述中,可以看出,本发明实现了如下技术效果(1)通过在RO规则调度中设置就绪态,完善了规则冲突时阅读器的处理方法,并 且实现后触发的RO规则不丢失执行机会的效果;(2)通过触发条件积累,使得RO规则可以做到完全响应每一个触发条件;(3)能够实现RO规则的持久化,实现阅读器在计划复位或意外复位后工作状态的 智能恢复;(4)使得LLRP协议能够承载更丰富的功能,能够更灵活地被使用。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,在某些情况下,可以以 不同于此处的顺序执行所示出或描述的步骤,从而,可以将它们存储在存储装置中由计算 装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤 制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种阅读器的阅读器操作RO规则调度方法,其特征在于,包括 阅读器创建RO规则;所述阅读器调度所述RO规则进行状态转换,所述状态包括休眠态、删除态、激活态、就 绪态和执行态;其中,当所述RO规则处于所述激活态时,所述阅读器判断所述RO规则的触发条件到来、所述 RO规则不具有抢占条件且所述阅读器的资源忙,则所述阅读器调度所述RO规则进入所述 就绪态;当所述RO规则处于所述就绪态时,所述阅读器判断其资源空闲,则所述阅读器调度所 述RO规则进入所述执行态,并执行所述RO规则。
2.根据权利要求1所述的方法,其特征在于,所述阅读器调度所述RO规则进行状态转 换还包括当阅读器创建所述RO规则时,所述阅读器调度所述RO规则进入所述休眠态; 当所述RO规则处于所述休眠态时,所述阅读器根据接收到的所述RO规则的激活指令 调度所述RO规则进入所述激活态;当所述RO规则处于所述激活态时,所述阅读器根据接收到的所述RO规则的反激活指 令调度所述RO规则进入所述休眠态;当所述RO规则处于所述休眠态、所述激活态、所述就绪态或者所述执行态时,所述阅 读器在删除所述RO规则之后,调度所述RO规则进入所述删除态;当所述RO规则处于所述就绪态时,所述阅读器判断所述RO规则的结束条件到来,则所 述阅读器调度所述RO规则进入所述激活态;当所述RO规则处于所述激活态时,所述阅读器判断所述RO规则的触发条件到来且所 述阅读器的资源空闲或者判断所述RO规则的触发条件到来且所述RO规则具有抢占条件, 则所述阅读器调度所述RO规则进入所述执行态;当所述RO规则处于所述执行态时,所述阅读器判断所述RO规则执行完毕或者判断所 述阅读器的资源被抢占或者判断所述RO规则的结束条件到来,则所述阅读器调度所述RO 规则进入所述激活态。
3.根据权利要求2所述的方法,其特征在于,所述阅读器判断所述RO规则是否具有抢 占条件的方式包括当具有相同优先级或更高优先级的另一个RO规则正在占用所述阅读器的资源时,所 述阅读器判断所述RO规则不具有抢占条件;当具有较低优先级的另一个RO规则正在占用所述阅读器的资源时,所述阅读器判断 所述RO规则具有抢占条件。
4.根据权利要求2所述的方法,其特征在于,所述阅读器调度所述RO规则进行状态转 换还包括当所述RO规则处于所述就绪态或者所述执行态时,所述阅读器判断所述RO规则的触 发条件再次到来,则所述阅读器对再次到来的触发条件进行积累;所述阅读器判断所述RO规则本次执行完毕,则所述阅读器直接再次执行所述RO规则, 所述执行的次数为所述积累的数量。
5.根据权利要求4所述的方法,其特征在于,在所述阅读器对再次到来的触发条件进行积累之前还包括所述阅读器判断积累的数量是否达到预先配置的阈值; 若达到所述阈值,则所述阅读器丢弃所述再次到来的触发条件。
6.根据权利要求5所述的方法,其特征在于,所述阅读器调度所述RO规则进行状态转 换还包括当所述RO规则处于所述就绪态或者所述执行态时,所述阅读器判断所述RO规则的结 束条件再次到来,则所述阅读器将所述积累的数量减1。
7.根据权利要求2所述的方法,其特征在于,所述RO规则的属性、优先级以及当前所处 的状态保存在所述阅读器的非易失性介质中,所述阅读器调度所述RO规则进行状态转换 还包括所述阅读器重新启动;若所述RO规则在所述阅读器重新启动前所处的状态为所述就绪态或者所述执行态, 则所述阅读器在重新启动后调度所述RO规则直接进入所述激活态;若所述RO规则在所述阅读器重新启动前所处的状态为所述休眠态、所述激活态或者 所述删除态,则所述阅读器在重新启动后调度所述RO规则直接进入保存的在所述阅读器 重新启动前所处的状态。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述阅读器中创建有多个RO 规则,且所述阅读器中具有与所述休眠态对应的休眠态队列、与所述激活态对应的激活态 队列以及与所述就绪态对应的就绪态队列,所述阅读器调度所述RO规则进行状态转换还包括当所述阅读器创建一个所述RO规则时,所述阅读器将所述RO规则放入所述休眠态队列;当所述RO规则位于所述休眠态队列时,所述阅读器根据接收到的所述RO规则的激活 指令将所述RO规则从所述休眠态队列中取出并放入所述激活态队列;当所述RO规则位于所述激活态队列时,所述阅读器根据接收到的所述RO规则的反激 活指令将所述RO规则从所述激活态队列取出并放入所述休眠态队列;当所述RO规则位于所述激活态队列时,所述阅读器判断所述RO规则的触发条件到来、 所述RO规则具有抢占条件且所述阅读器的资源忙,则所述阅读器将所述RO规则从所述激 活态队列取出并放入所述就绪态队列;当所述RO规则处于所述就绪态队列时,所述阅读器判断所述RO规则的结束条件到来, 则所述阅读器将所述RO规则从所述就绪态队列取出并放入所述激活态队列;当所述RO规则处于所述激活态队列时,所述阅读器判断所述RO规则的触发条件到来 且所述阅读器的资源空闲或者判断所述RO规则的触发条件到来且所述RO规则具有抢占条 件,则所述阅读器将所述RO规则从所述激活态队列取出并执行所述RO规则;当所述阅读器判断其资源空闲时,所述阅读器将所述就绪态队列中具有最高优先级的 RO规则取出并执行所述RO规则;当所述阅读器判断所述RO规则执行完毕或者判断所述阅读器的资源被抢占或者判断 所述RO规则的结束条件到来,则所述阅读器将所述RO规则放入所述激活态队列。
9.一种阅读器,其特征在于,包括创建模块,用于创建RO规则;调度模块,用于调度所述RO规则进行状态转换,所述状态包括休眠态、删除态、激活 态、就绪态和执行态;其中,所述调度模块还用于当所述RO规则处于所述激活态时,若判断所述RO规则的触发条 件到来、所述RO规则不具有抢占条件且所述阅读器的资源忙,则调度所述RO规则进入所述 就绪态;还用于当所述RO规则处于所述就绪态时,若判断所述阅读器的资源空闲,则调度 所述RO规则进入所述执行态,并执行所述RO规则。
10.根据权利要求9所述的阅读器,其特征在于,所述阅读器还包括 删除模块,用于删除所述RO规则;所述调度模块还用于当所述创建模块创建所述RO规则时,调度所述RO规则进入所述 休眠态;还用于当所述RO规则处于所述休眠态时,根据接收到的所述RO规则的激活指令调 度所述RO规则进入所述激活态;还用于当所述RO规则处于所述激活态时,根据接收到的所 述RO规则的反激活指令调度所述RO规则进入所述休眠态;还用于当所述RO规则处于所述 休眠态、所述激活态、所述就绪态或者所述执行态时,在所述删除模块删除所述RO规则之 后,调度所述RO规则进入所述删除态;还用于当所述RO规则处于所述就绪态时,若判断所 述RO规则的结束条件到来,则调度所述RO规则进入所述激活态;还用于当所述RO规则处 于所述激活态时,若判断所述RO规则的触发条件到来且所述阅读器的资源空闲或者判断 所述RO规则的触发条件到来且所述RO规则具有抢占条件,则调度所述RO规则进入所述执 行态;还用于当所述RO规则处于所述执行态时,若判断所述RO规则执行完毕或者判断所述 阅读器的资源被抢占或者判断所述RO规则的结束条件到来,则调度所述RO规则进入所述 激活态。
全文摘要
本发明公开了一种阅读器及其RO规则调度方法,其中,方法包括阅读器创建RO规则;阅读器调度RO规则进行状态转换,状态包括休眠态、删除态、激活态、就绪态和执行态;其中,当RO规则处于激活态时,阅读器判断RO规则的触发条件到来、RO规则不具有抢占条件且阅读器的资源忙,则阅读器调度RO规则进入就绪态;当RO规则处于就绪态时,阅读器判断其资源空闲,则阅读器调度RO规则进入执行态,并执行RO规则。本发明完善了规则冲突时阅读器的处理方法,并且实现后触发的RO规则不丢失执行机会的效果。
文档编号G06F9/50GK102096604SQ20091024626
公开日2011年6月15日 申请日期2009年12月11日 优先权日2009年12月11日
发明者于晨捷, 马凯 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1