[发明专利]多任务调度方法、电子装置和计算机存储介质在审
申请号: | 202011246810.7 | 申请日: | 2020-11-10 |
公开(公告)号: | CN112416546A | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 曾凌霄;叶菲;周华 | 申请(专利权)人: | 光华临港工程应用技术研发(上海)有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F9/54 |
代理公司: | 北京磐华捷成知识产权代理有限公司 11851 | 代理人: | 翟海青 |
地址: | 201306 上海市浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 调度 方法 电子 装置 计算机 存储 介质 | ||
1.一种嵌入式系统的多任务调度方法,其特征在于,所述多任务调度方法包括:
任务调度内核初始化:至少包括定义挂起队列、定义就绪队列、设置系统时钟、配置任务计时器;
创建任务:在创建任务的过程中至少指定任务的优先级和响应时间,并指定任务的函数指针;
任务调度:根据调度策略,选择将要运行的就绪任务分配系统资源;
任务删除:在所述挂起队列中查找已运行的任务,并将已运行的任务删除。
2.如权利要求1所述的所述多任务调度方法,其特征在于,在所述挂起队列中查找已运行的任务,并将已运行的任务删除,包括:
在所述挂起队列中查找已运行的任务,并将已运行的任务对应的函数指针置空,以删除任务。
3.如权利要求1所述的所述多任务调度方法,其特征在于,所述任务调度包括以下步骤:
保护现场:关闭中断,并保存当前运行的任务的上下文信息至该任务对应的控制块中;
运行任务:检查所述就绪队列中是否有就绪任务,其中,当有就绪任务时,通过调度算法取出所述就绪队列中的就绪任务,并调用任务运行函数将从所述就绪队列中取出的就绪任务设置为运行状态;
恢复现场:关闭中断,并调取所述上下文信息恢复现场,之后打开中断。
4.如权利要求3所述的所述多任务调度方法,其特征在于,所述调度算法包括:
当所述就绪队列中有等待时间超过允许等待时间的任务,则运行该任务;
当所述就绪队列中有优先级高的任务时则按照轮转法确定下一个就绪的优先级任务,当所述就绪队列中没有优先级高的任务时,则在相同优先级的队列中选择就绪任务。
5.如权利要求3所述的所述多任务调度方法,其特征在于,所述上下文信息包括以下信息中的一种或多种:当前各个寄存器的数据信息、堆伐、程序指针。
6.如权利要求5所述的所述多任务调度方法,其特征在于,调取所述上下文信息恢复现场,包括:
用保存在所述控制块中的所述上下文信息设置堆栈、程序指针和寄存器。
7.如权利要求1所述的所述多任务调度方法,其特征在于,所述任务调度内核初始化,还包括以下步骤:
创建主任务和至少一个空闲任务,其中,所述就绪队列配置为保证至少有一个任务正在运行,当没有任务准备就绪时,则将运行内部的空闲任务。
8.如权利要求1至7任一项所述的所述多任务调度方法,其特征在于,所述方法用于MIPS架构芯片、ARM芯片或STM32芯片。
9.一种电子装置,其特征在于,所述电子装置包括:
存储器,用于存储可执行的程序指令;
处理器,用于执行所述存储器中存储的所述程序指令,使得所述处理器执行如权利要求1至8任一项所述的多任务调度方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现1至8任一项所述的多任务调度方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于光华临港工程应用技术研发(上海)有限公司,未经光华临港工程应用技术研发(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011246810.7/1.html,转载请声明来源钻瓜专利网。