基于ARM内核微处理器操作系统的移植-Read.ppt

基于ARM内核微处理器操作系统的移植-Read.ppt

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

基于ARM内核微处理器操作系统的移植 基于ARM内核微处理器 操作系统的移植 RTOS操作系统在ARM内核的移植 嵌入式uClinux及其应用开发 嵌入式Linux及其应用开发 RTOS操作系统在ARM内核的移植 uCOSII内核介绍 1)简单、高效的嵌入式实时操作系统内核 2)抢占式、多任务、可确定性 3)系统服务 ( 邮箱、消息队列、信号量等 ) 4)源代码公开 5)可扩展性和可移植性 6)专为嵌入式应用而设计,可固化,可裁减 7)稳定性和可靠性经过实践检验 RTOS操作系统在ARM内核的移植 RTOS操作系统在ARM内核的移植 RTOS操作系统在ARM内核的移植 RTOS操作系统在ARM内核的移植 RTOS操作系统在ARM内核的移植 移植uCOS到处理器上必须满足以下几个条件 1)处理器的C编译器能产生可重入代码 2)用C语言就可以打开和关闭中断 ARM核包含了一个CPSR寄存器,该寄存器包含一个全局中断禁 止位可以打开和关闭中断 3)处理器支持中断且能产生定时中断 ARM处理器都支持中断并能产生定时中断 4)处理器支持容纳一定数量数据的硬件堆栈 ARM有足够的硬件堆栈 5)处理器有将堆栈指针和其他CPU寄存器读出和存储器到堆栈或内存中的指令 ARM中汇编指令stmfd可以将所有寄存器压栈,对应也有一个出栈指令ldmfd RTOS操作系统在ARM内核的移植 可重入代码 可重入代码指的是可以被多个任务同时调用,而不会破坏数据的一段代码,或者说代码具有在执行过程中打断后再次被调用的能力。 Example: int temp; void swap (int *x,int *y) void swap (int *x,int *y) { { int temp; temp=*x temp=*x; *x=*y; *x=*y *y=Temp; *y=Temp; } } RTOS操作系统在ARM内核的移植 RTOS操作系统在ARM内核的移植 移植步骤1--基本的配置和定义(OS_CPU.h里) 1)定义与编译器相关的数据类型 这部分修改是和所用的编译器相关的,不同的编译器会使用不同字节来表示同一 数据。 2)定义允许和禁止中断宏 因为处理器现场的寄存器在任务切换时都将会保存在当前运行任务的堆栈中,所以OS_STK数据类型应该是和处理器的寄存器长度一致的。 3)定义栈的增长方向 堆栈有高地址向低地址增长,这个也是和编译器有关的,当进行函数调用时,入口参数和返回地址一般都会保存任务的堆栈中,编译器的编译选项和由此生成的堆栈指令就会决定堆栈增长方向。 4)定义OS_TASK_SW 包括开关中断的宏定义,以及进行任务切换的宏定义 RTOS操作系统在ARM内核的移植 移植步骤2--移植OS_CPU_A.ASM汇编代码文件 1)OSStarHighRdy函数 本函数由OSStart函数调用,OSStart函数负责使就绪状态的任务开始运行,其中OSStarthightRdy负责获取新任务的堆栈指针并从堆栈指针中恢复新任务的所有寄存器,函数要移植的原因就是因为它涉及到保存处理器的寄存器到堆栈。 2)OSCtxSw函数 本函数由OS_TASK_SW函数调用,OS_TASK_SW由OSSched函数调用。OSSched函数负责任务之间的切换:OSCTxSw函数在OSSched函数中负责保存当前任务对应的处理器寄存器到堆栈中,并将需要恢复的任务对应的处理器寄存器从堆栈中恢复出来 RTOS操作系统在ARM内核的移植 移植步骤2--移植OS_CPU_A.ASM汇编代码文件 3)OSIntCtxSw函数 本函数由OSIntExit函数调用,OSIntExit函数由OSTickISR调用,负责在定时中断中的任务切换

文档评论(0)

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

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

1亿VIP精品文档

相关文档