CN101923493A - 一种任务调度方法及任务调度设备 - Google Patents
一种任务调度方法及任务调度设备 Download PDFInfo
- Publication number
- CN101923493A CN101923493A CN201010291978XA CN201010291978A CN101923493A CN 101923493 A CN101923493 A CN 101923493A CN 201010291978X A CN201010291978X A CN 201010291978XA CN 201010291978 A CN201010291978 A CN 201010291978A CN 101923493 A CN101923493 A CN 101923493A
- Authority
- CN
- China
- Prior art keywords
- task
- incident
- scheduling
- presets
- priority
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种任务调度方法,用于提高多任务系统的实时性。本发明实施例方法包括:任务调度设备对环境状态信息进行检测;当达到预置的生成条件时,根据所述环境状态信息生成对应的事件;控制所述生成的事件驱动处于休眠状态的任务,使得所述任务执行所述生成的事件。本发明实施例另外公开了一种任务调度设备。本发明实施例可以提高多任务系统的实时性。
Description
技术领域
本发明涉及计算机应用领域,尤其涉及一种任务调度方法及任务调度设备。
背景技术
在目前的多任务系统中,任务无论有无需要执行的事件,都会主动工作,当发现没有对应的事件发生时,任务进入休眠状态让出CPU给其它任务,当休眠时间结束后,任务主动醒来继续主动工作,依照此过程不断轮询。
但是,现有技术中的方法由于每次任务主动工作都会占用CPU,每个任务只有发现没有需要执行的事件时才会进入休眠状态并让出CPU,造成该任务占用CPU的浪费,而其它需要执行事件的任务也只有等待正在占用CPU却没有执行事件的任务进入休眠状态并让出CPU,那么就会造成多个任务间分配占用CPU不能满足系统的需要,降低了系统的实时性。
发明内容
本发明实施例提供了一种任务调度方法及任务调度设备,用于提高多任务系统的实时性。
本发明实施例提供的任务调度方法,包括:任务调度设备对环境状态信息进行检测;当达到预置的生成条件时,根据环境状态信息生成对应的事件;控制生成的事件驱动处于休眠状态的任务,使得该任务执行生成的事件。
本发明实施例提供的任务调度设备,包括:检测单元,用于对环境状态信息进行检测;生成单元,用于当达到预置的生成条件时,根据环境状态信息生成对应的事件;驱动控制单元,用于控制生成的事件驱动处于休眠状态的任务,使得该任务执行所述生成的事件。
从以上技术方案可以看出,本发明实施例具有以下优点:
由于只有事件发生时,任务才会占用CPU来执行对应的事件,而当没有事件发生时,各任务均处于休眠状态,CPU不会被占用,使得需要执行事件的任务能够及时占用CPU来执行对应的事件,从而能够提高系统的实时性。
附图说明
图1是本发明实施例中任务调度方法一个实施例示意图;
图2是本发明实施例中任务调度方法另一个实施例示意图;
图3是本发明实施例中任务调度设备一个实施例示意图;
图4是本发明实施例中任务调度设备另一个实施例示意图。
具体实施方式
本发明实施例提供了一种任务调度方法及任务调度设备,用于提高多任务系统的实时性。
请参阅图1,本发明实施例中的任务调度方法一个具体实施例包括:
101、检测环境状态信息;
任务调度设备不断地对环境状态信息进行检测,用于判断是否满足生成事件的条件,具体的检测方式此处不作限定。
102、生成环境状态信息对应的事件;
当达到预置的生成条件时,任务调度设备根据环境状态信息生成对应的事件,具体生成事件的过程为现有技术,此处不做限定。
103、控制生成的事件驱动任务。
当生成事件之后,任务调度设备控制生成的事件去完成驱动处于休眠状态的任务,使得该任务能够调度占用CPU来执行该生成的事件。
本发明实施例中,任务调度设备能够根据环境状态信息生成事件,并控制该事件驱动处于休眠状态的任务,也就是说,任务只有在事件的驱动下能够及时占用CPU执行对应的事件,从而避免了没有事件执行的任务主动占用CPU去工作,因此提高了系统的实时性。
为了便于理解,下面以另一个实施例对本发明实施例中的任务调度方法进行描述,具体请参阅图2,本发明方法另一个实施例包括:
201、检测环境状态信息;
任务调度设备不断地对环境状态信息进行检测,用于判断是否满足生成事件的条件,如原始数据缓冲区的大小、RS-232的数字量以及采样芯片对数据的采样等均可以是多任务系统中的环境状态信息。
202、生成环境状态信息对应的事件;
当达到预置的生成条件时,比如,当原始数据缓冲区采集满预置的数据个数,或RS-232的数字量发生变化,或采样芯片采样数据完成后产生中断等,均可确定达到预置的生成条件,任务调度设备根据环境状态信息生成对应的事件,生成事件的个数可以为一个或多个,具体生成事件的过程为现有技术,此处不做限定。
203、获取各事件对应的任务的优先级;
当生成两个以上的事件时,任务调度设备获取各事件对应的任务的优先级,比如,任务调度设备生成了四个事件,分别获取对应的四个任务:数据采集分析任务、数据存储任务、通信任务、人机接口任务,其对应的优先级分别为62、20、19、18。
204、优先控制优先级高的任务对应的事件驱动处于休眠状态的优先级高的任务;
获取各任务的优先级后,任务调度设备优先控制优先级高的任务对应的事件驱动处于休眠状态的优先级高的任务,比如在步骤203中获取了四个任务:数据采集分析任务、数据存储任务、通信任务、人机接口任务,其对应的优先级分别为62、20、19、18,则优先执行数据分析采集任务,其它任务依优先级高低顺序执行。
205、控制完成执行事件的任务进入休眠状态。
当任务占用CPU完成执行事件后,任务调度设备控制该任务进入休眠状态,该任务进入休眠状态后就会让出CPU,以等待下次对应的事件的驱动。
在本发明实施例中,与上述图1的实施例相比,增加了获取事件对应的任务的优先级的过程和控制任务进入休眠状态的过程,因此本发明实施例不仅具有图1的实施例的有益效果,还具有以下有益效果:
由于优先级高的任务优先被驱动执行对应的事件,所以能够最大限度的利用CPU,使得任务间的调度更加合理,另外完成执行事件的任务进入休眠状态让出了CPU,节省了CPU资源。
以上内容对本发明实施例中的任务调度方法进行了描述,下面对任务调度设备进行描述,请参阅图3,本发明实施例的任务调度设备的一个例子包括:
检测单元301,用于对环境状态信息进行检测;
生成单元302,用于当达到预置的生成条件时,根据环境状态信息生成对应的事件;
驱动控制单元303,用于控制生成的事件驱动处于休眠状态的任务,使得任务执行生成的事件。
检测单元301首先对环境状态信息进行检测,当达到预置的生成条件时,由生成单元302根据检测单元301的检测结果生成对应的事件,然后驱动控制单元303控制生成单元302生成的事件驱动处于休眠状态的任务。
本发明实施例中,生成单元302能够根据检测单元301的检测结果生成事件,并由驱动控制单元303控制该事件驱动处于休眠状态的任务,也就是说,任务只有在事件的驱动下能够及时占用CPU执行对应的事件,从而避免了没有事件执行的任务主动占用CPU去工作,因此提高了系统的实时性。
为了便于理解,下面以另一个实施例对本发明实施例中的任务调度设备进行描述,具体请参阅图4,本发明实施例中的任务调度设备另一个实施例包括:
检测单元401,用于对环境状态信息进行检测;
生成单元402,用于当达到预置的生成条件时,根据环境状态信息生成对应的事件;
驱动控制单元403,用于控制生成的事件驱动处于休眠状态的任务,使得任务执行生成的事件,当生成两个以上的事件时,包括:
获取模块4031,用于获取各事件对应的任务的优先级;
顺序驱动模块4032,用于优先控制优先级高的任务对应的事件驱动处于休眠状态的优先级高的任务;
状态控制单元404,用于任务执行生成的事件之后,控制任务进入休眠状态。
检测单元401首先对环境状态信息进行检测,当达到预置的生成条件时,由生成单元402根据检测单元401的检测结果生成对应的事件,然后获取模块4031获取生成单元402生成的各事件的优先级,顺序驱动模块4032根据获取模块4031获取到的各任务的优先级,优先控制优先级高的任务对应的事件驱动对应的任务,状态控制单元404控制执行完成事件的任务进入休眠状态。
在本发明实施例中,与上述图3的实施例相比,增加了获取模块4031和状态控制单元404,因此本发明实施例不仅具有图3的实施例的有益效果,还具有以下有益效果:
由于获取模块4031能够获取到各任务的优先级,顺序驱动模块4032能够控制优先级高的任务优先被驱动执行对应的事件,所以能够最大限度的利用CPU,使得任务间的调度更加合理,状态控制单元404能够控制完成执行事件的任务进入休眠状态让出了CPU,节省了CPU资源。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种任务调度方法及任务调度设备进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种任务调度方法,其特征在于,包括:
任务调度设备对环境状态信息进行检测;
当达到预置的生成条件时,根据所述环境状态信息生成对应的事件;
控制所述生成的事件驱动处于休眠状态的任务,使得所述任务执行所述生成的事件。
2.根据权利要求1所述的任务调度方法,其特征在于,所述任务执行所述生成的事件之后包括:
控制所述任务进入休眠状态。
3.根据权利要求1所述的任务调度方法,其特征在于,所述控制所述生成的事件驱动处于休眠状态的任务包括:
若生成两个以上的事件,则获取各事件对应的任务的优先级;
优先控制优先级高的任务对应的事件驱动处于休眠状态的所述优先级高的任务。
4.根据权利要求1所述的任务调度方法,其特征在于,所述达到预置的生成条件包括:
原始数据缓冲区采集满预置的数据个数,则确定达到预置的生成条件。
5.根据权利要求1所述的任务调度方法,其特征在于,所述达到预置的生成条件包括:
RS-232的数字量发生变化,则确定达到预置的生成条件。
6.根据权利要求1所述的任务调度方法,其特征在于,所述达到预置的生成条件包括:
采样芯片采样数据完成后产生中断,则确定达到预置的生成条件。
7.一种任务调度设备,其特征在于,包括:
检测单元,用于对环境状态信息进行检测;
生成单元,用于当达到预置的生成条件时,根据所述环境状态信息生成对应的事件;
驱动控制单元,用于控制所述生成的事件驱动处于休眠状态的任务,使得所述任务执行所述生成的事件。
8.根据权利要求7所述的任务调度设备,其特征在于,包括:
状态控制单元,用于任务执行所述生成的事件之后,控制所述任务进入休眠状态。
9.根据权利要求7所述的任务调度设备,其特征在于,若生成两个以上的事件,所述驱动控制单元包括:
获取模块,用于获取各事件对应的任务的优先级;
顺序驱动模块,用于优先控制优先级高的任务对应的事件驱动处于休眠状态的所述优先级高的任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010291978XA CN101923493A (zh) | 2010-09-21 | 2010-09-21 | 一种任务调度方法及任务调度设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010291978XA CN101923493A (zh) | 2010-09-21 | 2010-09-21 | 一种任务调度方法及任务调度设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101923493A true CN101923493A (zh) | 2010-12-22 |
Family
ID=43338447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010291978XA Pending CN101923493A (zh) | 2010-09-21 | 2010-09-21 | 一种任务调度方法及任务调度设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101923493A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102650954A (zh) * | 2011-12-13 | 2012-08-29 | 中国航空工业第六一八研究所 | 一种基于实时任务的多次事件驱动多频数据通信方法 |
CN107918561A (zh) * | 2017-11-17 | 2018-04-17 | 东北大学 | 一种工业分布式数据采集系统中的任务分配方法 |
CN108519915A (zh) * | 2018-04-12 | 2018-09-11 | 北京邮电大学 | 流量任务调度方法和装置 |
CN109710391A (zh) * | 2018-12-20 | 2019-05-03 | 西安四叶草信息技术有限公司 | 任务调度方法及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1801101A (zh) * | 2006-01-17 | 2006-07-12 | 浙江大学 | Java操作系统中线程的实现和线程状态切换的方法 |
CN1889682A (zh) * | 2005-06-27 | 2007-01-03 | 技嘉科技股份有限公司 | 一种图像监控系统与监控方法及其图形化操作界面 |
US20070101333A1 (en) * | 2005-10-27 | 2007-05-03 | Mewhinney Greg R | System and method of arbitrating access of threads to shared resources within a data processing system |
CN1996854A (zh) * | 2006-12-22 | 2007-07-11 | 中国建设银行股份有限公司 | 不同应用系统间数据交换的统一处理系统及方法 |
CN101122870A (zh) * | 2007-09-30 | 2008-02-13 | 金蝶软件(中国)有限公司 | 一种线程唤醒控制方法和系统 |
CN101165636A (zh) * | 2006-10-20 | 2008-04-23 | 株式会社电装 | 微型计算机、程序和车载电子控制器 |
CN101719079A (zh) * | 2009-12-17 | 2010-06-02 | 中国电力科学研究院 | 一种处理任务的方法及装置 |
CN101751289A (zh) * | 2008-12-19 | 2010-06-23 | 黄强 | 一种嵌入式实时操作系统的混合调度方法 |
-
2010
- 2010-09-21 CN CN201010291978XA patent/CN101923493A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1889682A (zh) * | 2005-06-27 | 2007-01-03 | 技嘉科技股份有限公司 | 一种图像监控系统与监控方法及其图形化操作界面 |
US20070101333A1 (en) * | 2005-10-27 | 2007-05-03 | Mewhinney Greg R | System and method of arbitrating access of threads to shared resources within a data processing system |
CN1801101A (zh) * | 2006-01-17 | 2006-07-12 | 浙江大学 | Java操作系统中线程的实现和线程状态切换的方法 |
CN101165636A (zh) * | 2006-10-20 | 2008-04-23 | 株式会社电装 | 微型计算机、程序和车载电子控制器 |
CN1996854A (zh) * | 2006-12-22 | 2007-07-11 | 中国建设银行股份有限公司 | 不同应用系统间数据交换的统一处理系统及方法 |
CN101122870A (zh) * | 2007-09-30 | 2008-02-13 | 金蝶软件(中国)有限公司 | 一种线程唤醒控制方法和系统 |
CN101751289A (zh) * | 2008-12-19 | 2010-06-23 | 黄强 | 一种嵌入式实时操作系统的混合调度方法 |
CN101719079A (zh) * | 2009-12-17 | 2010-06-02 | 中国电力科学研究院 | 一种处理任务的方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102650954A (zh) * | 2011-12-13 | 2012-08-29 | 中国航空工业第六一八研究所 | 一种基于实时任务的多次事件驱动多频数据通信方法 |
CN102650954B (zh) * | 2011-12-13 | 2014-12-10 | 中国航空工业第六一八研究所 | 一种基于实时任务的多次事件驱动多频数据通信方法 |
CN107918561A (zh) * | 2017-11-17 | 2018-04-17 | 东北大学 | 一种工业分布式数据采集系统中的任务分配方法 |
CN107918561B (zh) * | 2017-11-17 | 2021-03-26 | 东北大学 | 一种工业分布式数据采集系统中的任务分配方法 |
CN108519915A (zh) * | 2018-04-12 | 2018-09-11 | 北京邮电大学 | 流量任务调度方法和装置 |
CN109710391A (zh) * | 2018-12-20 | 2019-05-03 | 西安四叶草信息技术有限公司 | 任务调度方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102955560B (zh) | 一种应用程序处理方法和装置 | |
CN101441674B (zh) | 基于fpga的动态可重构系统的分片配置方法 | |
CN102096603B (zh) | MapReduce系统中的作业分解控制方法及设备 | |
CN105955876B (zh) | 一种数据监控处理方法以及装置 | |
CN102135906B (zh) | 面向嵌入式实时操作系统的功耗控制方法及系统 | |
CN101923493A (zh) | 一种任务调度方法及任务调度设备 | |
CN102664961A (zh) | MapReduce环境下的异常检测方法 | |
CN103399798A (zh) | Plc的多任务控制方法和装置 | |
CN103473115A (zh) | 虚拟机放置方法和装置 | |
CN103345190A (zh) | 一种基于Android平台的AGV监控系统及方法 | |
JP2011054044A5 (zh) | ||
CN102169390B (zh) | 信息终端及其触摸控制方法 | |
CN103020088A (zh) | 一种数据处理装置及方法 | |
CN109301936B (zh) | 一种基于容器调度架构的智能变电站运维信息监视系统 | |
CN103293967A (zh) | 一种用于智能抄表终端的多任务控制方法 | |
CN107391866B (zh) | 一种基于多处理器的aadl模型的可调度性分析方法 | |
CN102930476B (zh) | 一种针对云制造平台的硬件资源接入方法 | |
CN106874129B (zh) | 一种操作系统进程调度顺序确定方法及控制方法 | |
CN101937393A (zh) | 一种浏览器回归测试的方法及系统 | |
US7003681B2 (en) | Programmable logic controller with an auxiliary processing unit | |
CN109857531A (zh) | 一种车载操作系统中的任务调度系统 | |
CN103955422A (zh) | 一种虚拟化环境中共存应用i/o性能干扰的分析方法及其系统 | |
CN103902268A (zh) | 一种etl流程执行系统及方法 | |
CN102779066A (zh) | 一种减少杀毒软件对测试仪器运行效率影响的方法 | |
CN108399096A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20101222 |