[发明专利]一种嵌入式系统的多任务实时操作方法在审
申请号: | 201710814934.2 | 申请日: | 2017-09-12 |
公开(公告)号: | CN107608775A | 公开(公告)日: | 2018-01-19 |
发明(设计)人: | 马宏坤;赵渭忠;何雪 | 申请(专利权)人: | 南京中探海洋物联网有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 南京苏创专利代理事务所(普通合伙)32273 | 代理人: | 沈振涛 |
地址: | 210000 江苏省南京市栖霞区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 系统 任务 实时 操作方法 | ||
1.一种嵌入式系统的多任务实时操作方法,其特征在于:
(1)优先级设置:将所有任务的优先级设置为同一级别;任何任务在完成后,立即主动释放出CPU和堆栈空间,进入休眠状态,保证留有空余堆栈空间;
(2)任务切换:任务占用堆栈在内存中按序排列,任何任务需要执行时,将该任务附近的其他任务搬移至空余堆栈空间内,使新的空余堆栈空间与待执行任务的堆栈空间连成一片,并执行任务;任务执行完后,立即主动释放出CPU和堆栈空间,进入休眠状态。
2.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(1)中,任务在主流程中主动释放后仅占用2字节堆栈空间,任务主流程的一级子程序释放后占用4字节,每加深一次调用层级释放多占用2个字节的堆栈;任务尽可能在主流程中主动释放资源,从而保证在一个多至16个线程的系统都能直接运行在内部256字节的堆栈中。
3.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(1)中,任务进入休眠时,设置为:(1)休眠一定时间再次激活;或者(2)等待唤醒信号再次激活;或者(3)休眠一定时间或等待唤醒信号满足其一再次激活;或者(4)休眠时间为0,仅仅把CPU的资源交出去给其他所有待执行的任务依次执行一遍再取回CPU资源执行,若没有其他任何任务需要执行则立即拿回CPU使用权继续执行。
4.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(1)中,需要占用较多CPU资源的任务或者重要任务,分配较少的休眠时间或者分配0休眠时间。
5.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(2)中,同时有几个任务都需要执行时,按既定顺序依次切换运行。
6.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(2)中,在中断中依据需要主动唤醒特定任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京中探海洋物联网有限公司,未经南京中探海洋物联网有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710814934.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种任务调度方法、装置、设备及存储介质
- 下一篇:面部信息预览方法及相关产品