ucos-ii内核架构解析

ucos-ii内核架构解析

ID:22584164

大小:827.17 KB

页数:33页

时间:2018-10-30

ucos-ii内核架构解析_第1页
ucos-ii内核架构解析_第2页
ucos-ii内核架构解析_第3页
ucos-ii内核架构解析_第4页
ucos-ii内核架构解析_第5页
资源描述:

《ucos-ii内核架构解析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、目录RTOS31.嵌入式系统基本模型32.RTOS设计原则33.GPOS与RTOS34.嵌入式开发模式45.(不)口J•重入46.互斥条件47.临界状态4uC/OS-II基本介绍51.uc/os-n文件结构52.uC/OS-II组成部分53.uC/OS-II任务状态6uC/OS-II系统核心61.uC/OS-II任务调度6(1)uC/OS-II调度算法6(2)任务就绪表7(3)任务级任务调度7(4)中断级任务调度8(5)调度器上锁与解锁9(6)屮断管理函数9(7)中断相关问题102.uc/os-n系统启动io(1)初始化函数osinito10(2)启动函数OSStart()11(3)统计任

2、务OSTaskStat123.uC/OS-II系统时钟124.uC/OS-II事件管理12(1)事件控制块12(2)ECB管理机制13(3)ECB管理函数13uC/OS-II任务管理131.C可执行代码结构132.任务结构143.任务栈141.任务控制块14(1)TCB描述14(1)TCB主要成员14(2)TCB全局变量141.任务状态切换152.任务管理函数15uC/OS-II通信与同步161.消息邮箱Mbox162.消息队歹!jmsgQ16(1)msgQ基本内容16(2)msgQ全局变量17(3)msgQ管理函数17(4)msgQ几个问题183.信号量Sem184.互斥锁Mutex19

3、(1)Mutex基本原理19(2)提升/恢复优先级19(3)Mutex管理函数195.事件组标志Flag20(1)Flag基本原理20(2)Flag数据结构20(3)Flag管理函数216.Task就绪状态判断???22uC/OS-II内存管理231.memPart基本原理232.memPart管理函数233.memPart几个f司题24uC/OS-II应用开发241.开发步骤242.编写任务函数243.堆栈设计扩展25错误!未定义书签。错误!未定义书签。错误!未定义书签。错误!未定义书签。4.一些借鉴经验25uC/OS-II内核移植1.uC/OS-II正常运行的条件2.运行态代码分布3.

4、移植的几个问题嵌入式RTOS1.嵌入式系统基本模型应川fV序K(Application)FS义件系统W形界曲GUI系统脊现接口实时操作系统内核系统(RTOS)板级i持包(BSP)

5、~~——酣硬件层2.RTOS设计原则采用各种算法和策略,始终保持系统行为的可预测性。即在任何情况K,在系统运行的任何时刻,OS的资源配置策略都能为争夺资源(包括CPU、内存、网络带宽等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。3.GPOS与RTOS>GPOS:注重每次执行的平均响应时间,而不是某次特定执行的响应时间。>RTOS:除满足应用功能需求外,还要满足实时性要求,始终保证系统行

6、为的可预测性(predictability)o与GPOS不同,RTOS注重的不是系统的平均表现,而是要满足每个实时任务在最坏情况下的实时性耍求。也就是说,RTOS注重的是个体表现,更准确地说是个体最坏情况表现。RTOS与GPOS的差别主要表现在:a)任务调度策略不同;b)内存管理方式不同;c)屮断处理方式不同;d)系统管理方式不同;1.嵌入式开发模式>单片机系统的前后台程序:不使用OS,将应用程序设计成死循环,系统轮流处理各事件,对时间响应要求高的异步事件采用屮断进行处理。>基于任务(进程)的软件设计方法:使用OS,由OS管理硬件资源,任务只是在需耍资源时申请即可,至于when/which

7、,完全由OS决定。2.(不)可重入(1)可重入函数:指函数代码在运行过程中可以被中断,中断返回后仍能够恢复到原来的状态,并能准确无误执行的函数。可重入函数可以被一个以上的任务调用,而不必担心数据被破坏。可重入函数或者只使用局部变量,即变量保存在CPU寄存器或堆栈屮;或者使用全局变量,则要对全局变量予以保护。(2)不可重入函数:函数在运行过程中不可以被中断。3.互斥条件实现任务间通信最简便的办法是使用共享数据,但要保证任务在处理共享数据时的排它性。使共享资源满足互斥条件,最一般的方法有:(1)关屮断使用某种实吋内核,一般情况下关中断的吋间最长不超过内核本身的关中断时间,这样就不会影响系统中断

8、延迟。(2)使用测试并罝位指令Test&Set操作可能是微处理器一条不会被中断的指令,否则应该在程序屮关屮断做TAS操作再开中断。(3)禁止做任务切换此时任务切换虽然是禁止的,但仍允许中断。如果这时中断来了,ISR会在这一临界区内立即执行。(4)利用信号量;4.临界状态临界状态指当前程序处于不可中断状态。一般情况下,在调用不可重入函数前或在修改全局变量数据时,都需要先进入临界状态。进入临界状态的主要操作是关闭所有可以屏蔽

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。