CN103870327A - 一种实时多任务调度方法和装置 - Google Patents

一种实时多任务调度方法和装置 Download PDF

Info

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
Application number
CN201210551909.7A
Other languages
English (en)
Inventor
范东睿
叶笑春
王达
张�浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
Original Assignee
Huawei Technologies Co Ltd
Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd, Institute of Computing Technology of CAS filed Critical Huawei Technologies Co Ltd
Priority to CN201210551909.7A priority Critical patent/CN103870327A/zh
Priority to EP13864362.2A priority patent/EP2905702B1/en
Priority to PCT/CN2013/087405 priority patent/WO2014094516A1/zh
Publication of CN103870327A publication Critical patent/CN103870327A/zh
Priority to US14/730,425 priority patent/US9990229B2/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation 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/5038Allocation 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、根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间。
其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
这里假设所述当前调度的线程已经执行的时间为a,所述当前调度的线程的执行进度为b%,所述当前调度的线程的剩余执行时间为X,则
Figure BDA00002609733500061
获取剩余执行时间
Figure BDA00002609733500062
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、根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间。
其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
这里假设所述当前调度的线程已经执行的时间为a,所述当前调度的线程的执行进度为b%,所述当前调度的线程的剩余执行时间为X,则
Figure BDA00002609733500081
获取剩余执行时间
Figure BDA00002609733500082
需要说明的是,所述当前调度的线程已经执行的时间是该线程执行时间的总和,并非本次调度已经执行的时间。
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,用于根据所述当前调度的线程的执行进度和所述当前调度的线程已经执行的时间,获取所述当前调度的线程的剩余执行时间,其中,所述执行进度为所述当前调度的线程已经完成任务的比例。
这里假设所述当前调度的线程已经执行的时间为a,所述当前调度的线程的执行进度为b%,所述当前调度的线程的剩余执行时间为X,则
Figure BDA00002609733500121
获取剩余执行时间
所述第二获取单元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所述的装置,其特征在于,所述处理器确定对所述当前调度的线程进行裕度校正具体包括:
判断所述当前调度的线程已经执行的时间是否等于预设的时间;
若所述当前调度的线程已经执行的时间等于预设的时间,确定对所述当前调度的线程进行裕度校正。
CN201210551909.7A 2012-12-18 2012-12-18 一种实时多任务调度方法和装置 Pending CN103870327A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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.

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张丽娜: "实时系统任务调度的策略与算法研究", 《中国优秀硕士学位论文全文数据库》 *
王翔: "基于Linux和RTAI的实时操作系统的研究与改进", 《中国优秀硕士学位论文全文数据库》 *

Cited By (14)

* Cited by examiner, † Cited by third party
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