CN110737533B - 一种任务调度方法、装置及电子设备和存储介质 - Google Patents
一种任务调度方法、装置及电子设备和存储介质 Download PDFInfo
- Publication number
- CN110737533B CN110737533B CN201910995300.0A CN201910995300A CN110737533B CN 110737533 B CN110737533 B CN 110737533B CN 201910995300 A CN201910995300 A CN 201910995300A CN 110737533 B CN110737533 B CN 110737533B
- Authority
- CN
- China
- Prior art keywords
- target
- task
- tasks
- controller
- stage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000005236 sound signal Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41835—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by programme execution
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41865—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Quality & Reliability (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
- Control By Computers (AREA)
- Programmable Controllers (AREA)
Abstract
本申请公开了一种任务调度方法、装置及一种电子设备和计算机可读存储介质,该方法包括:将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入所述确定所述目标阶段对应的目标任务的步骤,直到所述目标阶段不存在下一阶段。本申请提供的任务调度方法,多个控制器中采用多线程的方式并发执行同一阶段内的任务,提高了多控制器系统的任务执行效率。
Description
技术领域
本申请涉及计算机技术领域,更具体地说,涉及一种任务调度方法、装置及一种电子设备和一种计算机可读存储介质。
背景技术
在多控制器系统执行多任务时,为保证各任务的顺序执行,每个控制器内采用单线程完成所有的任务,导致系统的执行效率较低。
因此,如何提高多控制器系统的任务执行效率是本领域技术人员需要解决的技术问题。
发明内容
本申请的目的在于提供一种任务调度方法、装置及一种电子设备和一种计算机可读存储介质,提高了多控制器系统的任务执行效率。
为实现上述目的,本申请提供了一种任务调度方法,应用于多控制系统,所述多控制系统包括多个控制器,每个所述控制器中包括多个线程,所述方法包括:
将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入所述确定所述目标阶段对应的目标任务的步骤,直到所述目标阶段不存在下一阶段。
其中,还包括:
在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。
其中,所述确定每个所述目标任务的控制器归属和线程归属,包括:
将所有所述目标任务均匀分配至多个所述控制器中;
将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中。
其中,所述将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中,包括:
确定每个所述控制器对应的目标任务的数量;
将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
为实现上述目的,本申请提供了一种任务调度装置,应用于多控制系统,所述多控制系统包括多个控制器,每个所述控制器中包括多个线程,所述装置包括:
划分模块,用于将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
第一确定模块,用于确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
执行模块,用于利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
第二确定模块,用于当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新启动所述第一确定模块的工作流程,直到所述目标阶段不存在下一阶段。
其中,还包括:
记录模块,用于在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
判定模块,用于当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。
其中,所述第一确定模块包括:
第一确定单元,用于确定所述目标阶段对应的目标任务;
第一分配单元,用于将所有所述目标任务均匀分配至多个所述控制器中;
第二分配单元,用于将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中。
其中,所述第二分配单元具体为确定每个所述控制器对应的目标任务的数量,并将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中的单元;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
为实现上述目的,本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任务调度方法的步骤。
为实现上述目的,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任务调度方法的步骤。
通过以上方案可知,本申请提供的一种任务调度方法,包括:将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入所述确定所述目标阶段对应的目标任务的步骤,直到所述目标阶段不存在下一阶段。
本申请提供的任务调度方法,将任务划分为不同的阶段,不同阶段的任务不可以并发执行,必须要求前面阶段中所有任务完成以后才可以进行下一阶段的任务。但是相同阶段内的任务可以并发执行,因此,多个控制器中采用多线程的方式并发执行同一阶段内的任务,提高了多控制器系统的任务执行效率。本申请还公开了一种任务调度装置及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
图1为根据一示例性实施例示出的一种任务调度方法的流程图;
图2为根据一示例性实施例示出的另一种任务调度方法的流程图;
图3为一种总控制任务的架构设计;
图4为根据一示例性实施例示出的一种任务调度装置的结构图;
图5为根据一示例性实施例示出的一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例公开了一种任务调度方法,提高了多控制器系统的任务执行效率。
参见图1,根据一示例性实施例示出的一种任务调度方法的流程图,如图1所示,包括:
S101:将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
在本实施例中,多控制系统的整个软件架构设计由一个总控制任务和多个子任务组成。总控制任务设定在配置节点的单个线程中,主要用来控制各个阶段子任务的调度,设计要求各个阶段之间不可并发执行,必须要求前面阶段中所有子任务完成以后才可以进行下一阶段的操作。也就是说,总控制任务将系统中的所有任务划分为多个阶段,不同阶段的任务顺序执行,相同阶段的任务并发执行。
S102:确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
对于某一目标阶段中的目标任务,在本步骤中确定器控制器归属和线程归属,即确定执行该目标任务的控制器,进而在该控制器内确定执行该目标任务的线程。作为一种优选实施方式,可以按照按照设定的布局规则均衡分布在每个控制器的各个归属线程中,以便利用所有的内存和CPU资源来尽快的完成阶段内的所有任务。即所述确定每个所述目标任务的控制器归属和线程归属的步骤包括:将所有所述目标任务均匀分配至多个所述控制器中;将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中。
S103:利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
在本步骤中,利用每个目标任务对应的线程执行每个目标任务,当目标阶段中的所有目标任务均执行完成时,该目标阶段完成,进入下一阶段的任务执行。
优选的,本实施例还包括:在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。在具体实施中,每个控制器中均存在一个状态寄存器,状态寄存器的每一各标志位对应一个线程,记录了该线程的任务执行情况,例如,初始时状态寄存器均为0,当某一线程执行目标任务完成时,将该线程在状态寄存器对应的标志位设置为1。
S104:当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入步骤S102,直到所述目标阶段不存在下一阶段。
在本步骤中,当目标阶段完成时,将该目标阶段的下一阶段重新确定为目标阶段,并重新进入S102以便完成所有阶段的任务。
本申请实施例提供的任务调度方法,将任务划分为不同的阶段,不同阶段的任务不可以并发执行,必须要求前面阶段中所有任务完成以后才可以进行下一阶段的任务。但是相同阶段内的任务可以并发执行,因此,多个控制器中采用多线程的方式并发执行同一阶段内的任务,提高了多控制器系统的任务执行效率。
本申请实施例公开了一种任务调度方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
参见图2,根据一示例性实施例示出的另一种任务调度方法的流程图,如图2所示,包括:
S201:将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
S202:确定所述目标阶段对应的目标任务,并将所有所述目标任务均匀分配至多个所述控制器中;
S203:确定每个所述控制器对应的目标任务的数量;
S204:将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
本实施例提供了一种具体的确定目标任务线程归属的方法,具体的首先确定分配至控制器的目标任务的数量,并为每个线程和每个目标任务分配标识,通过取余运算进行任务分配。例如,控制器中包括16个线程,分配到该控制器的目标任务的数量为50,则将标识为1、17、33、49的目标任务分配至线程1,将标识为2、18、34、50的目标任务分配至线程2,将标识为3、19、35的目标任务分配至线程3,以此类推。
S205:在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
S206:当所有所述目标任务的执行情况均为已完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入步骤S202,直到所述目标阶段不存在下一阶段。
由此可见,本实施例为每个目标任务和线程分配标识,通过取余运算将目标任务均匀分配至各线程中,任务分配效率较高,从而提高了系统的任务执行效率。
下面介绍本申请提供的一种应用实施例,如图3所示,实现元数据修复功能的系统中包括两个控制器(图中为FQ),两个控制器之间进行message通信,每个控制器中包括16个线程。总控制任务用来控制各个阶段任务(图中为TASK)的调度,系统中包括4个阶段,各个阶段之间的任务不可并发执行,必须要求前面阶段中所有任务完成以后才可以进行下一阶段的操作,各个阶段内的所有任务可以并发执行。
步骤一:由总控制任务发起阶段1的任务,阶段1开始按照每个任务设定的布局规则均衡分布在两个控制器的16个归属线程中并发执行;
步骤二:每个线程中的任务默认为“未开始”状态,线程中的任务开始执行时会更新该线程中的任务状态为“运行中”状态,任务执行完成后则更新任务状态为“已完成”状态;
步骤三:所有线程中的任务都已完成则发送消息至对端控制器,如果两个控制中的所有线程中的任务都已完成则更新总控制任务为相应进度状态,此时总控制任务会发起下一阶段任务;
重复上述步骤一至步骤三,直至所有阶段任务完成后总控制任务则完成了整个修复任务。
下面对本申请实施例提供的一种任务调度装置进行介绍,下文描述的一种任务调度装置与上文描述的一种任务调度方法可以相互参照。
参见图4,根据一示例性实施例示出的一种任务调度装置的结构图,如图4所示,包括:
划分模块401,用于将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
第一确定模块402,用于确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
执行模块403,用于利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
第二确定模块404,用于当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新启动所述第一确定模块402的工作流程,直到所述目标阶段不存在下一阶段。
本申请实施例提供的任务调度装置,将任务划分为不同的阶段,不同阶段的任务不可以并发执行,必须要求前面阶段中所有任务完成以后才可以进行下一阶段的任务。但是相同阶段内的任务可以并发执行,因此,多个控制器中采用多线程的方式并发执行同一阶段内的任务,提高了多控制器系统的任务执行效率。
在上述实施例的基础上,作为一种优选实施方式,还包括:
记录模块,用于在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
判定模块,用于当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。
在上述实施例的基础上,作为一种优选实施方式,所述第一确定模块402包括:
第一确定单元,用于确定所述目标阶段对应的目标任务;
第一分配单元,用于将所有所述目标任务均匀分配至多个所述控制器中;
第二分配单元,用于将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中。
在上述实施例的基础上,作为一种优选实施方式,所述第二分配单元具体为确定每个所述控制器对应的目标任务的数量,并将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中的单元;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请还提供了一种电子设备,参见图5,本申请实施例提供的一种电子设备500的结构图,如图5所示,可以包括处理器11和存储器12。该电子设备500还可以包括多媒体组件13,输入/输出(I/O)接口14,以及通信组件15中的一者或多者。
其中,处理器11用于控制该电子设备500的整体操作,以完成上述的任务调度方法中的全部或部分步骤。存储器12用于存储各种类型的数据以支持在该电子设备500的操作,这些数据例如可以包括用于在该电子设备500上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件13可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器12或通过通信组件15发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口14为处理器11和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件15用于该电子设备500与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(Near FieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件15可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,电子设备500可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal Processing Device,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的任务调度方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述任务调度方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器12,上述程序指令可由电子设备500的处理器11执行以完成上述的任务调度方法。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (6)
1.一种任务调度方法,其特征在于,应用于多控制系统,所述多控制系统包括多个控制器,每个所述控制器中包括多个线程,所述方法包括:
将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新进入所述确定所述目标阶段对应的目标任务的步骤,直到所述目标阶段不存在下一阶段;
其中,所述确定每个所述目标任务的控制器归属和线程归属,包括:
将所有所述目标任务均匀分配至多个所述控制器中;
将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中;
所述将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中,包括:
确定每个所述控制器对应的目标任务的数量;
将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
2.根据权利要求1所述任务调度方法,其特征在于,还包括:
在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。
3.一种任务调度装置,其特征在于,应用于多控制系统,所述多控制系统包括多个控制器,每个所述控制器中包括多个线程,所述装置包括:
划分模块,用于将所有任务划分为多个阶段,并在所有所述阶段中确定目标阶段;
第一确定模块,用于确定所述目标阶段对应的目标任务,并确定每个所述目标任务的控制器归属和线程归属;
执行模块,用于利用每个所述目标任务对应的线程执行每个所述目标任务,以便完成所述目标阶段;
第二确定模块,用于当所述目标阶段完成时,将所述目标阶段的下一阶段重新确定为所述目标阶段,并重新启动所述第一确定模块的工作流程,直到所述目标阶段不存在下一阶段;
所述第一确定模块包括:
第一确定单元,用于确定所述目标阶段对应的目标任务;
第一分配单元,用于将所有所述目标任务均匀分配至多个所述控制器中;
第二分配单元,用于将每个所述控制器对应的目标任务均匀分配至每个所述控制器的线程中;
所述第二分配单元具体为确定每个所述控制器对应的目标任务的数量,并将每个所述控制器对应的候选任务分配至每个所述控制器的候选线程中的单元;其中,所述候选线程的标识为所述候选任务的标识与所述控制器对应的目标任务的数量的取余结果。
4.根据权利要求3所述任务调度装置,其特征在于,还包括:
记录模块,用于在执行每个所述目标任务时,利用状态寄存器记录每个所述目标任务的执行情况;
判定模块,用于当所有所述目标任务的执行情况均为已完成时,判定所述目标阶段完成。
5.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1或2任一项所述任务调度方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1或2任一项所述任务调度方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910995300.0A CN110737533B (zh) | 2019-10-18 | 2019-10-18 | 一种任务调度方法、装置及电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910995300.0A CN110737533B (zh) | 2019-10-18 | 2019-10-18 | 一种任务调度方法、装置及电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110737533A CN110737533A (zh) | 2020-01-31 |
CN110737533B true CN110737533B (zh) | 2022-11-11 |
Family
ID=69270176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910995300.0A Active CN110737533B (zh) | 2019-10-18 | 2019-10-18 | 一种任务调度方法、装置及电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110737533B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309294B (zh) * | 2020-02-29 | 2022-06-07 | 苏州浪潮智能科技有限公司 | 一种业务处理方法、装置及电子设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594891A (zh) * | 2012-02-17 | 2012-07-18 | 中国科学院计算技术研究所 | 用于处理远程过程调用请求的方法及系统 |
CN105892996A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种批量数据处理的流水线作业方法及装置 |
CN109814998A (zh) * | 2019-01-22 | 2019-05-28 | 中国联合网络通信集团有限公司 | 一种多进程任务调度的方法及装置 |
CN110019024A (zh) * | 2019-04-11 | 2019-07-16 | 苏州浪潮智能科技有限公司 | 一种目录查询方法、系统及电子设备和存储介质 |
-
2019
- 2019-10-18 CN CN201910995300.0A patent/CN110737533B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594891A (zh) * | 2012-02-17 | 2012-07-18 | 中国科学院计算技术研究所 | 用于处理远程过程调用请求的方法及系统 |
CN105892996A (zh) * | 2015-12-14 | 2016-08-24 | 乐视网信息技术(北京)股份有限公司 | 一种批量数据处理的流水线作业方法及装置 |
CN109814998A (zh) * | 2019-01-22 | 2019-05-28 | 中国联合网络通信集团有限公司 | 一种多进程任务调度的方法及装置 |
CN110019024A (zh) * | 2019-04-11 | 2019-07-16 | 苏州浪潮智能科技有限公司 | 一种目录查询方法、系统及电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110737533A (zh) | 2020-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3761170B1 (en) | Virtual machine creation method and apparatus | |
CN107944773A (zh) | 一种业务流程控制方法、装置及存储介质 | |
CN107203465B (zh) | 系统接口测试方法及装置 | |
CN108694564A (zh) | 一种任务状态控制方法及装置 | |
CN113254240B (zh) | 一种管理控制设备的方法、系统、设备及介质 | |
CN113535251A (zh) | 一种线程管理方法及装置 | |
CN111144837A (zh) | 流程编排的方法、装置、存储介质及电子设备 | |
CN113986402A (zh) | 函数调用方法、装置、电子设备及存储介质 | |
US11327788B2 (en) | Methods for scheduling multiple batches of concurrent jobs | |
WO2018123456A1 (ja) | プログラマブルコントローラ、管理装置および制御システム | |
CN110737533B (zh) | 一种任务调度方法、装置及电子设备和存储介质 | |
CN110286996A (zh) | 容器实例ip切换方法、装置、计算机设备及存储介质 | |
WO2018096717A1 (ja) | コントロールシステム及びコントロール方法 | |
CN110244964B (zh) | 一种基于运维应用的运维方法、运维方法、装置及设备 | |
CN109669672B (zh) | 一种中性化版本构建、页面响应方法、系统及相关装置 | |
CN116881003A (zh) | 资源分配方法、装置、服务设备及存储介质 | |
CN110928575B (zh) | 一种多设备同步控制系统和控制方法 | |
CN116610370A (zh) | 一种启动方法、装置、设备及存储介质 | |
CN110928672A (zh) | 一种任务编排方法、装置、设备及存储介质 | |
CN111858234A (zh) | 一种任务执行方法、装置、设备、介质 | |
CN111176830A (zh) | 信息流的分配方法、装置及服务器系统 | |
CN111080250A (zh) | 流程回退补偿方法、装置、存储介质及电子设备 | |
CN110554906A (zh) | 虚拟机配置管理方法及装置 | |
CN116501474B (zh) | 一种批量同质任务的处理系统、方法以及装置 | |
CN110968412B (zh) | 一种任务执行方法、系统及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |