CN103870327A - 一种实时多任务调度方法和装置 - Google Patents
一种实时多任务调度方法和装置 Download PDFInfo
- Publication number
- CN103870327A CN103870327A CN201210551909.7A CN201210551909A CN103870327A CN 103870327 A CN103870327 A CN 103870327A CN 201210551909 A CN201210551909 A CN 201210551909A CN 103870327 A CN103870327 A CN 103870327A
- Authority
- CN
- China
- Prior art keywords
- thread
- current scheduling
- described current
- time
- nargin
- 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.)
- Pending
Links
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/126—Job scheduling, e.g. queuing, determine appropriate device
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/5038—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 considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Telephone Function (AREA)
Abstract
本发明实施例提供了一种实时多任务调度方法和装置,能够动态校正线程的裕度值,获得更加准确的任务优先级,进而提高实时多任务调度的准确性。该方法包括:在确定对当前调度的线程进行裕度校正后,根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;接着根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后根据重新确定的优先级队列,依次调度所述队列中的线程。本发明适用于计算机领域。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种实时多任务调度方法和装置。
背景技术
在通用的硬件系统及其配套操作系统中,往往按照分时的原则进行任务调度,调度算法强调任务的公平性,尽量让不同任务公平的轮流占用CPU(Central Processing Unit,中央处理器)计算资源,而现实中,很多应用具有特定的实时性要求,即要求在规定的时间内完成任务,并对随机发生的外部事件做出响应和处理。对于这类应用,普通的强调任务公平性的软硬件调度算法难以满足要求,必须采用具有实时性保证的任务调度算法。
现有技术中,有如下解决实时性问题的技术方案:
采用LLF(Least Laxity First,最小裕度优先)算法,其中,所述裕度指的是执行完该任务还剩余的空闲时间,假设在t时刻,一个任务剩余部分的执行时间为X,其截止期限(绝对)为D,则该任务的空闲时间(裕度)为L=D-t-X。在所述LLF算法中,一个任务的优先级由所述裕度大小决定,裕度越小,优先级越高;如果存在任务相同的裕度时,则截止时间靠前的任务的优先级高,先被执行,并且只有所述裕度≥0时任务才可以调度,否则被夭折。
但是,在所述LLF算法中,在进行所述裕度值计算时,D、t都可以准确获得,但是任务的剩余执行时间却难准确估计。而且由于不同的硬件平台配置不同,相同的程序在不同硬件平台上运行的时间也不同,因此在任务创建时,很难准确估计任务实际所需的运行时间,当任务实际所需的运行时间不准确时,将导致在所述LLF算法中,对任务剩余执行时间X的计算也不准确,最终使得优先级的计算不准确,从而影响实时任务调度算法的实际效率。
发明内容
本发明的实施例提供一种实时多任务调度方法和装置,能够动态校正线程的裕度值,获得更加准确的任务优先级,进而提高实时多任务调度的准确性。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供了一种实时多任务调度方法,该方法包括:
确定对当前调度的线程进行裕度校正;
根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;
根据所述重新确定的优先级队列,依次调度所述队列中的线程。
在第一种可能的实现方式中,根据第一方面,所述确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
在第二种可能的实现方式中,根据第一方面,所述确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于所述预设的时间,确定对所述当前调度的线程进行裕度校正。
第二方面,提供了一种实时多任务调度装置,所述装置包括第一确定单元、第二确定单元、第一获取单元、第二获取单元、调度单元;
所述第一确定单元,用于确定对当前调度的线程进行裕度校正;
所述第一获取单元,用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
所述第二获取单元,用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
所述第二确定单元,用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述确定的优先级重新确定优先级队列;
所述调度单元,用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
在第一种可能的实现方式中,根据第二方面,所述第一确定单元确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
在第二种可能的实现方式中,根据第二方面,所述第一确定单元确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于所述预设的时间,确定对所述当前调度的线程进行裕度校正。
第三方面,提供了一种实时多任务调度装置,所述装置包括处理器;
所述处理器,用于确定对当前调度的线程进行裕度校正;
所述处理器,还用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
所述处理器,还用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
所述处理器,还用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;
所述处理器,还用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
在第一种可能的实现方式中,根据第三方面,所述处理器确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
在第二种可能的实现方式中,根据第三方面,所述处理器确定
对所述当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于预设的时间,确定对所述当前调度的线程进行裕度校正。
本发明实施例提供了一种实时多任务调度方法和装置。该方法包括:在确定对当前调度的线程进行裕度校正后,根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;接着根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后根据重新确定的优先级队列,依次调度所述队列中的线程。
基于上述技术方案的描述,由于在进行任务调度时,能够动态校正所述当前调度的线程的剩余执行时间,进而动态校正所述当前调度的线程的裕度值,从而获得更加准确的任务优先级,提高了实时多任务调度的准确性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种实时多任务调度方法;
图2为本发明实施例提供的另一种实时多任务调度方法;
图3为本发明实施例提供的一种线程从开始创建到执行结束的流程示意图;
图4为本发明实施例提供的一种实时多任务调度装置;
图5为本发明实施例提供的另一种实时多任务调度装置。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一、
本发明实施例提供了一种实时多任务调度方法,具体如图1所示,该方法包括:
101、确定对当前调度的线程进行裕度校正。
可以根据预设的任务比例确定对所述当前调度的线程进行裕度校正,也可以根据预设的时间对所述当前调度的线程进行裕度校正,本发明实施例对如何确定对所述当前调度的线程进行裕度校正不作具体限定。
102、根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间。
其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
103、根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度。
假设当前时刻为t,所述当前调度的线程的截止时间为D,所述当前调度的线程的裕度为L,则L=D-t-X。
因为所述当前调度的线程的剩余执行时间是根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间动态获得的,所以所述当前调度的线程的裕度也是动态获取的。
104、根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列。
所述当前调度的线程的裕度是校正后的准确值,根据该当前调度的线程的裕度,可以获得较为准确的线程优先级,然后根据该优先级重新确定优先级队列。如果所述当前调度的线程的优先级较高,则挂入高优先级队列进行排队;否则挂入普通优先级队列排队。
105、根据所述重新确定的优先级队列,依次调度所述队列中的线程。
上述实时多任务调度方法可以通过软件的方式实现,也可以通过硬件支持的方式实现,本发明实施例对此不作具体限定。
本发明实施例提供了一种实时多任务调度方法。该方法包括:在确定对当前调度的线程进行裕度校正后,根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;接着根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后根据重新确定的优先级队列,依次调度所述队列中的线程。
基于上述实施例的描述,由于在进行任务调度时,能够动态校正所述当前调度的线程的剩余执行时间,进而动态校正所述当前调度的线程的裕度值,从而获得更加准确的任务优先级,提高了实时多任务调度的准确性。
实施例二、
本发明实施例还提供了一种实时多任务调度方法,具体如图2所示,该方法包括:
201、判断当前调度的线程的执行进度是否等于预设的任务比例。
通过软件实现时,所述预设的任务比例是一设定在程序内部的值,所述当前调度的线程的执行进度可以和该值进行比较。
通过硬件支持的方式实现时,所述预设的任务比例是基于外部的,比如预设的任务比例为25%,则可以在所述任务比例为25%时插入裕度校正操作。当然,通过硬件支持的方式实现时,也可以随机的插入裕度校正操作,本发明实施例对此不作具体限定。
若所述当前调度的线程的执行进度等于所述预设的任务比例,执行步骤202;
若所述当前调度的线程的执行进度不等于所述预设的任务比例,则继续执行所述当前调度的线程,本发明实施例对此不作具体限定。
202、若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
举例来说,在一次线程中,程序要做5次加1操作,那么程序员可以在第2个和第3个加1操作之间插入一个裕度校正操作,如下所示:
a=a+1;
a=a+1;
裕度校正laxity_correction(40%)
a=a+1;
a=a+1;
a=a+1;
也就是预设的任务比例是40%,表明执行到40%时确定对所述当前调度的线程进行裕度校正。
203、根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间。
其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
需要说明的是,所述当前调度的线程已经执行的时间是该线程执行时间的总和,并非本次调度已经执行的时间。
204、根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度。
假设当前时刻为t,所述当前调度的线程的截止时间为D,所述当前调度的线程的裕度为L,则L=D-t-X。
因为所述当前调度的线程的剩余执行时间是根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间动态获得的,所以所述当前调度的线程的裕度也是动态获取的。
205、根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列。
所述当前调度的线程的裕度是校正后的准确值,根据该当前调度的线程的裕度,可以获得较为准确的线程优先级,然后根据该优先级重新确定优先级队列。如果所述当前调度的线程的优先级较高,则挂入高优先级队列进行排队;否则挂入普通优先级队列排队。
206、根据所述重新确定的优先级队列,依次调度所述队列中的线程。
上述实时多任务调度方法可以通过软件的方式实现,也可以通过硬件支持的方式实现,本发明实施例对此不作具体限定。
可选的,在如何确定对当前调度的线程进行裕度校正时,还可以通过将所述当前调度的线程已经执行的时间和预设的时间作比较确定对当前调度的线程进行裕度校正,具体的,该方法包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于所述预设的时间,确定对所述当前调度的线程进行裕度校正。
下面以本实施例中实时多任务调度的一种方法作为基础,描述线程从开始创建到执行结束的全过程,具体如图3所示,该方法包括:
301、创建线程,并设定所述线程的截止时间以及所需的执行时间。
302、根据所述截止时间和所述剩余执行时间,获取所述线程的裕度。
需要说明的是,所述剩余执行时间在这里为初始的线程剩余时间,对应步骤301中所设的所需执行完时间。
303、根据所述线程的裕度,确定所述线程的优先级,并根据所述线程的优先级确定优先级队列。
304、根据所述优先级队列,依次调度所述队列中的线程。
305、判断当前调度的线程的执行进度是否等于预设的任务比例。
若当前调度的线程的执行进度等于预设的任务比例,执行步骤306;
若当前调度的线程的执行进度不等于预设的任务比例,执行步骤309。
306、若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
307、根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间。
其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
308、根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度。
在获取所述当前调度的线程的裕度后,需要重新根据裕度进行优先级排队,等待执行任务,故此时转去执行步骤303。
309、执行所述当前调度的线程。
310、统计所述线程本次调度已执行时间,用于更新所述线程的剩余执行时间。
具体的,在进行线程调度时,都需要一个数据指针对线程的信息进行记录,所述线程的信息包括线程所在的进程的ID号,所述线程的ID号,所述线程当前的最新裕度值,所述线程执行的截止时间、所述线程完成所需的剩余执行时间、所述线程的上下文信息所在位置的指针,同一个优先级队列中的下一个线程等信息。记录所述线程的信息可通过表格的方式,也可以通过其它的方式,本发明实施例对此不作具体限定。
需要说明的是,除了在确定对当前调度的线程进行裕度校正时,要对当前调度的线程的剩余执行时间进行修正,进而校正裕度值外,对于其它时刻该线程裕度值的更新和剩余执行时间的更新的具体时机,本发明实施例不作具体限定,用户理论上可以在任何时候更新剩余执行时间,进而更新裕度值,比如在本次调度没有进行裕度校正操作,但所述当前调度的线程要切换出去的时刻,可以根据本次调度已执行的时间和本次调度开始时的剩余执行时间,更新所述线程当前的剩余执行时间。在更新裕度值时,该时刻相对于本次调度开始的时刻,该线程的裕度值并没有发生变化,但是优先级队列中的其它线程的裕度值因为时间的推移发生了变化,裕度值需要根据上述实施例中的公式L=D-t-X进行更新。
311、判断所述当前调度的线程是否执行结束。
若所述当前调度的线程执行结束,则完成了该线程所需的操作;
若所述当前调度的线程未执行结束,转去再次执行步骤303,重新根据裕度进行优先级排队,等待执行任务,直至所述线程执行结束。
在线程从开始创建到执行结束的全过程中,步骤305、306、307、308、是图2中实时多任务调度方法的一部分,在此不再赘述。其余各步骤均属于现有技术的一部分,在此也不再赘述。
上述实时多任务调度方法可以通过软件的方式实现,也可以通过硬件支持的方式实现,本发明实施例对此不作具体限定。
本发明实施例提供了一种实时多任务调度方法。该方法包括:在确定对当前调度的线程进行裕度校正后,根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;接着根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后根据重新确定的优先级队列,依次调度所述队列中的线程。
基于上述实施例的描述,由于在进行任务调度时,能够动态校正所述当前调度的线程的剩余执行时间,进而动态校正所述当前调度的线程的裕度值,从而获得更加准确的任务优先级,提高了实时多任务调度的准确性。
实施例三、
本发明实施例提供了一种实时多任务调度装置40,具体如图4所示,所述装置40包括第一确定单元41、第一获取单元42、第二获取单元43、第二确定单元44、调度单元45。
所述第一确定单元41,用于确定对当前调度的线程进行裕度校正。
可以根据预设的任务比例确定对所述当前调度的线程进行裕度校正,也可以根据预设的时间对所述当前调度的线程进行裕度,本发明实施例对如何确定对所述当前调度的线程进行裕度校正不作具体限定。
所述第一获取单元42,用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
所述第二获取单元43,还用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度。
假设当前时刻为t,所述当前调度的线程的截止时间为D,所述当前调度的线程的裕度为L,则L=D-t-X。
因为所述当前调度的线程的剩余执行时间是根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间动态获得的,所以所述当前调度的线程的裕度也是动态获取的。
所述第二确定单元44,还用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述确定的优先级重新确定优先级队列。
所述当前调度的线程的裕度是校正后的准确值,根据该当前调度的线程的裕度,可以获得较为准确的线程优先级,然后根据该优先级重新确定优先级队列。如果所述当前调度的线程的优先级较高,则挂入高优先级队列进行排队;否则挂入普通优先级队列排队。
所述调度单元45,用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
进一步的,所述第一确定单元41确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例。
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
具体的,通过软件实现时,所述预设的任务比例是一设定在程序内部的值,所述当前调度的线程的执行进度可以和该值进行比较。
通过硬件支持的方式实现时,所述预设的任务比例是基于外部的,比如预设的任务比例为25%,则可以在所述任务比例为25%插入裕度校正操作。当然,通过硬件支持的方式实现时,也可以随机的插入裕度校正操作,本发明实施例对此不作具体限定。
可选的,在如何确定对当前调度的线程进行裕度校正时,所述第一确定单元41还可以通过将所述当前调度的线程已经执行的时间和预设的时间作比较确定对当前调度的线程进行裕度校正,该方法包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间。
若所述当前调度的线程已经执行的时间等于预设的时间,确定对所述当前调度的线程进行裕度校正。
上述实时多任务调度方法可以通过软件的方式实现,也可以通过硬件支持的方式实现,本发明实施例对此不作具体限定。
具体的实时多任务调度的方法和线程从开始创建到执行结束的全过程可参见实施例二的描述,本发明实施例对此不再赘述。
本发明实施例提供了一种实时多任务调度装置。所述装置包括:第一确定单元、第二确定单元、第一获取单元、第二获取单元和调度单元。在所述第一确定单元确定对当前调度的线程进行裕度校正后,所述第一获取单元根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后所述第二获取单元根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;接着所述第二确定单元根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后所述调度单元根据重新确定的优先级队列,依次调度所述队列中的线程。
基于上述实施例的描述,由于在进行任务调度时,能够动态校正所述当前调度的线程的剩余执行时间,进而动态校正所述当前调度的线程的裕度值,从而获得更加准确的任务优先级,提高了实时多任务调度的准确性。
实施例四、
本发明实施例提供了一种实时多任务调度装置50,具体如图5所示,所述装置50包括处理器51。
所述处理器51,用于确定对当前调度的线程进行裕度校正。
可以根据预设的任务比例确定对所述当前调度的线程进行裕度校正,也可以根据预设的时间对所述当前调度的线程进行裕度,本发明实施例对如何确定对所述当前调度的线程进行裕度校正不作具体限定。
所述处理器51,还用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
获取所述当前调度的剩余执行时间的方法可参考实施例一步骤102的描述,本发明实施例对此不再赘述。
所述处理器51,还用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度。
假设当前时刻为t,所述当前调度的线程的截止时间为D,所述当前调度的线程的裕度为L,则L=D-t-X。
因为所述当前调度的线程的剩余执行时间是根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间动态获得的,所以所述当前调度的线程的裕度也是动态获取的。
所述处理器51,还用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列。
所述当前调度的线程的裕度是校正后的准确值,根据该当前调度的线程的裕度,可以获得较为准确的线程优先级,然后根据该优先级重新确定优先级队列。如果所述当前调度的线程的优先级较高,则挂入高优先级队列进行排队;否则挂入普通优先级队列排队。
所述处理器51,还用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
进一步的,所述处理器51确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
具体的,通过软件实现时,所述预设的任务比例是一设定在程序内部的值,所述当前调度的线程的执行进度可以和该值进行比较。
通过硬件支持的方式实现时,所述预设的任务比例是基于外部的,比如预设的任务比例为25%,则可以在所述任务比例为25%插入裕度校正操作。当然,通过硬件支持的方式实现时,也可以随机的插入裕度校正操作,本发明实施例对此不作具体限定。
可选的,在如何确定对当前调度的线程进行裕度校正时,所述处理器51还可以通过将所述当前调度的线程已经执行的时间和预设的时间作比较确定对当前调度的线程进行裕度校正,该方法包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于预设的时间,确定对所述当前调度的线程进行裕度校正。
具体的实时多任务调度的方法和线程从开始创建到执行结束的全过程可参见实施例二的描述,在此不再赘述。
本发明实施例提供了一种实时多任务调度装置,所述装置包括处理器。首先所述处理器确定对当前调度的线程进行裕度校正,接着根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间;然后根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;以使得根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;最后所述处理器根据重新确定的优先级队列,依次调度所述队列中的线程。
基于上述实施例的描述,由于在进行任务调度时,能够动态校正所述当前调度的线程的剩余执行时间,进而动态校正所述当前调度的线程的裕度值,从而获得更加准确的任务优先级,提高了实时多任务调度的准确性。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (9)
1.一种实时多任务调度方法,其特征在于,该方法包括:
确定对当前调度的线程进行裕度校正;
根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;
根据所述重新确定的优先级队列,依次调度所述队列中的线程。
2.根据权利要求1所述的方法,其特征在于,所述确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
3.根据权利要求1所述的方法,其特征在于,所述确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于所述预设的时间,确定对所述当前调度的线程进行裕度校正。
4.一种实时多任务调度装置,其特征在于,所述装置包括第一确定单元、第二确定单元、第一获取单元、第二获取单元、调度单元;
所述第一确定单元,用于确定对当前调度的线程进行裕度校正;
所述第一获取单元,用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
所述第二获取单元,用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
所述第二确定单元,还用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述确定的优先级重新确定优先级队列;
所述调度单元,用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
5.根据权利要求4所述的装置,其特征在于,所述第一确定单元确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
6.根据权利要求4所述的装置,其特征在于,所述第一确定单元确定对所述当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于所述预设的时间,确定对所述当前调度的线程进行裕度校正。
7.一种实时多任务调度装置,其特征在于,所述装置包括处理器;
所述处理器,用于确定对当前调度的线程进行裕度校正;
所述处理器,还用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例;
所述处理器,还用于根据所述当前调度的线程的剩余执行时间以及所述当前调度的线程的截止时间,获取所述当前调度的线程的裕度;
所述处理器,还用于根据所述当前调度的线程的裕度,确定所述线程的优先级,并根据所述线程的优先级重新确定优先级队列;
所述处理器,还用于根据所述重新确定的优先级队列,依次调度所述队列中的线程。
8.根据权利要求7所述的装置,其特征在于,所述处理器确定对当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程的执行进度是否等于预设的任务比例;
若所述当前调度的线程的执行进度等于所述预设的任务比例,确定对所述当前调度的线程进行裕度校正。
9.根据权利要求7所述的装置,其特征在于,所述处理器确定对所述当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于预设的时间,确定对所述当前调度的线程进行裕度校正。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210551909.7A CN103870327A (zh) | 2012-12-18 | 2012-12-18 | 一种实时多任务调度方法和装置 |
EP13864362.2A EP2905702B1 (en) | 2012-12-18 | 2013-11-19 | Real-time multi-task scheduling method and device |
PCT/CN2013/087405 WO2014094516A1 (zh) | 2012-12-18 | 2013-11-19 | 一种实时多任务调度方法和装置 |
US14/730,425 US9990229B2 (en) | 2012-12-18 | 2015-06-04 | Scheduling method and apparatus for applying laxity correction based on task completion proportion and preset time |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210551909.7A CN103870327A (zh) | 2012-12-18 | 2012-12-18 | 一种实时多任务调度方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103870327A true CN103870327A (zh) | 2014-06-18 |
Family
ID=50908892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210551909.7A Pending CN103870327A (zh) | 2012-12-18 | 2012-12-18 | 一种实时多任务调度方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9990229B2 (zh) |
EP (1) | EP2905702B1 (zh) |
CN (1) | CN103870327A (zh) |
WO (1) | WO2014094516A1 (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991816A (zh) * | 2015-06-25 | 2015-10-21 | 浪潮(北京)电子信息产业有限公司 | 一种进程调度方法及装置 |
CN106354552A (zh) * | 2015-07-17 | 2017-01-25 | 宁波森浦融讯科技有限公司 | 并行计算任务分配方法和装置 |
CN107577523A (zh) * | 2017-07-31 | 2018-01-12 | 阿里巴巴集团控股有限公司 | 一种任务执行的方法及装置 |
CN108292237A (zh) * | 2015-12-18 | 2018-07-17 | 想象技术有限公司 | 控制gpu的操作 |
CN108563494A (zh) * | 2018-04-04 | 2018-09-21 | 吉林省星途科技有限公司 | 一种自适应动态调整的线程调度系统及方法 |
CN110502320A (zh) * | 2018-05-18 | 2019-11-26 | 杭州海康威视数字技术股份有限公司 | 线程优先级调整方法、装置、电子设备及存储介质 |
CN110955502A (zh) * | 2018-09-27 | 2020-04-03 | 北京国双科技有限公司 | 一种任务调度方法及装置 |
CN111240817A (zh) * | 2020-01-06 | 2020-06-05 | 北京小米移动软件有限公司 | 资源调度方法、资源调度装置及存储介质 |
WO2021208627A1 (zh) * | 2020-04-13 | 2021-10-21 | 荣耀终端有限公司 | 一种任务调度方法、装置及电子设备 |
CN113975815A (zh) * | 2021-11-04 | 2022-01-28 | 上海鱼尔网络科技有限公司 | 任务转移方法、系统、装置、设备、存储介质和程序产品 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160210174A1 (en) * | 2015-01-15 | 2016-07-21 | Microsoft Corporation | Hybrid Scheduler and Power Manager |
KR102079499B1 (ko) * | 2015-10-20 | 2020-02-21 | 엘에스산전 주식회사 | Plc 위치 결정 시스템의 축별 제어주기 독립 할당 방법 |
US10223179B2 (en) | 2016-05-17 | 2019-03-05 | International Business Machines Corporation | Timeout processing for messages |
US10528376B2 (en) | 2017-04-20 | 2020-01-07 | International Business Machines Corporation | Virtual machine management |
CN109408210B (zh) * | 2018-09-27 | 2021-01-05 | 北京车和家信息技术有限公司 | 分布式定时任务管理方法及系统 |
US20200167191A1 (en) * | 2018-11-26 | 2020-05-28 | Advanced Micro Devices, Inc. | Laxity-aware, dynamic priority variation at a processor |
CN109726992B (zh) * | 2018-12-29 | 2021-05-18 | 北京百度网讯科技有限公司 | 任务完成时间的评估方法及装置 |
CN112214291A (zh) * | 2019-07-12 | 2021-01-12 | 杭州海康汽车技术有限公司 | 一种任务调度方法及装置 |
CN112016812B (zh) * | 2020-08-06 | 2022-07-12 | 中南大学 | 多无人机任务调度方法、系统及存储介质 |
US20220164235A1 (en) * | 2020-11-20 | 2022-05-26 | Okta, Inc. | Server-Based Workflow Management Using Priorities |
CN116670650A (zh) * | 2020-12-30 | 2023-08-29 | 华为技术有限公司 | 事件处理方法和装置 |
CN116521351B (zh) * | 2023-07-03 | 2023-09-05 | 建信金融科技有限责任公司 | 多线程任务调度方法、装置、存储介质及处理器 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021425A (en) * | 1992-04-03 | 2000-02-01 | International Business Machines Corporation | System and method for optimizing dispatch latency of tasks in a data processing system |
US5623413A (en) * | 1994-09-01 | 1997-04-22 | Harris Corporation | Scheduling system and method |
US5636124A (en) | 1995-03-08 | 1997-06-03 | Allen-Bradley Company, Inc. | Multitasking industrial controller |
US5901296A (en) * | 1996-12-06 | 1999-05-04 | International Business Machines Corporation | Distributed scheduling for the transfer of real time, loss sensitive and non-real time data over a bus |
US6411982B2 (en) * | 1998-05-28 | 2002-06-25 | Hewlett-Packard Company | Thread based governor for time scheduled process execution |
US6434443B1 (en) * | 1999-05-17 | 2002-08-13 | Taiwan Semiconductor Manufacturing Company | Method for performing dynamic re-scheduling of fabrication plant |
US6553415B1 (en) * | 1999-12-23 | 2003-04-22 | Intel Corporation | System for rescheduling cascaded callback functions to complete an asynchronous physical layer initialization process |
US7302685B2 (en) * | 2000-06-02 | 2007-11-27 | Honeywell International Inc. | Methods and apparatus for sharing slack in a time-partitioned system |
CN1316361C (zh) * | 2000-06-27 | 2007-05-16 | 皇家菲利浦电子有限公司 | 确定一个进度表的方法、调度器和系统 |
US7093256B2 (en) * | 2002-12-13 | 2006-08-15 | Equator Technologies, Inc. | Method and apparatus for scheduling real-time and non-real-time access to a shared resource |
US7197577B2 (en) * | 2003-12-12 | 2007-03-27 | International Business Machines Corporation | Autonomic input/output scheduler selector |
US7904192B2 (en) * | 2004-01-14 | 2011-03-08 | Agency For Science, Technology And Research | Finite capacity scheduling using job prioritization and machine selection |
US7793294B2 (en) * | 2005-02-22 | 2010-09-07 | Northrop Grumman Corporation | System for scheduling tasks within an available schedule time period based on an earliest possible end time of the task |
US8156500B2 (en) * | 2005-07-01 | 2012-04-10 | Microsoft Corporation | Real-time self tuning of planned actions in a distributed environment |
US7734833B2 (en) * | 2005-09-08 | 2010-06-08 | International Business Machines Corporation | Method for scheduling operations called by a task on a real-time or non-real time processor |
GB0519981D0 (en) * | 2005-09-30 | 2005-11-09 | Ignios Ltd | Scheduling in a multicore architecture |
US20070143761A1 (en) * | 2005-12-15 | 2007-06-21 | Yong Deng | Task scheduler system and method for managing tasks in an embedded system without a real time operating system |
US20070168861A1 (en) * | 2006-01-17 | 2007-07-19 | Bell Denise A | Method for indicating completion status of user initiated and system created tasks |
US8468532B2 (en) * | 2006-06-21 | 2013-06-18 | International Business Machines Corporation | Adjusting CPU time allocated to next thread based on gathered data in heterogeneous processor system having plurality of different instruction set architectures |
CN101127061B (zh) | 2006-08-16 | 2010-05-26 | 珠海金山软件股份有限公司 | 可进度预估的防治计算机病毒的装置及进度预估的方法 |
FR2923039A1 (fr) * | 2007-10-24 | 2009-05-01 | Centre Nat Rech Scient | Procede de gestion des preemptions dans un systeme d'exploitation en temps reel |
CN100593146C (zh) | 2007-11-09 | 2010-03-03 | 上海可鲁系统软件有限公司 | 一种防止工业自动化系统雪崩的方法 |
FR2930355B1 (fr) * | 2008-04-18 | 2013-01-18 | Commissariat Energie Atomique | Procede de gestion de la consommation d'energie pour les systemes multiprocesseurs. |
FR2937439B1 (fr) * | 2008-10-17 | 2012-04-20 | Commissariat Energie Atomique | Procede d'execution deterministe et de synchronisation d'un systeme de traitement de l'information comportant plusieurs coeurs de traitement executant des taches systemes. |
US8321558B1 (en) * | 2009-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Dynamically monitoring and modifying distributed execution of programs |
ES2431931T3 (es) * | 2009-05-26 | 2013-11-28 | Telefonaktiebolaget L M Ericsson (Publ) | Planificación de multi-procesadores |
US8635622B2 (en) * | 2009-09-15 | 2014-01-21 | Raytheon Company | Method and system for resource management using fuzzy logic timeline filling |
US9307048B2 (en) * | 2010-12-28 | 2016-04-05 | Microsoft Technology Licensing, Llc | System and method for proactive task scheduling of a copy of outlier task in a computing environment |
US8555281B1 (en) * | 2011-02-16 | 2013-10-08 | Google Inc. | Scheduling of tasks based upon historical execution times |
US8924976B2 (en) * | 2011-08-26 | 2014-12-30 | Knu-Industry Cooperation Foundation | Task scheduling method and apparatus |
US8904397B2 (en) * | 2011-10-31 | 2014-12-02 | International Business Machines Corporation | Staggering execution of scheduled tasks based on behavioral information |
KR101827289B1 (ko) * | 2011-11-08 | 2018-03-23 | 한국전자통신연구원 | 실시간 운영체제에서 태스크 스케줄링 방법 |
US9262216B2 (en) * | 2012-02-14 | 2016-02-16 | Microsoft Technologies Licensing, LLC | Computing cluster with latency control |
US8943505B2 (en) * | 2012-08-24 | 2015-01-27 | National Instruments Corporation | Hardware assisted real-time scheduler using memory monitoring |
FR2997773B1 (fr) * | 2012-11-06 | 2016-02-05 | Centre Nat Rech Scient | Procede d'ordonnancement avec contraintes d'echeance, en particulier sous linux, realise en espace utilisateur. |
-
2012
- 2012-12-18 CN CN201210551909.7A patent/CN103870327A/zh active Pending
-
2013
- 2013-11-19 WO PCT/CN2013/087405 patent/WO2014094516A1/zh active Application Filing
- 2013-11-19 EP EP13864362.2A patent/EP2905702B1/en active Active
-
2015
- 2015-06-04 US US14/730,425 patent/US9990229B2/en active Active
Non-Patent Citations (2)
Title |
---|
张丽娜: "实时系统任务调度的策略与算法研究", 《中国优秀硕士学位论文全文数据库》 * |
王翔: "基于Linux和RTAI的实时操作系统的研究与改进", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991816A (zh) * | 2015-06-25 | 2015-10-21 | 浪潮(北京)电子信息产业有限公司 | 一种进程调度方法及装置 |
CN106354552B (zh) * | 2015-07-17 | 2019-08-06 | 宁波森浦融讯科技有限公司 | 并行计算任务分配方法和装置 |
CN106354552A (zh) * | 2015-07-17 | 2017-01-25 | 宁波森浦融讯科技有限公司 | 并行计算任务分配方法和装置 |
CN108292237A (zh) * | 2015-12-18 | 2018-07-17 | 想象技术有限公司 | 控制gpu的操作 |
CN107577523B (zh) * | 2017-07-31 | 2021-01-05 | 创新先进技术有限公司 | 一种任务执行的方法及装置 |
CN107577523A (zh) * | 2017-07-31 | 2018-01-12 | 阿里巴巴集团控股有限公司 | 一种任务执行的方法及装置 |
CN108563494A (zh) * | 2018-04-04 | 2018-09-21 | 吉林省星途科技有限公司 | 一种自适应动态调整的线程调度系统及方法 |
CN110502320A (zh) * | 2018-05-18 | 2019-11-26 | 杭州海康威视数字技术股份有限公司 | 线程优先级调整方法、装置、电子设备及存储介质 |
CN110955502A (zh) * | 2018-09-27 | 2020-04-03 | 北京国双科技有限公司 | 一种任务调度方法及装置 |
CN110955502B (zh) * | 2018-09-27 | 2022-07-05 | 北京国双科技有限公司 | 一种任务调度方法及装置 |
CN111240817A (zh) * | 2020-01-06 | 2020-06-05 | 北京小米移动软件有限公司 | 资源调度方法、资源调度装置及存储介质 |
CN111240817B (zh) * | 2020-01-06 | 2024-04-09 | 北京小米移动软件有限公司 | 资源调度方法、资源调度装置及存储介质 |
WO2021208627A1 (zh) * | 2020-04-13 | 2021-10-21 | 荣耀终端有限公司 | 一种任务调度方法、装置及电子设备 |
CN113975815A (zh) * | 2021-11-04 | 2022-01-28 | 上海鱼尔网络科技有限公司 | 任务转移方法、系统、装置、设备、存储介质和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
US9990229B2 (en) | 2018-06-05 |
EP2905702B1 (en) | 2017-10-04 |
US20150268996A1 (en) | 2015-09-24 |
WO2014094516A1 (zh) | 2014-06-26 |
EP2905702A1 (en) | 2015-08-12 |
EP2905702A4 (en) | 2016-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103870327A (zh) | 一种实时多任务调度方法和装置 | |
US7793294B2 (en) | System for scheduling tasks within an available schedule time period based on an earliest possible end time of the task | |
EP2666083B1 (en) | Integrated environment for execution monitoring and profiling of applications running on multi-processor system-on-chip | |
Yalcinkaya et al. | An exact schedulability test for non-preemptive self-suspending real-time tasks | |
CN101989225A (zh) | 基于断点的自动化测试方法及装置 | |
CN102990670A (zh) | 机器人控制装置、机器人系统、机器人控制方法 | |
CN106844043A (zh) | 集群任务的处理方法和装置 | |
CN112214289A (zh) | 一种任务调度方法、装置及服务器、存储介质 | |
CN106155730A (zh) | 操作系统加载方法及装置 | |
US9274831B2 (en) | Information processing apparatus, information processing method, and storage medium | |
CN114217966A (zh) | 基于资源调整的深度学习模型动态批处理调度方法和系统 | |
CN103744730A (zh) | 一种任务调度方法和装置 | |
CN111158875B (zh) | 基于多模块的多任务处理方法、装置及系统 | |
US20130104141A1 (en) | Divided central data processing, | |
US10275015B2 (en) | Power source control method, power source control apparatus, and storage medium | |
CN102193884B (zh) | 数据传送电路和方法 | |
CN114358577A (zh) | 订单信息处理方法和装置 | |
CN107562529A (zh) | 一种业务系统中定时任务的实现方法及装置 | |
JP6753521B2 (ja) | 計算資源管理装置、計算資源管理方法、及びプログラム | |
CN113298445A (zh) | 一种模型训练和调度无人设备的方法及装置 | |
US9003274B2 (en) | Scheduling start-up and shut-down of mainframe applications using topographical relationships | |
KR20190118521A (ko) | 분산형 소프트웨어 컴포넌트들 간의 통신에서 오류 처리를 위한 방법 및 장치 | |
Yip et al. | Lightweight Semantics-Preserving Communication for Real-Time Automotive Software | |
JP2009098972A (ja) | 割り込み制御方法、および割り込みシステム | |
CN109542616A (zh) | 一种教育系统的多节点间数据计算的调度方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140618 |