基于令牌的任务调度方法技术

技术编号:15638108 阅读:189 留言:0更新日期:2017-06-15 13:07
本发明专利技术提出了基于令牌的任务调度方法,属于自动化控制领域,包括全局令牌协调器以及与之联系的至少一个控制器,令全局令牌协调器获取控制系统资源确定可用令牌数量。接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令。根据令牌回复指令执行后续步骤。通过使用全局令牌协调器根据系统资源对令牌数量进行实时调整,保证先控服务器不会因多个控制器的运行导致系统负荷长时间处于高位,提高了控制系统的稳定性,令装置的优化效果能够得到持续改进;同时有效的利用了先控服务器的系统资源,防止因限定控制器数量导致系统资源的浪费。

【技术实现步骤摘要】
基于令牌的任务调度方法
本专利技术属于自动化控制领域,特别涉及基于令牌的任务调度方法。
技术介绍
流程工业优化控制过程中往往要求能够将装置的温度、液位、压力等指标控制在一定的范围内,这就需要在先控服务器上同时运行多个先进控制软件APC控制器(以下简称控制器)用以控制不同装置的不同指标。由于这些控制器每次运行时需要消耗大量的计算资源(如CPU、内存),因此若同时运行多个控制器的情况下会导致先控服务器(运行基于先进过程控制理论的控制器等优化类软件的高性能服务器)运行在高负荷状态,这将会导致其它控制器由于无法得到计算资源而无法进行优化计算,最终影响到装置的优化效果,更为严重的是由于先控服务器长期运行在高负荷状态,大大增加了其发生宕机等意外情况的概率,从而严重影响到控制系统的稳定性,带来生产上的安全隐患。针对现有技术改进的实现方案是在控制器内部增加系统资源监控模块,通过实时监控先控服务器的系统资源使用情况用以确定是否需要延时执行。但是这种方案会发生需要延时的控制器在延时执行时刻系统依旧处于高负荷状态从而导致不断延时,继而发生不能及时运算从而导致无法稳定优化效果的情况。
技术实现思路
为了解决现有技术中存在的缺点和不足,本专利技术提供了用于提高系统稳定性的基于令牌的任务调度方法。为了达到上述技术目的,本专利技术提供了基于令牌的任务调度方法,该方法用于控制系统中的全局令牌协调器,所述任务调度方法,包括:令全局令牌协调器获取控制系统资源,确定可用令牌数量;建立令牌等待发送列表,在令牌等待发送列表中存有接收到的已发送令牌请求的控制器的序号、接收到令牌请求的时刻顺序以及与控制器对应的优先级顺序;接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令;其中,在令牌等待发送列表中,首先按照控制器优先级从高到底排列,其次在控制器优先级一致的情况按照接收到控制器令牌请求时刻的先后顺序排序。可选的,所述令全局令牌协调器获取控制系统资源,确定可用令牌数量,包括:在启动所述全局令牌协调器、或设置在所述全局令牌协调器内的定时检测系统检测到可用资源事件发生、或接收到控制器发送的令牌请求时,获取所述控制系统资源使用情况,从所述控制系统资源使用情况中提取处理器空闲使用率,对所述处理器空闲处理器使用率进行处理,获取可用令牌数量。可选的,所述对所述处理器空闲使用率进行处理,获取可用令牌数量,包括:将所述处理器空闲使用率×100×80%/10后的结果取整,将得到的数值定为可用令牌数量。可选的,在所述接收到当前控制器发送的令牌请求后,所述任务调度方法,还包括:将所述当前控制器的序号与所述令牌等待发送列表中的内容进行对比;如果在所述令牌等待发送列表中已经存储有所述当前控制器的序号,则将所述当前控制器的优先级加一;如果在所述令牌等待发送列表中未存储有所述当前控制器的序号,则将所述当前控制器的序号添加到所述令牌等待发送列表中。可选的,所述接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令,包括:在接收到当前控制器发送的令牌请求后,获取令牌等待发送列表中存储的控制器的顺序,获取排在最前的控制器的序号;如果可用令牌数量大于零,则向所述序号对应的控制器发送内容为请求成功的令牌回复指令;如果可用令牌数量小于或等于零,则向所述序号对应的控制器发送内容为请求失败的令牌回复指令。可选的,在向所述序号对应的控制器发送内容为请求成功的令牌回复指令后,所述方法还包括:向所述序号对应的控制器发放令牌,将所述可用令牌数量减一,将所述序号从所述令牌等待发送列表中移除。可选的,所述任务调度方法,还包括:在接收到令牌归还请求后,将所述可用令牌数量加一。本专利技术还提出了基于令牌的任务调度方法,该方法用于控制系统中与全局令牌协调器进行数据传输的至少一个控制器,其特征在于,所述任务调度方法,包括:控制器向全局令牌协调器发送令牌请求;从全局令牌协调器处接收令牌回复指令,根据令牌回复指令执行后续步骤。可选的,所述根据令牌回复指令执行后续步骤,包括:当所述令牌回复指令中的内容为成功时,接收所述全局令牌协调器发出的令牌,执行计算任务,执行完成后向所述全局令牌协调器发送令牌归还请求;当所述令牌回复指令中的内容为失败时,选取一个随机时间片段,等待随机时间片段对应的时刻。可选的,所述任务调度方法,还包括:在等待所述随机时间片段对应的时刻后,如果控制器已运行超时,则记录控制器因超时导致异常的次数,向所述全局令牌协调器发送令牌取消请求;如果控制器未超时则重新向所述全局令牌协调器发送令牌请求。本专利技术提供的技术方案带来的有益效果是:通过使用全局令牌协调器根据系统资源对令牌数量进行实时调整,保证先控服务器不会因多个控制器的运行导致系统负荷长时间处于高位,提高了控制系统的稳定性,令装置的优化效果能够得到持续改进;同时有效的利用了先控服务器的系统资源,防止因限定控制器数量导致系统资源的浪费。附图说明为了更清楚地说明本专利技术的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术提供的基于令牌的任务调度方法的流程示意图;图2是本专利技术提供的根据令牌回复指令执行后续步骤的流程示意图;图3是本专利技术提供的控制器引入令牌后的执行流程示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更为清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一本专利技术实施例提供了基于令牌的任务调度方法,该方法应用于包含全局令牌协调器和至少一个控制器的控制系统中,全局令牌协调器与多个控制器进行通信,以令牌分配的方式实际运行的控制器进行控制,从而能够根据控制系统资源的情况对申请资源的控制器的数量进行限制。如图1所示,该基于令牌的任务调度方法,包括:101、令全局令牌协调器获取控制系统资源,确定可用令牌数量。102、建立令牌等待发送列表,在令牌等待发送列表中存有接收到的已发送令牌请求的控制器的序号、接收到令牌请求的时刻顺序以及与控制器对应的优先级顺序。103、控制器向全局令牌协调器发送令牌请求。104、接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令。105、从全局令牌协调器处接收令牌回复指令,根据令牌回复指令执行后续步骤。其中,首先按照控制器优先级从高到底排列,其次在控制器优先级一致的情况按照接收到控制器令牌请求时刻的先后顺序排序。在实施中,全局令牌协调器作为控制系统内令牌的管理单元,用于根据控制系统的系统资源定时更新令牌总数,防止在没有控制器发送令牌请求时因令牌数量太少导致的资源闲置。同时在全局令牌协调器被启动后定时或者在接收到控制器发送的令牌请求时获取系统资源的使用情况,从而确定可用令牌本文档来自技高网...
基于令牌的任务调度方法

【技术保护点】
基于令牌的任务调度方法,该方法用于控制系统中的全局令牌协调器,其特征在于,所述任务调度方法,包括:令全局令牌协调器获取控制系统资源,确定可用令牌数量;建立令牌等待发送列表,在令牌等待发送列表中存有接收到的已发送令牌请求的控制器的序号、接收到令牌请求的时刻顺序以及与控制器对应的优先级顺序;接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令;其中,在令牌等待发送列表中,首先按照控制器优先级从高到底排列,其次在控制器优先级一致的情况按照接收到控制器令牌请求时刻的先后顺序排序。

【技术特征摘要】
1.基于令牌的任务调度方法,该方法用于控制系统中的全局令牌协调器,其特征在于,所述任务调度方法,包括:令全局令牌协调器获取控制系统资源,确定可用令牌数量;建立令牌等待发送列表,在令牌等待发送列表中存有接收到的已发送令牌请求的控制器的序号、接收到令牌请求的时刻顺序以及与控制器对应的优先级顺序;接收当前控制器发送的令牌请求,根据令牌等待发送列表中存储的控制器的顺序,结合可用令牌数量向当前控制器发送令牌回复指令;其中,在令牌等待发送列表中,首先按照控制器优先级从高到底排列,其次在控制器优先级一致的情况按照接收到控制器令牌请求时刻的先后顺序排序。2.根据权利要求1所述的基于令牌的任务调度方法,其特征在于,所述令全局令牌协调器获取控制系统资源,确定可用令牌数量,包括:在启动所述全局令牌协调器、或设置在所述全局令牌协调器内的定时检测系统检测到可用资源事件发生、或接收到控制器发送的令牌请求时,获取所述控制系统资源使用情况,从所述控制系统资源使用情况中提取处理器空闲使用率,对所述处理器空闲处理器使用率进行处理,获取可用令牌数量。3.根据权利要求2所述的基于令牌的任务调度方法,其特征在于,所述对所述处理器空闲使用率进行处理,获取可用令牌数量,包括:将所述处理器空闲使用率×100×80%/10后的结果取整,将得到的数值定为可用令牌数量。4.根据权利要求1所述的基于令牌的任务调度方法,其特征在于,在所述接收到当前控制器发送的令牌请求后,所述任务调度方法,还包括:将所述当前控制器的序号与所述令牌等待发送列表中的内容进行对比;如果在所述令牌等待发送列表中已经存储有所述当前控制器的序号,则将所述当前控制器的优先级加一;如果在所述令牌等待发送列表中未存储有所述当前控制器的序号,则将所述当前控制器的序号添加到所述令牌等待发送列表中。5.根据权利要求1所述的基于令牌的任务调度方法,其特征在于,所...

【专利技术属性】
技术研发人员:张利平俞海斌叶建位
申请(专利权)人:浙江中控软件技术有限公司
类型:发明
国别省市:浙江,33

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

1