电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

μCOS-II在S3C44BOX处理器上的移植

5页
  • 卖家[上传人]:re****.1
  • 文档编号:476012059
  • 上传时间:2022-07-26
  • 文档格式:DOCX
  • 文档大小:12.93KB
  • / 5 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、mCOS-I在S3C44BOX处理器上的移植摘要介绍实时操作系统湖勺特点和内核结构,给出所在嵌入式3447 微处理器上的移植的步骤及详细相关代码,同时阐述所在应用中应注意的 问题。关键词佐344移植实时操作系统史能强大,支持56个用户任务, 其内核为占先式,支持信号量、邮箱、消息队列等多种常用的进程间通信 机制,现已成功应用到众多商业嵌入式系统中,是一个成熟稳定的实时内 核。与大多商用不同的是,必开所有的源代码,90的代码使用标准的语 言书写,程序可读性强、移植性好;同时它可免费获得,即使商业应用也 只收取少量的许可费用。因此,对佐实时操作系统的学习研究、开发、应用具有重要意义。3440微处理器是三星公司专为手持设备和其它嵌入式应用提供的高 性价比的微控制器解决方案。它使用公司的16位32位结构,内核是7,工作在66,片上集成了以 下部件8、外部存储器控制器、控制器、4个通道、2个、1个多主2总线 控制器、1个2总线控制器,以及5通道定时器和1个内部定时器、8通 道12位等,能够与常用的外围设备实现无缝连接,功能强大。目前,国内应用较为广泛。范文先生网收集整理1伤实时操作系统结构图1说

      2、明了湖勺软硬件体 系结构。应用程序处于整个系统的顶层,每个任务都可以认为自已独占了,因 而可以设计成为一个无限循环。伤处理器无关的代码提供了湖勺系统服务,应用程序可以使用这些函 数进行内存管理、任务间通信及创建、删除任务等。大部分的出代码是使用语言书写的,因此湖勺可移植性好,然而仍需 要使用和汇编语言写一些处理器相关代码。湖勺移植需要满足以下要求处理器的编译器可以产生可重入代码; 可以使用调用进入和退出临界区代码;处理器必须支持硬件中断, 并且需要一个定时中断源;处理器需要能够容纳一定数据的硬件堆栈; 处理器需要有能够在寄存器与内核和堆栈交换数据的指令。3440处理器完全满足上述要求。2实时内核 缶在3440上的移植我们使用编译器,移植佐主要包括以下几个步骤。1设置_中与处理器和编译器相关的代码数据类型 *;8;*8 位 无符号整数*8;*8位有符号整数*16;*16位有符号整数*16;*16位无符号整 数*32;*32位无符号整数*32;*32位有符号整数*32;律精度浮点数*64;敝 精度浮点数*_;*堆栈入口宽度为16位*与处理器相关的代码#_*开启中断 *#_1*堆栈由高地址向

      3、低地址增长*2用语言编写6个操作系统相关的函数_*,*,*,16*;因变量没有用到,防止编译器产生警告*=*;*装载堆栈指针* 为 新 任 务 创 建 上 下 文*-=;*-=*-=0;*12*-=0;*11*-=0;*10*-=0;*9*-=0;*8*-=0;*7*- -=0;*6*-=0;*5*-=0;*4*-=0;*3*-=0;*2*-=0;*1*-=;*0*-=32|00|;*, *-=32|00;关闭*;后5个函数是钩子函数,可以不加代码_*_*3用汇编语言编写4个与处理器相关的函数;运行优先级最高的就绪任务4, _;得到当前任务的地址5, _;得 到高优先级任务的地址5,_;得到高优先级任务的地址5,5得到堆栈指 针,5切换到新的堆栈5,4设置新的当前任务的地址!,4_,4!,0-;2开 始新的任务任务级的任务切换函数!,保存指针!,保存指针!,0-12保 存寄存器文件和返回地址4,!,4呆;存当前4,!,4;=4,_5,_6,5;6得到当 前任务的地址4,_5,4,保存栈指针在占先任务的上;取得高优先级任务的地址6,_6,6,得;到新任务的堆栈指针;=6,4得到当前新任务

      4、的地址!,4,4!,4_,4!,0|-断级的任务切换函数!,-,#4,#412,#00,#03_,;中断服务函数!,0-11,0,0,0,#设0置;中断禁止标志_,0中断结束0,_1,=_01,00,=2,02,#完成上述工作后,出就可 以运行在处理器上了。3使用佑系统应注意的问题-和等分时操作系统不同,不支持时间 片轮转法。它是一个基于优先级的实时操作系统。每一个任务的优先级必须不同分析它的源码会发现,肩巴任务的优先 级当作任务在标识来使用,如果优先级相同,任务将无法区分。进入就绪态的优先级最高的任务首先得到的使用权,只有等它交出的 使用权后,其它任务才可以被执行。所以,它只能就是多任务,不能就是多进程,至少不是我们所熟悉的 那种多进程。列共享资源提供了保护的机制。佐是一个支持多任务的操作系统。我们可以把一个完整的程序划分成几个任务,不同的任务执行不同的 功能。对于共享资源比如串口,佐也提供了很好的解决办法,一般情况下使 用的是信号量方法。我们创建一个信号量并对它进行初始化,当一个任务需要使用一个共 享资源时,它必须先申请得到这个信号量。在这个过程中即使有优先权更高的任务进入了就绪态

      5、,因为无法得到 信号量,也不能使用该资源。在防中称为优先级反转。简单地说,就是高优先级任务必须等待低优先级任务的完成。在上述情况下,在两个任务之间发生优先级后转是无法避免的。所以不在使用 砰寸,必须对所开发的系统了解清楚才能选择对于某种 共享资源是否使用信号量。M-内存管理不够完善。在分析许多 湖勺应用实例中发现,任务栈空间和内存分区的创建采用 了定义全局数组的方法,这样实现起来固然简单,但不够灵活有效。编译器会将全局数组作为末初始化的全局变量,放到应用程序映像的 数据段。数组的大小是固定的,生成映像后不可能在使用中动态地改变。对于任务栈空间来说,数组定义大了会造成内存浪费;定义小了任务栈溢出,会造成系统崩溃。对于内存分区,在不知道系统初始化后给用户留下了多少自由内存空 间的情况下,很难定义内存分区所使用数组的大小。此外,现在佑只支持固定大小的内存分区,容易造成内存浪费。G将来应该被改进以支持可变大小的内存分区。因此,系统初始化后能清楚地掌握自由内存空间的情况是很重要的。所以,应避免使用全局数组分配内存空间,关键是要知道整个应用程 序在编译、链接后代码段和数据段的大小,在目标板内存中是如何定位, 以及目标板内存的大小。总之,随着各种智能嵌入式系统的复杂化和系统实时性需求的提高, 伴随应用软件朝着系统化发展的加速,功能强大的实时操作系统将会有 更大的发展。

      《μCOS-II在S3C44BOX处理器上的移植》由会员re****.1分享,可在线阅读,更多相关《μCOS-II在S3C44BOX处理器上的移植》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.