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

如何选择ARMCPU的操作系统

11页
  • 卖家[上传人]:m****
  • 文档编号:479643695
  • 上传时间:2023-03-24
  • 文档格式:DOCX
  • 文档大小:16.53KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、如何选择 ARMCPU 的操作系统从 8 位/16 位单片机发展到以 ARMCPU 核为代表的 32 位嵌入式处理器,嵌入式 操作系统 将替代传统的由手工编制的监控程序或调度程序,成为重要的基础组件。更重要的是嵌入式 操作系统 对应用程序可以起到屏蔽的作用,使应用程序员面向 操作系统 级开发应用软件,并易于在不同的 ARM 核的嵌入式处理器上移植。嵌入式操作系统 都具有一定的实时性,易于裁剪和伸缩,可以适合于从ARM 7 到Xscale 各种 ARMCPU 和各种档次的应用,嵌入式 操作系统 可以使用广泛流行的 ARM 开发工具, 如 ARM 公司的 SDT/ADS 和 RealView等 ,也可以使用开发软件,如 GCC/GDB 、 KDE 或 Eclipe 开发环境,市场上还有专用的开发工具,如 Tornado 、 mC/View 、 mC/KA 、CODE/Lab 、 Metroworks 等。本文就目前国内在ARMCPU 上广泛采用的三种嵌入式操作系统(uCOS-II 、 uCLinux 和嵌入式 Linux) 作分析。uCOS-II 嵌入式实时内核全世界数百种设备已经在使用

      2、uCOS-II ,包括手机、路由器、不间断电源、飞行器、医疗设备和工业控制设备。 uCOS-II 已经有ARM 7TDMI 、 ARM 9 和 Strong ARM 等各种 ARMCPU 的移植,支持包含 Atmel 、 Hynix 、 Intel 、 Motorola 、 Philips 、 Samsung 、 Sharp等公司的 ARM 核的 CPU 。 uCOS-II 的移植也相当容易,与 CPU 相关的代码包装在三个文件中, 它们是 os_cpu.h 、 os_cpu_a.asm 和 os_cpu_c.c 。uCOS-II 有 60 多个系统调用,覆盖任务、定时器、信号量、事件标志、邮箱、队列和内存管理,已经包含了传统嵌入式 操作系统 内核(如 PSOS, VRTX) 的功能,还支持互斥型信号量,这是 90 年代的嵌入式 操作系统 内核,如 VxWorks 和 VRTXsa 才有的技术。uCOS-II 因为是可抢占的实时内核,所以 uCOS-II 与商业嵌入式实时内核在性能上没有什么差异, uCOS-II 没有用户态和内核态,任务 (线程 )或中断和任务切换的响应可以很快,主要

      3、是和 ARMCPU相关的。最新的 2.7x 版本还增加了算法以避免在移植中修改堆栈指针 ,这样可以保证uCOS-II 在不同的 CPU 上运行更稳定,移植更方便。 uCOS-II 目前除了内核外还有商业化文件系统mC/FS ,图形系统 uC/GUI 以及任务调试工具uC/KA 和 uC/View ,但是uC/OS-II 自己目前还没有TCP/IP 协议系统。总的来说, uCOS-II 是一个非常容易学习,结构简单,功能完备和实时性很强的嵌入式 操作系统 内核,适合于各种嵌入式应用以及大专院校教学和科研。最后需要说明, uCOS-II 不是免费软件,任何人学习使用 uCOS-II 需要购买嵌入式实时操作系统 uCOS-II 一书,使用 uCOS-II 的产品需要购买产品生产授权,购买了此授权的还可以得到开发期间的技术支持和升级服务。分页 uCLinux 操作系统uCLinux 是 Linux 小型化后,适合于没有MMU( 内存管理单元 )的微处理器芯片而裁剪成的 操作系统 ,如果 ARMCPU 系列中的ARM 7TDMI 、 ARM 940T 等产品希望使用 Linux 操作系统 ,只能

      4、用uCLinux , 当然, uCLinux 也支持 MotorolaDragonball 、 Coldfire等其它中低端嵌入式处理器。uCLinux 保持了传统Linux 操作系统 的主要特性,包括稳定、强大的网络和文件系统的支持, uCLinux 裁剪了大量的 Linux 内核以缩小尺寸,适合象512k/bRAM 、 1M/bFlash 这样小容量、低成本uCLinux 系统小型化的另一简化是采用了 uCLib库替代 Linux 的 Glib 库,使用 uCLib 可以大大减少应用程序的代码尺寸,对于中小型嵌入式应用, uCLib 功能可以满足需要,所以目前即使是某些采用 Linux2.4 内核的嵌入式 Linux 系统也采用uCLib 库的做法。 uCLinux 中, 由于没有内存保护机制, 应用代码一般采用静态连接的方式,而且在uCLinux 中采用 Flat 文件执行格式 (Linux 是 Coff 或 Elf 格式 ),uCLinux 和应用代码都可以支持固化,存储在Flash 存储介质中,不需象Linux 需要经过一次Flash到 RAM 的拷贝。 所有这些, 使得 u

      5、CLinux 更象传统意义上的嵌入式 操作系统 。uCLinux 是由 Linux2.0.38 内核开始移植的, 目前已经有2.4Linux支持的一些移植的版本,如 S3C2500 、 44B0 等 ARM 芯片,可以在 uCLinux 的官方网站www.uclinux.org 上找到这些版本,uCLinux 近期主要是在发展各种 2.4.x 版本的移植, 以期跟上 Linux社会主流的发展趋势( 因为今后 Linux2.6 将开始成为主流的内核) 。uCLinux 主要是针对没有MMU 的嵌入式处理器开发设计,那么它也失去了有MMU 所带来的 Linux 操作系统 的特色,比如,上面已经提到的静态加载(Linux 支持动态应用的加载), uCLinux 对内存操作是直接的物理内存, 这样, 任何程序的异常都可能导致内核崩溃, uCLinux 支持多线程,但需要父子线程协调同步, uCLinux的文件系统相对比较陈旧, 支持的 CPU 和参考设计还比较少, 社区的发展和维护也相对缓慢。目前uCLinux 官方网站还很少看见象IBM 、 Intel 这样的大型公司身影,只有23 家小型的

      6、硬件或方案提供商,这对于商业化的产品开发中采用是有一定的风险。嵌入式 Linux 操作系统这里要讨论的是可以嵌入在 ARMCPU 上的,具有MMU 功能的Linux 操作系统 ,也可以称是嵌入式 Linux 操作系统 。与微软公司的软件不一样, Linux 不是由一家公司所拥有、维护开发的, Linux在市场有多种发行版本,所有发行版本都包含一样的 Linux 内核、基本工具和应用,不同的发行版本主要是在附加的工具链、应用、配置以及各种内核补丁上有所不同。 嵌入式 Linux 主要是在实时性增强、内核精简和裁减、支持多种 CPU 结构(如 ARMCPU )等方面做了改进和提高。分页使用嵌入式 Linux 系统有两种途径:第一是用户自己装配(称为 DIY 内核 ),你可以在www.kernel.org找到全部 Linux 代码,或直接到 ARMCPU 的源代码树下www.armlinux.org.uk 找到所需要的 Linux 版本的移植,或者某些半导体公司, 如三星、 Motorola 在自己的网站或在自己的 ARM评估板含有一个最小 Linux 内核系统。 如果这个最小内核没有包含G

      7、CC/GDB 工具链,可能还要到 GNU 的网站下载全部的源代码,然后再编译生成所需要版本的 ARM 工具链和应用程序库,这个过程是相当耗时和困难的。还需要指出,这种 DIY 内核的配置,添加应用和驱动程序也是不标准的和复杂的, 这是嵌入式系统的特殊性所在。第二是选择一个商业化的嵌入式 Linux 操作系统 平台。商业化的嵌入式 Linux 版本是针对嵌入式处理器,如 ARM 所优化设计的,支持各种半导体厂家的评估板和主要的设备驱动,商业化的嵌入式Linux 包含了文件系统、应用、实时性扩展和技术支持培训服务,现今国外著名的商业化嵌入式 Linux 产品有: MontaVistaLinux 、BluecatLinux 、 TimesysLinux 、 MetroworkLinux 、 Vlinux 和Linux 。RedhatLinux 等,国内也有红旗、中软、新华嵌入式MontaVistaLinux 是 MontaVista 软件公司于 1999 年推出的, 它 是目前全球优秀的嵌入式 Linux 操作系统 和工具供应商,MontaVista 在嵌入式 Linux 的实时 = 叉开发

      8、工具、高可用性、动态电源管理等Linux 技术要点方面具有领先地位。MontaVistaLinux 最版本是 3.1 , 采用 Linux2.4.20 , 针对 8 种 CPU系列 (包含 ARM 和 Xscale) 优化定制的商业化版本。选择象 MontaVistaLinux 这样商业化嵌入式Linux ,可以让用户把时间和资金放在应用软件和特定的硬件接口和设备驱动程序, 使用商业化嵌入式 Linux 可以得到一定时间 (一般是 1 年) 的技术支持,升级和培训(这很重要,因为Linux 是每天都在变化的 ) 。商业化嵌入式 Linux 目前除国内的产品外, 价格还是很昂贵的, 根据配置和服务时间, 大约从几千到几万美元, 多数国内用户从资金和心理上还很难承受,商业化嵌入式 Linux 开发工具相对于Microsoft 和象 Tornado/VxWork 的开发工具,在易于使用和丰富性方面还待于提高和改进。同样作为 Linux 操作系统 ,笔者推荐使用带有MMU 的嵌入式Linux , 而不是 mCLinux , 因为绝大多数新的 ARMCPU 都是 AMR9核,它们都带有MMU 了

      9、,无论是开放源码的 Linux 社区还是商业化的嵌入式 Linux 公司的支持和维护都比 mCLinux 要好要快和丰富得多。分页 结语前面我们对三种在ARMCPU 上较为流行的嵌入式操作系统 作了详细的分析, 在进入一个总结之前, 笔者还想提到几个在国际上很有名气的嵌入式 操作系统 ,它们是 WindRiver 公司的 VxWorks 、 ATI的 Nucleus 、 iTron 和 WinCE ,但它们在ARMCPU 的应用不多见,介绍从略。最后归纳一下选择一个合适的 ARMCPU 的嵌入式 操作系统 的几个重要因素:第一是应用。 如果你想开发的嵌入式设备是一个和网络应用密切相关或者就是一个网络设备,那么你应该选择用嵌入式 Linux 或者uCLinux ,而不是 uC/OS-II 。第二是处理器。它可以适合于 9095% 的各种嵌入式系统应用。当然,你如果希望更快的实时响应,如高速的 A/D 转换需要几个微秒以内的中断延时,可能采用 uC/OS-II 是合适的。当然,你采用象 Vxworks 这样传统的嵌入式 操作系统 也可以满足这样的强实时 性要求。第三是开发工具。 显然, 目前 uC/OS-II 、 uCLinux 和嵌入式 Linux的开发工具与商业嵌入式 操作系统 工具还有一些差距,目前在ARMCPU 上广泛流行和使用的是ARM 公司 SDT/ADS 工具链, 产品无论在功能、 稳定性和众多的第三方厂商支持方面都很好, 唯一不足的是缺少对嵌入式 Linux 操作系统 的支持, SDT/A

      《如何选择ARMCPU的操作系统》由会员m****分享,可在线阅读,更多相关《如何选择ARMCPU的操作系统》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党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.