uCOS-II的移植 - 电子设计技术.ppt

uCOS-II的移植 - 电子设计技术.ppt

ID:49282655

大小:217.00 KB

页数:10页

时间:2020-02-03

uCOS-II的移植 - 电子设计技术.ppt_第1页
uCOS-II的移植 - 电子设计技术.ppt_第2页
uCOS-II的移植 - 电子设计技术.ppt_第3页
uCOS-II的移植 - 电子设计技术.ppt_第4页
uCOS-II的移植 - 电子设计技术.ppt_第5页
资源描述:

《uCOS-II的移植 - 电子设计技术.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、u/COS-II的移植何为移植?移植就是修改一个软件,使得它能在新的环境下(不同的处理器平台,或者不同的处理器型号,或者不同的板子,或者不同的系统下)运行移植工作量取决于被移植软件的复杂程度和移植的层次举例将linux移植到alpha处理器上,属于第一类:移植到新的处理器架构上。工作量巨大,非高手不能为将linux移植到s3c2410上,属于第二类:移植到不同处理器型号。工作量大大降低将linux移植到你开发的开发板上,属于第3类:移植到不同board上,如果你的board采用了如s3c2410这样的处理器,则工作量很小将QQ移植到linux平台上,属于第四类,把软件移植到不同的系

2、统(操作系统)上……移植一个操作系统与什么有关?不考虑应用程序的移植,只考虑操作系统移植到不同平台上。主要的工作体现在:理解处理器架构(寄存器,指令集,编程模式…)了解board的硬件设计(内存基地址?Flash地址?使用了处理器哪些资源?…)了解编译器(编译器传递参数的约定,支持内嵌汇编否?)当然,理解操作系统的设计Ucosii的移植Ucosii相对简单,移植工作量不大。实现三个文件:os_cpu.hos_cpu_c.cos_cpu_a.sOs_cpu.h主要定义通用的数据类型和堆栈增长方式,确定OS_ENTER/EXIT_CRITICAL的实现方式数据类型是编译器相关的,堆栈增

3、长方式是处理器相关的Os_cpu_c.c主要实现堆栈初始化函数,以及一些钩子函数(OSTimeTickHook,OSTaskSwHook…)与编译器和处理器均相关Os_cpu.a.s一个汇编语言文件,最重要的工作,实现任务切换,现场保护/恢复OSStartHighRdyOSCtxSwOSIntCtxSwOS_CPU_SR_SaveOS_CPU_SR_Restore此外……选择一个时钟节拍产生器(定时器中断?),并且实现其isr写一个板级初始化函数,用来对处理器和必要的外设进行初始化,比如:对定时器初始化,对内存控制寄存器初始化,设置处理器工作模式……总结上面只是一般套路,可以根据情

4、况调整。比如有的编译器支持内嵌汇编,这种情况下,你完全可以不要os_cpu_a.s,而把OSStartHighRdy,OSCtxSw等函数全放在os_cpu_c.c中用C实现不管做什么调整,核心的是实现下面几个东西:OSStartHighRdyOSCtxSwOSIntCtxSwOSTaskStkInitOS_ENTER_CRITICAL/OS_EXIT_CRITICAL确定时钟节拍如何产生,写一个isr,并在系统启动时候启动timetick

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

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

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