[发明专利]一种任务调度方法和装置有效
申请号: | 201410039719.6 | 申请日: | 2014-01-27 |
公开(公告)号: | CN103744730B | 公开(公告)日: | 2017-01-11 |
发明(设计)人: | 马文金 | 申请(专利权)人: | 北京京东尚科信息技术有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京德琦知识产权代理有限公司11018 | 代理人: | 牛峥,王丽琴 |
地址: | 100080 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 调度 方法 装置 | ||
技术领域
本发明涉及计算机技术,特别涉及一种任务调度方法和装置。
背景技术
任务调度是操作系统的重要组成部分,而对于实时操作系统,任务调度直接影响其实时性能。在计算机系统及各种软件系统中,存在各种各样的任务调度场景。其中,在任务调度过程中,有很多是基于时间调度的场景,在这些场景中,需要实现在特定时间点或者时间间隔内运行任务程序的功能。
如图1所示,现有的一种任务调度的过程包括:
1)、在当前时间周期或者在当前特定时间点,任务调度程序扫描任务列表,之后进入步骤2);
2)、在任务列表中选择需要执行的任务,之后进入步骤3);
3)、启动执行所选择的任务,之后进入步骤4);
4)、计算下一次启动调度程序的时间,之后进入步骤5);
5)、到达下一时间周期或者到达下一特定时间点时,进入步骤1)。
基于上述调度过程,一般可采用Java的Timer或者采用ScheduledExecutor在计算机中实现上述任务调度。
但是,上述方案在进行任务调度过程中尚存在很多不足,例如:
其一,现有调度方案在使用Java的调度组件实现任务调度时,只能进行任务的串行执行,不能进行任务的并行执行,进而使得任务调度过程效率低下;
其二,现有调度方案中,每一次调度的执行必须重新扫描任务列表,在任务数量比较多的情况下,需要长时间进行调度列表扫描,同样使得任务调度过程效率低下;
其三,现有调度方案无法查看任意时刻需要执行的任务信息,无法实现任务执行的透明化管理。
因此,现有的调度方案尚有进一步改进之处。
发明内容
有鉴于此,本发明提供一种任务调度方法和装置,以提高效率,并实现任务调度的透明化管理。
本申请的技术方案是这样实现的:
一种任务调度方法,包括:
建立单位周期中每一时刻所对应的任务列表,所述任务列表包括至少0条任务记录,所述任务记录中含有任务周期标识;
在每一单位周期的每一时刻均执行如下任务调度操作:
扫描当前时刻所对应的任务列表;
取出当前扫描到的任务记录,并将该任务记录的任务周期标识减1;
若减1后的任务周期标识大于0,则将该任务记录放回当前时刻所对应的任务列表;
若减1后的任务周期标识等于0,则执行该条任务记录所指定的任务,并确定下一次执行该任务的时刻以及初始任务周期标识,并将该条任务记录以及相应的初始任务周期标识加入到下一次执行该任务的时刻所对应的任务列表中。
进一步,所述单位周期为24小时,相邻时刻之间相差1秒,所述单位周期中共有86400个时刻,每一时刻对应一个任务列表,共有86400个任务列表。
进一步,在当前单位周期结束后,随即进入下一单位周期,并重新执行所述任务调度操作。
进一步,所述的确定下一次执行该任务的时刻以及初始任务周期标识,包括:
当前时刻与该任务的执行周期之和除以单位周期之后所取的余数,作为下一次执行该任务的时刻;该任务的执行周期除以单位周期的结果向上取整,作为该任务的初始任务周期标识。
一种任务调度装置,包括:
任务列表模块,用于保存并提供单位周期中每一时刻所对应的任务列表,所述任务列表包括至少0条任务记录,所述任务记录中含有任务周期标识;
任务调度模块,用于在每一单位周期的每一时刻均执行任务调度操作:
扫描所述任务列表模块中当前时刻所对应的任务列表,从当前时刻所对应的任务列表中取出当前扫描到的任务记录,将该任务记录的任务周期标识减1,并判断减1后的任务周期标识是否大于0;若减1后的任务周期标识大于0,则所述任务调度模块将该任务记录放回当前时刻所对应的任务列表;若减1后的任务周期标识等于0,则所述任务调度模块执行该条任务记录所指定的任务,并确定下一次执行该任务的时刻以及初始任务周期标识,并将该条任务记录以及相应的初始任务周期标识加入到下一次执行该任务的时刻所对应的任务列表中。
进一步,所述单位周期为24小时,相邻时刻之间相差1秒,所述单位周期中共有86400个时刻,每一时刻对应一个任务列表;所述任务列表模块共保存86400个任务列表。
进一步,在当前单位周期结束后,随即进入下一单位周期,所述任务调度模块在下一单位周期重新执行所述任务调度操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司,未经北京京东尚科信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410039719.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息处理方法及电子设备
- 下一篇:一种带式输送机纵向撕裂检测方法