【技术实现步骤摘要】
多任务调度方法、装置及电子设备
[0001]本申请涉及工业控制领域,具体而言,涉及一种多任务调度方法、装置及电子设备。
技术介绍
[0002]工业控制领域中往往需要控制系统具备多任务处理能力,因此如何实现控制系统的多任务调度是该领域中的一个重要问题。
[0003]现有技术中,多任务调度的方式一般包括基于优先级的时长片轮询调度或者基于优先级的抢占式调度。在这两种调度方式中,各个任务执行时长具有不确定性,通过这两种调度方式调度时,任务容易受其他任务影响,例如当某个任务长期占用系统运行资源时,其他任务无法正常执行。
[0004]然而,在工业控制领域中,对于任务的独立性要求较高,多个任务之间需要时长隔离,并且互不影响。因此,现有技术中的多任务调度方式无法适用于工业控制领域中的多任务调度。
技术实现思路
[0005]本申请的目的在于,针对上述现有技术中的不足,提供一种多任务调度方法、装置及电子设备,使得各任务之间的时间严格隔离,避免各任务之间的相互影响。
[0006]为实现上述目的,本申请实施例采用的技术方案如下:
[0007]第一方面,本申请实施例提供了一种多任务调度方法,所述方法包括:
[0008]获取待调度的各任务的总执行时长和各任务的执行周期,所述执行周期用于指示所述任务执行完成所需要经过的控制周期的数量,且所述执行周期与所述任务的重要程度成反比;
[0009]根据多个控制周期中实际用于任务执行的时长,确定每个控制周期中用于任务执行的平均时长,所述平均时长 ...
【技术保护点】
【技术特征摘要】
1.一种多任务调度方法,其特征在于,所述方法包括:获取待调度的各任务的总执行时长和各任务的执行周期,所述执行周期用于指示所述任务执行完成所需要经过的控制周期的数量,且所述执行周期与所述任务的重要程度成反比;根据多个控制周期中实际用于任务执行的时长,确定每个控制周期中用于任务执行的平均时长,所述平均时长用于指示控制系统在每个控制周期内用于任务调度和执行的时长;根据待调度的各任务的总执行时长、各任务的执行周期以及所述平均时长,确定各控制周期中各任务的目标执行时长;按照所述目标执行时长以及预设的执行顺序,在每个控制周期内依次调度并执行各任务。2.根据权利要求1所述的多任务调度方法,其特征在于,所述根据待调度的各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期中各任务的目标执行时长,包括:获取各任务的执行时长余量比例,所述执行时长余量比例用于指示为所述任务分配的余量时长占所述平均时长的比例;根据待调度的各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期中各任务的目标执行时长。3.根据权利要求2所述的多任务调度方法,其特征在于,所述根据待调度的各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期中各任务的目标执行时长,包括:根据各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期内是否完成所有任务的执行;若是,则按照目标分配策略,根据各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期中各任务的目标执行时长。4.根据权利要求3所述的多任务调度方法,其特征在于,所述根据各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期内是否完成所有任务的执行,包括:根据各任务的总执行时长和执行周期,确定各任务在一个控制周期内的执行时长;根据各任务在一个控制周期内的执行时长,确定所有任务在一个控制周期内的第一总执行时长;计算所述第一总执行时长与所述平均时长的比值,得到第一任务时长比例;根据各任务的执行时长余量比例,确定所有任务的总执行时长余量比例;计算所述第一任务时长比例与所述执行时长余量比例的和;若所述第一任务时长比例与所述总执行时长余量比例的和小于或等于预设阈值,则确定各控制周期内完成所有任务的执行。5.根据权利要求3所述的多任务调度方法,其特征在于,按照目标分配策略,根据各任务的总执行时长、各任务的执行周期、各任务的执行时长余量比例以及所述平均时长,确定各控制周期中各任务的目标执行时长,包括:
若所述目标分配策略为按需分配策略,则根据各任务的总执行时长、执行周期以及所述平均时长,确定各任务的第二任务时长比例,并计算所述第二任务时长比例与所述任务的执行时长余量比例的和,根据所述第二任务时长比例与所述任务的执行时长余...
【专利技术属性】
技术研发人员:张乾斌,吕铖灿,方珂琦,邵承启,陈超,
申请(专利权)人:浙江中控技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。