[发明专利]一种面向复杂任务集的任务调度系统及方法在审
| 申请号: | 202011207054.7 | 申请日: | 2020-11-03 |
| 公开(公告)号: | CN112445591A | 公开(公告)日: | 2021-03-05 |
| 发明(设计)人: | 高阳;文海;盛德卫 | 申请(专利权)人: | 北京电子工程总体研究所 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
| 代理公司: | 北京正理专利代理有限公司 11257 | 代理人: | 付生辉 |
| 地址: | 100854*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 面向 复杂 任务 调度 系统 方法 | ||
1.一种面向复杂任务集的任务调度系统,其特征在于,包括:显控软件和CPU处理器,
其中,
显控软件包括任务采集单元、优先级计算单元和调度单元;
任务采集单元对显控软件中所有任务的当前状态进行采集,包括任务周期、相对截止期、剩余执行时间和系统时间片;
优先级计算单元根据任务采集单元获取的任务当前状态更新所有任务的动态优先级,然后对任务就绪队列进行排序;
调度单元用于调度任务就绪队列中具有最高优先级的任务;
CPU处理器执行调度单元调度的任务。
2.一种利用权利要求1所述系统进行任务调度的方法,其特征在于,包括:
判断任务为硬实时周期任务还是软实时周期任务,如果为硬实时周期任务,则根据剩余空闲时间、相对截止期和系统时间片三方面因素计算第一优先级,如果为软实时周期任务,则根据任务周期、剩余空闲时间和系统时间片三方面因素计算第一优先级;
任务采集单元对显控软件中所有任务的当前状态进行采集,包括任务周期、相对截止期、剩余执行时间和系统时间片;
优先级计算单元根据任务采集单元获取的任务当前状态更新所有任务的动态优先级,然后对任务就绪队列进行排序;
调度单元选取任务就绪队列中具有最高第一优先级的任务,同时优先级计算单元计算该任务的第二优先级,即抢占阈值;
CPU处理器执行调度单元调度的任务;
当新任务来临或者当前系统时间片执行完毕时,优先级计算单元重新计算并更新所有任务的第一优先级,若存在某个任务的第一优先级高于当前执行任务的第一、二优先级,则抢占当前任务开始执行,否则当前任务继续执行。
3.根据权利要求2所述的方法,其特征在于,所述硬实时周期任务的第一优先级的计算方法使用如下公式计算:
PHi=Pinit+(di-t-eri+Di)/n/tslot*Prange
其中,Pinit表示硬实时周期任务的初始优先级,di-t-eri表示任务的剩余空闲时间,Di表示任务的相对截止期,n为调控因子,tslot为系统时间片,Prange为优先级变化范围。
4.根据权利要求2所述的方法,其特征在于,所述软实时周期任务的第一优先级的计算方法使用如下公式计算:
PSi=Pinit+(di-t-eri+Ti)/n/tslot*Prange
其中,Pinit表示软实时周期任务的初始优先级,di-t-eri表示任务的剩余空闲时间,Ti表示任务周期,n为调控因子,tslot为系统时间片,Prange为优先级变化范围。
5.根据权利要求2所述的方法,其特征在于,所述第二优先级的计算方法如下式所示:
其中,Pinit表示用户应用程序的最高级,Prange表示优先级的取值范围,取值7,Li表示任务当前的剩余空闲时间,Lmax表示剩余空闲时间的最大值,可以表示为任务的相对截止期与任务执行时间之差,即Lmax=Di-ei,u为临界参数,取值Lmax/4。
6.根据权利要求5所述的方法,其特征在于,当剩余空闲时间在[0,u]范围内时,认为当前任务剩余空闲时间较小,设置当前任务的抢占阈值为最高优先级,禁止其他任务抢占该任务;当剩余空闲时间较大时,通过剩余空闲时间所占的比例动态计算抢占阈值。
7.根据权利要求2所述的方法,其特征在于,所述显控软件中任务就绪队列采用单链表结构,遵循先入先出原则,链表结点使用结构体存储结构,用来存储任务信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京电子工程总体研究所,未经北京电子工程总体研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011207054.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:定位数据的传输方法、设备、存储介质及装置
- 下一篇:一种废旧电机分拣装置





