| 查看: 265 | 回复: 4 | ||
| 【奖励】 本帖被评价1次,作者mczpj2005增加金币 0.5 个 | ||
| 当前主题已经存档。 | ||
[资源]
ARM 概述
|
||
|
ARM ???? 1.1 ARM??Advanced RISC Machines ????ARM??Advanced RISC Machines??,??????????????????????,??????????????????????????,???????????????????????? ????1991??ARM????????????????,???????о????????????????,????ARM???????????IP????????????,??????????????ARM???????,??鼰??????????????????????????????????????????????????г?,????ARM??????????????????????32λRISC???????75????????г????,ARM?????????????????????????????档 ????ARM??????????????RISC????о???????????,?????????????,????????????о?????,?????????????????????????????????о?,?????????????????ARM?????????????ARM?????????,??????????????????,???????????Χ??·,????γ??????ARM???????о??????г?????,??????м????????幫??????ARM????????,???????ARM??????????????????????????????????,????????????????,??????????????г???????????????,?????о??????? ????1.2 ARM??????????????????? ????1.2.1 ARM???????????????? ??????????,ARM?????????????????ü?????????????????? ???? 1????????????????32??RISC???,????ARM??????????о????????????????????г??????г????,??????????????????????????,ARM????????????????????,?????8λ/16λ????????????????? ????2?????????????????г???85%?????????豸??????ARM????, ARM?????????????,?????????λ???湮??? ????3??????????????????????????,????ARM??????ADSLо???????????????????,ARM????????????????????????,????ù????,???DSP??????????????????? ????4???????????????ARM???????????е????????????????????????к???????е???????á? ????5?????????????????????е???????????????о???????ARM??????????е?32λSIM????????????ARM?????? ????????????,ARM??????????????????????????????,????????????????????á? ????1.2.2 ARM???????????? ????????RISC?????ARM???????????????????? ????1?????С????????????????????; ????2?????Thumb??16λ??/ARM??32λ??????,????????8λ/16λ????; ????3????????ü????,????????????; ????4???????????????????????????; ????5???????????,???Ч???; ????6?????????; ????1.3 ARM?????????? ????ARM????????????????漸?????,??????????????ARM????????????,???????ARM????????????????,??????е?ARM??????????и??????????????? ?????? ARM7??? ?????? ARM9??? ?????? ARM9E??? ?????? ARM10E??? ?????? SecurCore??? ?????? Inter??Xscale ?????? Inter??StrongARM ????????,ARM7??ARM9??ARM9E??ARM10?4?????????????,??????????????????????????????????????????SecurCore???????????????????????? ??????????????????????????????????????????? ????1.3.1 ARM7?????????? ????ARM7?????????????????32λRISC??????,???????????λ???????????????????á?ARM7?????????о?????????? ?????? ????????ICE??RT???,??????????? ?????? ????????,????????????????,???Я?????? ?????? ?????0.9MIPS/MHz?????????????? ???? ?? ?????????????16λ??Thumb????? ???? ?? ?????????????,????Windows CE??Linux??Palm OS??? ?????? ???????ARM9??С?ARM9E??к?ARM10E??м???,????????????????????? ???? ?? ????????130MIPS,???????????????????ξ?????????????á? ????ARM7?????????????????????????????????Internet?豸???????????????豸??????绰????????????????á? ????ARM7????????????????????????????ARM7TDMI??ARM7TDMI-S?? ????ARM720T??ARM7EJ??????,ARM7TMDI????????????32λ????RISC??????,?????ARM?????????TDMI???????????? ????T?? ???16???????Thumb; ????D?? ??????Debug; ????M???????????????Multiplier?? ????I?? ????ICE,?????????????; ???? ????1.3.2 ARM9?????????? ????ARM9??????????????????????????????????????????????????? ?????? 5???????????,??????Ч?????? ?????? ??1.1MIPS/MHz???????? ?????? ???32λARM?????16λThumb????? ?????? ???32λ?????AMBA??????? ?????? ??????MMU,???Windows CE??Linux??Palm OS????????????????????? ?????? MPU????????????? ?????? ???????Cache?????Cache,???и????????????????????? ????ARM9???????????????????????豸???????????????????????С????????????????????????????????? ????ARM9??????????????ARM920T??ARM922T??ARM940T????????,??????????????ó???? ????1.3.3 ARM9E?????????? ????ARM9E?????????????????????,????????????????????????????DSP??Java?????????????,??????????о??????????????????ARM9E???????????????????DSP????????,?????????Щ????????DSP?????????????ó???? ????ARM9E??????????????????????? ?????? ???DSP???,???????????????????????????? ?????? 5???????????,??????Ч?????? ?????? ???32λARM?????16λThumb????? ?????? ???32λ?????AMBA??????? ?????? ???VFP9??????Э???????? ?????? ??????MMU,???Windows CE??Linux??Palm OS????????????????????? ?????? MPU????????????? ?????? ???????Cache?????Cache,???и????????????????????? ?????? ????????300MIPS?? ????ARM9????????????????????????????豸??????????????????豸???????????洢?豸???????豸?????? ????ARM9E??????????????ARM926EJ-S??ARM946E-S??ARM966E-S????????,??????????????ó???? ????1.3.4 ARM10E?????????? ????ARM10E?????????????и???????????????,?????????????????,??????ARM9????????,???????????????,??????????50??,??,ARM10E??????????????????????????????,??书?????? ????ARM10E??????????????????????? ?????? ???DSP???,???????????????????????????? ?????? 6???????????,??????Ч?????? ?????? ???32λARM?????16λThumb????? ?????? ???32λ?????AMBA??????? ?????? ???VFP10??????Э???????? ?????? ??????MMU,???Windows CE??Linux??Palm OS????????????????????? ?????? ???????Cache?????Cache,???и??????????????????? ?????? ????????400MIPS?? ?????? ??????ж?/д?????????? ????ARM10E????????????????????????????豸??????????????????豸????????????????????????? ????ARM10E??????????????ARM1020E??ARM1022E??ARM1026EJ-S????????,??????????????ó???? ????1.3.5 SecurCore?????????? ????SecurCore???????????????????????,?????????32λRISC???????????????,???,SecurCore?????????????????ARM????????????????????????,????????????????,?????????????????????? ????SecurCore?????????????????ARM?????????????????,???????????????????????? ?????? ??????????????,????????????????????????? ?????? ????????????,?????????????????? ?????? ????????????????????????Э???????? ????SecurCore???????????????????Щ??????????????ò?????????,?????????????????????????????????????????? ????SecurCore??????????????SecurCore SC100??SecurCore SC110??SecurCore SC200??SecurCore SC210????????,??????????????ó???? ????1.3.6 StrongARM?????????? ????Inter StrongARM SA-1100???????????ARM????????????32λRISC????????????????Inter???????????????????ARM?????????Ч??,???????????????ARMv4????????????????Intel??????????????? ????Intel StrongARM?????????Я????????????????????????????,????????????????????????в???? ????1.3.7 Xscale?????? ????Xscale ???????????ARMv5TE?????????????,????????????????????????????????????16λ??Thumb????DSP???,???????????????绰???????????????????????????? ????Xscale ????????Inter????????????ARM????????? ????1.4 ARM????????? ????1.4.1 RISC????? ?????????CISC??Complex Instruction Set Computer,??????????????????????е????,??????????????????????????????????????,??????Щ?????????,??????????????????????,???,??CISC?????????????,????????????????,?????20???????????????,?????????????80???????????80?????????????????,????????????20??,???,???????????????? ????????????????????,1979????????????????????У?????RISC??Reduced Instruction Set Computer,???????????????????,RISC?????????????????,??????????????????????????????????????????????????RISC????????????????????,?????????;?????????,???????????????????;???????????,?????????????????????????????? ??????????,RISC??????????????????,??????,RISC????????????????? ?????? ???ù????????????,??????????????????????2??3??? ?????? ???????????,??????????????С? ?????? ??????ü????,????????????????????в???,??м???/ ?洢?????????洢??,????????????Ч??? ????????????,ARM??????????????Щ???????,?????????????????????Со??????,?????????? ?????? ???е???????????????н????????????,?????????????Ч??? ?????? ???ü???/?洢???????????????,?????????????Ч??? ?????? ???????????????????????????????????λ?????? ?????? ??????????????????????????????????Ч??? ???????,??CISC???????,????RISC??????????????,???????????RISC???????????CISC???,?????,RISC??CISC????????,???????????????????????CPU????????CISC????Χ,?????????RISC??????,?糬?????CPU?????????RISC??CISC??????,???δ????CPU??????????? ????1.4.2 ARM??????????????? ????ARM??????????37???????,???????????飨BANK??,??Щ??????????? ?????? 31????ü????,???????????????PC???,???32λ???????? ?????? 6?????????,??????CPU????????????????????,???32λ,???????????е??????? ??????,ARM??????????7?????????????,??????????????????????????????????????????????????????????,??????????????15????ü??????R0??R14???????????????????????????????????е???????,??Щ????7????????????????????????????,????Щ?????????????????????????в??????????????? ????????ARM??????????????,???????????????????????? ????1.4.3 ARM????????????? ????ARM??????????????????????????????????ARM?????Thumb?????????,ARM????32λ?????,Thumb????16λ?????Thumb????ARM???????????,???????ARM????????,????30????40???????洢???,?????32λ???????????? ????????ARM????????????,???????????????????????? ????1.5 ARM??????????????? ????????ARM???????????????,?????????????????????????,ARM?????????????ù??????????á?????,????ARM????????ж????????????,?????о?????????,???????????????????????,?????????????????????????????,????,??ARMо????Щ????о??????????? ??????????????????,???????ARM??????????????????????????Щ????????? ????ARM?????????????? ??????????????????????,ARM??????????????е?????,?????????????????,??????????? |
» 猜你喜欢
基金申报
已经有5人回复
基金委咋了?2026年的指南还没有出来?
已经有7人回复
国自然申请面上模板最新2026版出了吗?
已经有17人回复
纳米粒子粒径的测量
已经有8人回复
疑惑?
已经有5人回复
计算机、0854电子信息(085401-058412)调剂
已经有5人回复
Materials Today Chemistry审稿周期
已经有5人回复
溴的反应液脱色
已经有7人回复
推荐一本书
已经有12人回复
常年博士招收(双一流,工科)
已经有4人回复
|
ARM的开发步骤 ARM的开发步骤 发布时间:2005年11月22日 点击次数:2015 来源: 作者: 详细内容: . 做个最小系统板:如果你从没有做过ARM的开发,建议你一开始不要贪大求全,把所有的应用都做好,因为ARM的启动方式和dsp或单片机有所不同,往往会遇到各种问题,所以建议先布一个仅有Flash,SRAM或SDRAM、CPU、JTAG、和复位信号的小系统板,留出扩展接口。使最小系统能够正常运行,你的任务就完成了一半,好在ARM的外围接口基本都是标准接口,如果你已有这些硬件的布线经验,这对你来讲是一件很容易的事情。 2. 写启动代码,根据硬件地址先写一个能够启动的小代码,包括以下部分: 初始化端口,屏蔽中断,把程序拷贝到SRAM中;完成代码的重映射;配置中断句柄,连接到C语言入口。也许你看到给你的一些示例程序当中,bootloader会有很多东西,但是不要被这些复杂的程序所困扰,因为你不是做开发板的,你的任务就是做段小程序,让你的应用程序能够运行下去 3. 仔细研究你所用的芯片的资料,尽管ARM在内核上兼容,但每家芯片都有自己的特色,编写程序时必须考虑这些问题。尤其是女孩子,在这儿千万别有依赖心理,总想拿别人的示例程序修改,却越改越乱。 4. 多看一些操作系统程序,在ARM的应用开放源代码的程序很多,要想提高自己,就要多看别人的程序,linux,uc/os-II等等这些都是很好的原 码。 6.如果你是作硬件,每个厂家基本上都有针对该芯片的DEMO板原理图。先将原理图消化。这样你以后做设计时,对资源的分配心中有数。器件的DATSHEET一定要好好消化。 7.如果做软件最好对操作系统的机理要有所了解。当然这对软件工程师来说是小菜一碟。但如果是硬件出身的就有点费劲。 问:做最小系统板是2层还是4层好? 答:只有AT91可以用两层板,其他的最少4层;44b0的地和电源处理好也可用两层板; 谈四层板和33欧电阻: 选用四层板不仅是电源和地的问题,高速数字电路对走线的阻抗有要求,二层板不好控制阻抗。33欧电阻一般加在驱动器端,也是起阻抗匹配作用的;布线时要先布数据地址线,和需要保证的高速线; 在高频的时候,PCB板上的走线都要看成传输线。传输线有其特征阻抗,学过传输线理论的都知道,当传输线上某处出现阻抗突变(不匹配)时,信号通过就会发生反射,反射对原信号造成干扰,严重时就会影响电路的正常工作。采用四层板时,通常外层走信号线,中间两层分别为电源和地平面,这样一方面隔离了两个信号层,更重要的是外层的走线与它们所靠近的平面形成称为“微带”(microstrip) 的传输线,它的阻抗比较固定,而且可以计算。对于两层板就比较难以做到这样。这种传输线阻抗主要于走线的宽度、到参考平面的距离、敷铜的厚度以及介电材料的特性有关,有许多现成的公式和程序可供计算。 33欧电阻通常串连放在驱动的一端(其实不一定33欧,从几欧到五、六十欧都有,视电路具体情况) ,其作用是与发送器的输出阻抗串连后与走线的阻抗匹配,使反射回来(假设解收端阻抗没有匹配) 的信号不会再次反射回去(吸收掉),这样接收端的信号就不会受到影响。接收端也可以作匹配,例如采用电阻并联,但在数字系统比较少用,因为比较麻烦,而且很多时候是一发多收,如地址总线,不如源端匹配易做。 这里梭说的高频,不一定是时钟频率很高的电路,是不是高频不止看频率,更重要是看信号的上升下降时间。通常可以用上升(或下降) 时间估计电路的频率,一般取上升时间倒数的一半,比如如果上升时间是1ns,那么它的倒数是1000MHz,也就是说在设计电路是要按500MHz的频带来考虑。有时候要故意减慢边缘时间,许多高速IC其驱动器的输出斜率是可调的. |
2楼2006-12-15 07:47:46
|
ARM的希望:两种嵌入式操作系统的比较 ARM的希望:两种嵌入式操作系统的比较 摘 要: 嵌入式操作系统是嵌入式系统应用的核心。本文通过对两种典型的开源嵌入式操作系统的对比,分析和总结了嵌入式操作系统应用中的若干问题,归纳了嵌入式操作系统的选型依据。 关键词: 嵌入式;操作系统;mC/OS;mClinux 引言 随着现代计算机技术的飞速发展和互联网技术的广泛应用,从PC时代过渡到了以个人数字助理、手持个人电脑和信息家电为代表的3C(计算机、通信、消费电子)一体的后PC时代。后PC时代里,嵌入式系统扮演了越来越重要的角色,被广泛应用于信息电器、移动计算机设备、网络设备和工控仿真等领域。嵌入式系统的开发也成为近年IT行业的技术热点。 完成简单功能的嵌入式系统一般不需要操作系统,如以前许多MCS51系列单片机组成的小系统就只是利用软件实现简单的控制环路。但是随着所谓后PC时代的来临,嵌入式系统设计日趋复杂,嵌入式操作系统就必不可少了。 一般而言,嵌入式操作系统不同于一般意义的计算机操作系统,它有占用空间小、执行效率高、方便进行个性化定制和软件要求固化存储等特点。 从八十年代起,国际上就有一些IT组织、公司,开始进行商用嵌入式系统和专用操作系统的研发。这其中涌现了一些著名的嵌入式系统,如Microsoft公司的WinCE和WindRiverSystem公司的VxWorks就分别是非实时和实时嵌入式操作系统的代表。但是商用产品的造价都十分昂贵,用于一般用途会提高产品成本从而失去竞争力。 mC/OS和uClinux操作系统是两种性能优良源码公开且被广泛应用的的免费嵌入式操作系统,可以作为研究实时操作系统和非实时操作系统的典范。本文通过对mC/OS和mClinux的对比,分析和总结了嵌入式操作系统应用中的若干重要问题,归纳了嵌入式系统开发中操作系统的选型依据。 两种开源嵌入式操作系统介绍 mC/OS和mClinux操作系统,是当前得到广泛应用的两种免费且公开源码的嵌入式操作系统。mC/OS适合小型控制系统,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2k。mClinux则是继承标准Linux的优良特性,针对嵌入式处理器的特点设计的一种操作系统,具有内嵌网络协议、支持多种文件系统,开发者可利用标准Linux先验知识等优势。其编译后目标文件可控制在几百K量级。 mC/OS是一种免费公开源代码、结构小巧、具有可剥夺实时内核的实时操作系统。其内核提供任务调度与管理、时间管理、任务间同步与通信、内存管理和中断服务等功能。 mClinux是一种优秀的嵌入式Linux版本。mClinux是Micro-Conrol-Linux的缩写。同标准Linux相比,它集成了标准Linux操作系统的稳定性、强大网络功能和出色的文件系统等主要优点。但是由于没有MMU(内存管理单元),其多任务的实现需要一定技巧。 两种嵌入式操作系统主要性能比较 嵌入式操作系统是嵌入式系统软硬件资源的控制中心,它以尽量合理的有效方法组织多个用户共享嵌入式系统的各种资源。其中用户指的是系统程序之上的所有软件。所谓合理有效的方法,指的就是操作系统如何协调并充分利用硬件资源来实现多任务。复杂的操作系统都支持文件系统,方便组织文件并易于对其规范化操作。 嵌入式操作系统还有一个特点就是针对不同的平台,系统不是直接可用的,一般需要经过针对专门平台的移植操作系统才能正常工作。 进程调度、文件系统支持和系统移植是在嵌入式操作系统实际应用中最常见的问题,下文就从这几个角度入手对mC/OS和mClinux进行分析比较。 进程调度 任务调度主要是协调任务对计算机系统内资源(如内存、I/O设备、CPU)的争夺使用。进程调度又称为CPU调度,其根本任务是按照某种原则为处于就绪状态的进程分配CPU。由于嵌入式系统中内存和I/O设备一般都和CPU同时归属于某进程,所以任务调度和进程调度概念相近,很多场合不加区分,下文中提到的任务其实就是进程的概念。 进程调度可分为“剥夺型调度”和“非剥夺型调度”两种基本方式。所谓“非剥夺型调度”是指:一旦某个进程被调度执行,则该进程一直执行下去直至该进程结束,或由于某种原因自行放弃CPU进入等待状态,才将CPU重新分配给其他进程。所谓“剥夺型调度”是指:一旦就绪状态中出现优先权更高的进程,或者运行的进程已用满了规定的时间片时,便立即剥夺当前进程的运行(将其放回就绪状态),把CPU分配给其他进程。 作为实时操作系统,mC/OS是采用的可剥夺型实时多任务内核。可剥夺型的实时内核在任何时候都运行就绪了的最高优先级的任务。mC/OS中最多可以支持64个任务,分别对应优先级0~63,其中0为最高优先级。调度工作的内容可以分为两部分:最高优先级任务的寻找和任务切换。 其最高优先级任务的寻找是通过建立就绪任务表来实现的。mC/OS中的每一个任务都有独立的堆栈空间,并有一个称为任务控制块TCB(Task Control Block)数据结构,其中第一个成员变量就是保存的任务堆栈指针。任务调度模块首先用变量OSTCBHighRdy记录当前最高级就绪任务的TCB地址,然后调用OS_TASK_SW()函数来进行任务切换。 mClinux的进程调度沿用了Linux的传统,系统每隔一定时间挂起进程,同时系统产生快速和周期性的时钟计时中断,并通过调度函数(定时器处理函数)决定进程什么时候拥有它的时间片。然后进行相关进程切换,这是通过父进程调用fork函数生成子进程来实现的。 mClinux系统fork调用完成后,要么子进程代替父进程执行(此时父进程已经sleep),直到子进程调用exit退出;要么调用exec执行一个新的进程,这个时候产生可执行文件的加载,即使这个进程只是父进程的拷贝,这个过程也不可避免。当子进程执行exit或exec后,子进程使用wakeup把父进程唤醒,使父进程继续往下执行。 mClinux由于没有MMU管理存储器,其对内存的访问是直接的,所有程序中访问的地址都是实际的物理地址。操作系统队内存空间没有保护,各个进程实际上共享一个运行空间。这就需要实现多进程时进行数据保护,也导致了用户程序使用的空间可能占用到系统内核空间,这些问题在编程时都需要多加注意,否则容易导致系统崩溃。 由上述分析可以得知,mC/OS内核是针对实时系统的要求设计实现的,相对简单,可以满足较高的实时性要求。而mClinux则在结构上继承了标准Linux的多任务实现方式,仅针对嵌入式处理器特点进行改良。其要实现实时性效果则需要使系统在实时内核的控制下运行,RT-Linux就是可以实现这一个功能的一种实时内核。 文件系统 所谓文件系统是指负责存取和管理文件信息的机构,也可以说是负责文件的建立、撤销、组织、读写、修改、复制及对文件管理所需要的资源(如目录表、存储介质等)实施管理的软件部分。 mC/OS是面向中小型嵌入式系统的,如果包含全部功能(信号量、消息邮箱、消息队列及相关函数),编译后的mC/OS内核仅有6~10KB,所以系统本身并没有对文件系统的支持。但是mC/OS具有良好的扩展性能,如果需要的话也可自行加入文件系统的内容。 mClinux则是继承了Linux完善的文件系统性能。其采用的是romfs文件系统,这种文件系统相对于一般的ext2文件系统要求更少的空间。空间的节约来自于两个方面,首先内核支持romfs文件系统比支持ext2文件系统需要更少的代码,其次romfs文件系统相对简单,在建立文件系统超级块(superblock)需要更少的存储空间。Romfs文件系统不支持动态擦写保存,对于系统需要动态保存的数据采用虚拟ram盘的方法进行处理(ram盘将采用ext2文件系统)。 mClinux还继承了Linux网络操作系统的优势,可以很方便的支持网络文件系统且内嵌TCP/IP协议,这为mClinux开发网络接入设备提供了便利。 由两种操作系统对文件系统的支持可知,在复杂的需要较多文件处理的嵌入式系统中mClinux是一个不错的选择。而mC/OS则主要适合一些控制系统。 操作系统的移植 嵌入式操作系统移植的目的是指使操作系统能在某个微处理器或微控制器上运行。mC/OS和mClinux都是源码公开的操作系统,且其结构化设计便于把与处理器相关的部分分离出来,所以被移植到新的处理器上是可能的。 以下对两种系统的移植分别予以说明。 (1)mC/OS的移植 要移植mC/OS,目标处理器必须满足以下要求; ·处理器的C编译器能产生可重入代码,且用C语言就可以打开和关闭中断; ·处理器支持中断,并能产生定时中断; ·处理器支持足够的RAM(几K字节),作为多任务环境下的任务堆栈; ·处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令。 在理解了处理器和C编译器的技术细节后,mC/OS的移植只需要修改与处理器相关的代码就可以了。具体有如下内容: ·OS_CPU.H中需要设置一个常量来标识堆栈增长方向; ·OS_CPU.H中需要声明几个用于开关中断和任务切换的宏; ·OS_CPU.H中需要针对具体处理器的字长重新定义一系列数据类型; ·OS_CPU_A.ASM需要改写4个汇编语言的函数; ·OS_CPU_C.C需要用C语言编写6个简单函数; ·修改主头文件INCLUDE.H,将上面的三个文件和其他自己的头文件加入。 (2)mClinux的移植 由于mClinux其实是Linux针对嵌入式系统的一种改良,其结构比较复杂,相对mC/OS,mClinux的移植也复杂得多。一般而言要移植mClinux,目标处理器除了应满足上述mC/OS应满足的条件外,还需要具有足够容量(几百K字节以上)外部ROM和RAM。 mClinux的移植大致可以分为3个层次: ·结构层次的移植,如果待移植处理器的结构不同于任何已经支持的处理器结构,则需要修改linux/arch目录下相关处理器结构的文件。虽然mClinux内核代码的大部分是独立于处理器和其体系结构的,但是其最低级的代码也是特定于各个系统的。这主要表现在它们的中断处理上下文、内存映射的维护、任务上下文和初始化过程都是独特的。这些例行程序位于linux/arch/目录下。由于Linux所支持体系结构的种类繁多,所以对一个新型的体系,其低级例程可以模仿与其相似的体系例程编写。 ·平台层次的移植,如果待移植处理器是某种mClinux已支持体系的分支处理器,则需要在相关体系结构目录下建立相应目录并编写相应代码。如MC68EZ328就是基于无MMU的m68k内核的。此时的移植需要创建linux/arch/m68knommu/platform/ MC68EZ328目录并在其下编写跟踪程序(实现用户程序到内核函数的接口等功能)、中断控制调度程序和向量初始化程序等。 ·板级移植,如果你所用处理器已被mClinux支持的话,就只需要板级移植了。板级移植需要在linux/arch/?platform/中建立一个相应板的目录,再在其中建立相应的启动代码crt0_rom.s或crt0_ram.s和链接描述文档rom.ld或ram.ld就可以了。板级移植还包括驱动程序的编写和环境变量设置等内容。 结语 通过对mC/OS和mClinux的比较,可以看出这两种操作系统在应用方面各有优劣。mC/OS占用空间少,执行效率高,实时性能优良,且针对新处理器的移植相对简单。mClinux则占用空间相对较大,实时性能一般,针对新处理器的移植相对复杂。但是,mCLinux具有对多种文件系统的支持能力、内嵌了TCP/IP协议,可以借鉴Linux丰富的资源,对一些复杂的应用,mClinux具有相当优势。例如CISCO公司的 2500/3000/4000 路由器就是基于mClinux操作系统开发的。 总之,操作系统的选择是由嵌入式系统的需求决定的。简单的说就是,小型控制系统可充分利用mC/OS小巧且实时性强的优势,如果开发PDA和互联网连接终端等较为复杂的系统则mClinux是不错的选择。 欢迎进入老古开发网论坛对ARM的希望:两种嵌入式操作系统的比较进行讨论 [ARM设计] 相关文章: ARM处理器及物理IP超过750MHz 简介: ARM公司宣布了一项具有突破性高性能的ARM1176JZF-STM处理器的实现,通过使用ARM® Artisan® AdvantageTM单元库及内存,这一处理器的频率在90纳米代工厂工艺下超过了750MHz,芯片面积却仅为2.4平方毫米。这一性能的显著提升得益于协作设计、先进的物理IP以及处理器技术的共同贡献。最优化后的实现为现有的应用及操作系统带来了业界领先的超过920 Dhrystone MIPS的性能表现,而不需要任何昂贵的软件再设计或再编译费用。 |
3楼2006-12-15 07:48:08
4楼2006-12-15 09:41:47
简单回复
cyh6185楼
2007-02-24 18:22
回复













回复此楼