ucos-ii核心算法分析(转)】的更多相关文章

DE1-SOC开发板上搭建NIOS II处理器运行UCOS II   今天在DE1-SOC的开发板上搭建NIOS II软核运行了UCOS II,整个开发过程比较繁琐,稍微有一步做的不对,就会导致整个过程失败.因此特地记录下来,以防日后忘记.   第一步:建立Quartus II工程     建立Quartus II工程时需要注意以下几点 器件选择为EP5CSEMA5F31C6N: 工程路径中不得出现非法字符(空格和中文字符): 开发工具选择Quartus II 13.1及以上,这里我选择的版本为…
源: ucos ii 46个系统API函数解析…
转载:http://www.viewtool.com/bbs/forum.php?mod=viewthread&tid=114 这是两种RTOS, 现在粗略比较一下. freeRTOS比uCOS II优胜的地方:1.内核ROM和耗费RAM都比uCOS 小,特别是RAM. 这在单片机里面是稀缺资源,uCOS至少要5K以上, 而freeOS用2~3K也可以跑的很好. 2.freeRTOS 可以用协程(Co-routine),减少RAM消耗(共用STACK).uCOS只能用任务(TASK,每个任务有一…
      μC/OS II(Micro-Controller Operating System Two)是一个可以基于ROM运行的.可裁剪的.抢占式.实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,适合很多商业操作系统性能相当的实时操作系统(RTOS).为了提供最好的移植性能,μC/OS II最大程度上使用ANSI C语言进行开发,并且已经移植到近40多种处理器体系上,涵盖了从8位到64位各种CPU(包括DSP). μC/OS II可以简单的视为一个多任务调度器,在这个任务调度器…
μC/OS-Ⅱ是一种免费公开源代码.结构小巧.具有可剥夺实时内核的实时操作系统.其 内核提供任务调度与管理.时间管理.任务间同步与通信.内存管理和中断服务等功能.适合小型控制系统,具有执行效率高.占用空间小.实时性能优良和可扩展 性强等特点,最小内核可编译至2KB.μC/OS-Ⅱ为何如此高效呢?我们从它的核心算法——任务调度算法开始分析. 2.1任务调度算法分析 操作系统的实时性主要体现在:当优先级高的任务要求工作时,操作系统要以尽快的时间将此任务调度到CPU执行.这里所花费的时间主要包括两部分…
例子:存储日志,最多存128条,每条最大1MB. 内存方面 因为嵌入式不适合用动态内存,会产生碎片.这里我们用 u8 data[LOG_SIZE];开辟固定128MB的内存区,再对其分为128个1MB内存块进行管理. 管理方法为:使用一个内存控制块结构体MCB,再编写增删改函数操作MCB进行管理. 队列方面我们使用循环队列,比如队列最多10个元素,我们存第11个元素时就会覆盖第一个. 管理方法为:使用一个队列控制块结构体LoopQueue,再编写增删改函数操作LoopQueue进行管理. 内存块…
SOPC开发流程之NIOS II 处理器运行 UC/OS II 这里以在芯航线FPGA学习套件的核心板上搭建 NIOS II 软核并运行 UCOS II操作系统为例介绍SOPC的开发流程. 第一步:建立 Quartus II 工程 建立 Quartus II 工程时需要注意以下几点 1. 器件选择为 EP4CE10F17C8N: 2. 工程路径中不得出现非法字符(空格和中文字符): 3. 开发工具选择 Quartus II 11.0及以上,这里我选择的版本为 Quartus II 15.1. 4…
本文将利用C语言和VHDL语言分别实现DES加密,并在8051和FPGA上测试. 终于有机会阅读<深入浅出密码学一书>,趁此机会深入研究了DES加密的思想与实现.本文将分为两部分,第一部分为简单的C语言实现,第二部分为FPGA实现并在NIOS II核上测试该模块. DES加密的思想 DES加密的由来网络上资料非常了,这里给出wikipedia链接: 维基百科 DES加密主要利用了两个工具 利用替换来实现混淆,如DES加密中的S_box ,即将明文和密文之间存在的关系尽可能模糊. 利用位置换来实…
今天学习了uC/OS II的任务切换,知道要实现任务的切换,要将原先任务的寄存器压入任务堆栈,再将新任务中任务堆栈的寄存器内容弹出到CPU的寄存器,其中的CS.IP寄存器没有出栈和入栈指令,所以只能引发一次中断,自动将CS.IP寄存器压入堆栈,再利用中断返回,将新任务的任务断点指针弹出到CPU的CS.IP寄存器中,实现任务切换.虽然明白个大概,但是其中的细节却有点模糊,为什么调用IRET中断返回指令后,弹入CPU的CS.IP寄存器的断点指针是新任务的断点指针,而不是当前任务的,UCOS II是如…
在嵌入式应用中,使用RTOS的主要原因是为了提高系统的可靠性,其次是提高开发效率.缩短开发周期.uCOS-II是一个占先式实时多任务内核,使用对象是嵌入式系统,对源代码适当裁减,很容易移植到8~32位不同框架的微处理器上.但uCOS-II仅是一个实时内核,它不像其他实时操作系统(如嵌入式Linux)那样提供给用户一些API函数接口.在uCOS-II实时内核下,对外设的访问接口没有统一完善,有很多工作需要用户自己去完成.串口通信是单片机测控系统的重要组成部分,异步串行口是一个比较简单又很具代表性的…