基于S3C2410的uCOS移植课件展示.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业论文,单片机论文,毕业论文设计,毕业过关论文,毕业设计,毕业设计说明,硕士论文,研究生论文,毕业论文,单片机论文,毕业论文设计,毕业过关论文,毕业设计,毕业设计说明,硕士论文,研究生论文,本文档支持完整下载,支持任意编辑!选择我们,选择成功!

基于S3C2410的uC/OS移植 主要内容 基本概念 uC/OS-Ⅱ在S3CEV40上的移植 调试与测试 有关操作系统移植的三个问题 什么情况下需要进行移植操作系统? 什么情况下需要移植实时操作系统? 选择什么样的实时操作系统进行移植? 问题1:操作系统的必要性 为什么需要操作系统 硬件资源的复杂,需要在应用程序与硬件之间提供一个软件层次以简化开发 资源的丰富,需要有专门的资源管理 任务的增加,需要有系统来进行任务的调度 操作系统的功能 设备访问、资源管理、任务管理、统计及其他功能 问题2:实时性的需求 实时性指的是系统对于特定的事件的处理需要在要求的时间内完成。从操作系统的角度来讲,实时性指的系统的结构能在多大程度上保证反映的速度 早期的嵌入式操作系统几乎都是实时操作系统,但近年随着一些手持通用计算机设备的出现,使得现在的嵌入式操作系统有很多不需要实时性 问题2:实时性的需求(续) 是否需要完全取决于软件项目的复杂程度 要保证多个模块的执行时间 并行的功能模块比较多 定时处理的功能比较多 程序的执行需要判断很多条件参数或资源 需要规划代码执行的优先顺序 问题3:RTOS的选择 内核占用存储区尺寸 RTOS性能:任务切换时间、任务调度数、任务优先级数 开发调试工具易用性 兼容性 许可证形式 uC/OS-Ⅱ简介 uC/OS-Ⅱ是美国一个名为Jean Labrosse的工程师开发的实时操作系统。它以小内核、多任务、丰富的系统服务、容易使用等特点越来越受欢迎 uC/OS-Ⅱ实时系统的商业应用非常广泛,具有非常稳定、可靠的性能,成功应用于生命科学、航天工程等重大科研项目中。由于其极小的内核,特别适用于对程序代码存储空间极其敏感的嵌入式系统开发 uC/OS-Ⅱ是一款源码公开的实时性操作系统 uC/OS-Ⅱ的实时性 “可剥夺内核”与“不可剥夺内核”的区分往往是RTOS与非实时嵌入式操作系统的区别所在 uC/OS-Ⅱ是可剥夺型内核,它总是让就绪态的高优先级的任务先运行,并规定所有任务的优先级必须不同,任务的优先级同时也唯一的标识了任务。 uC/OS-Ⅱ的特点 可移植性 绝大部分uC/OS-Ⅱ的源代码是用移植性很强的ANSI C写的,和微处理器相关部分使用汇编语言写的,且已经压到最低限度,可以在绝大部分8位,16位,32位,64位微处理器上,微控制器上和DSP上运行 可裁减 用户可以在应用程序中通过语句#define constants来定义所需的uC/OS-Ⅱ功能模块,以减少不必要的存储器空间开支 uC/OS-Ⅱ的特点(续) 占先式 uC/OS-Ⅱ属于完全占先式的内核,这意味着uC/OS-Ⅱ总是运行就绪条件下优先级最高的任务 多任务 可以管理64个任务,支持56个用户任务,赋予每个任务的优先级必须是不相同的,不支持时间片轮转调度法 uC/OS-Ⅱ的特点(续) 中断管理 中断可以使正在执行的任务挂起,如果优先级更高的任务被唤唤醒,则高优先级的任务再中断嵌套全部推出后立即执行,中断嵌套可达255层 其它 公开源代码、可固化、可确定性、任务栈、提供很多系统服务、稳定性和可靠性强 uC/OS-Ⅱ内核中的概念 临界区(共享资源的保护手段) 任务和任务的状态 任务的控制块 任务的调度 任务的切换过程 时钟节拍 uC/OS-Ⅱ的中断 uC/OS-Ⅱ的初始化和启动 uC/OS-Ⅱ文件体系结构 uC/OS-Ⅱ在S3CEV40上的移植 所谓移植,就是使一个实时操作系统能够在某个微处理器平台或微控制器上运行。 移植过程 由uC/OS-Ⅱ的文件体系结构可知,移植的主要工作就是修改与CPU相关的三个文件 修改OS_CPU.H文件 修改OS_CPU_A.ASM文件 修改OS_CPU_C.C文件 修改OS_CPU.H文件 该部分主要完成基本的配置和定义,包括: 定义与编译器相关的数据类型 定义使能和禁止中断宏 定义栈的增长方向 定义OS_TASK_SW宏 定义数据类型 uC/OS-II有8种整数数据类型: INT8U 无符号8位整数 INT8S 有符号8位整数 INT16U 无符号16位整数 INT16S 有符号16位整数 INT32U 无符号32位整数 INT32S 有符号32位整数 他们需要同编译器中的数据类型相匹配。 定义数据类型(续) 匹配方法: Typedef unsigned char INT8U Typedef signed char INT8U Typedef unsigned int INT16U Typedef signed int INT16S Typedef signed long INT32S Typedef INT32U int OS_STK; Typedef INT16U

文档评论(0)

云烟 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年03月21日上传了教师资格证

1亿VIP精品文档

相关文档