The present invention provides a method of multi task real-time operation of an embedded system, including priority setting: all the priority of the task set to the same level; in any task completed, immediately take the initiative to release CPU and stack space, enter a dormant state, keeping free stack space; task switching: tasks arranged in a stack order in memory, any tasks needed to perform other tasks, the stack space is removed to spare the tasks around the new spare space and to perform the task stack stack space into one, and perform tasks; task execution immediately after active release of CPU and the stack space, enter a dormant state. This method only needs to move the limited stack space up or down according to the situation, so that the stack of the empty stack and the task to be executed can be connected to one piece, which greatly improves the response speed when the task is switched.
【技术实现步骤摘要】
一种嵌入式系统的多任务实时操作方法
本专利技术属于计算机领域,特别涉及一种嵌入式系统的多任务实时操作方法。
技术介绍
虽然现在电子产品发展很快,很多CPU都已经是32位架构了。但是,由于51系列单片机(MCU)具有悠久的历史、庞大的工程师群体、成熟的开发环境、丰富的资源积累、低廉的价格、稳定的性能等因素,还是有很多的产品开发是在基于51系列MCU上进行的。现在对于新产品推出的速度要求很高,项目开发往往都是模块化设计。采用稳定的操作系统和库文件(或经过检验的成熟程序文件)结合,加上产品自己的个性要求,就可以很快实现产品系统软件的设计。针对这种情况,近几年涌现出许多基于51内核的实时操作系统,比如:μC/OS-II、KeilC自带的RTXFULL、RTXTiny等。但是,这些系统都是基于优先级的抢占式多任务实时操作系统。我们知道51系列MCU内存堆栈空间很小,最多只能到达256字节,所以,这些基于优先级的抢占式多任务实时操作系统运行在256字节内存的系统上,必然会频繁地搬移内存。为了实现并凸显实时性,一般思路肯定都是采用抢占式,就是说一个高优先级的任务来了,不管低优先 ...
【技术保护点】
一种嵌入式系统的多任务实时操作方法,其特征在于:(1)优先级设置:将所有任务的优先级设置为同一级别;任何任务在完成后,立即主动释放出CPU和堆栈空间,进入休眠状态,保证留有空余堆栈空间;(2)任务切换:任务占用堆栈在内存中按序排列,任何任务需要执行时,将该任务附近的其他任务搬移至空余堆栈空间内,使新的空余堆栈空间与待执行任务的堆栈空间连成一片,并执行任务;任务执行完后,立即主动释放出CPU和堆栈空间,进入休眠状态。
【技术特征摘要】
1.一种嵌入式系统的多任务实时操作方法,其特征在于:(1)优先级设置:将所有任务的优先级设置为同一级别;任何任务在完成后,立即主动释放出CPU和堆栈空间,进入休眠状态,保证留有空余堆栈空间;(2)任务切换:任务占用堆栈在内存中按序排列,任何任务需要执行时,将该任务附近的其他任务搬移至空余堆栈空间内,使新的空余堆栈空间与待执行任务的堆栈空间连成一片,并执行任务;任务执行完后,立即主动释放出CPU和堆栈空间,进入休眠状态。2.根据权利要求1所述的一种嵌入式系统的多任务实时操作方法,其特征在于:步骤(1)中,任务在主流程中主动释放后仅占用2字节堆栈空间,任务主流程的一级子程序释放后占用4字节,每加深一次调用层级释放多占用2个字节的堆栈;任务尽可能在主流程中主动释放资源,从而保证在一个多至16个线程的系统都能直接运行在内部256字节的堆栈中。3.根据权利要求1所述的一种嵌入...
【专利技术属性】
技术研发人员:马宏坤,赵渭忠,何雪,
申请(专利权)人:南京中探海洋物联网有限公司,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。