四种常用嵌入式RTOS的比较与选择.ppt
《四种常用嵌入式RTOS的比较与选择.ppt》由会员分享,可在线阅读,更多相关《四种常用嵌入式RTOS的比较与选择.ppt(48页珍藏版)》请在三一办公上搜索。
1、四种常用嵌入式RTOS的比较与选择,华南理工大学自动化系,一:综述,1.嵌入式系统与嵌入式操作系统2.嵌入式操作系统的特点3.实时操作系统(RTOS)4.四种常用的嵌入式RTOS,1.嵌入式系统与嵌入式操作系统简介,嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。嵌入式操作系统EOS(Embedded Operating System),负责嵌入系统的全部软、硬件资源的分配、调度,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。,一:综述,
2、2.嵌入式操作系统的特点,可装卸性。开放性、可伸缩性的体系结构。强实时性。EOS实时性一般较强,可用于各种设备控制当中。统一的接口。提供各种设备驱动接口。操作方便、简单、提供友好的图形GUI。提供强大的网络功能。支持TCP/IP协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统
3、计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。更好的硬件适应性。也就是良好的移植性。,一:综述,3.实时操作系统(RTOS),RTOS与其他操作系统不同的一个特征是:它们必须至少有一个中断,其服务能保证在一个给定的时间内完成,而不论是否发生其他事情。,一:综述,4.四种常用的嵌入式RTOS,RT-LinuxQNXVxworksNucleus,二:如何选择嵌入式实时操作系统?,1 实时操作系统对我来说真的必要吗?2 工具的相互关系 3 RTOS的选择准则 4 内核要求的最小存储器大小 5 性能 6软件组件和设备驱
4、动程序 7 调试工具 8 标准兼容性 9技术支持 10源代码还是目标代码?11许可 12声誉,1.实时操作系统真的必要吗?,为什么需要实时操作系统?对于商用多任务OS,其目的是方便用户管理计算机资源,追求系统资源最大利用率;而RTOS追求的是实时性、可确定性、可靠性。,二:如何选择RTOS,微处理器、在线仿真器(ICE)、编译器、汇编器、连接器、调试器以及模拟器都这样或那样地影响着操作系统。在线仿真器(ICE)和良好的集成开发环境对嵌入式开发有至关重要的作用。,2工具的相互关系,二:如何选择RTOS,3RTOS的选择准则,评价与选择一个实时操作系统一般可以从任务调度、内存管理、任务通讯、内存开
5、销、任务切换时间、最大中断禁止时间等几个方面来衡量。(1)任务调度机制:RTOS的实时性和多任务能力在很大程度上取决于它的任务调度机制。(2)内存管理:分实模式与保护模式。(3)最小内存开销:RTOS的设计过程中,最小内存开销是一个较重要的指标,它涉及到嵌入式的成本。(4)最大中断禁止时间:(5)任务切换时间:,4内核要求的最小存储器大小,实时操作系统可以装入小得令人惊讶的内存中。最小的内核经常是仅仅支持很少的特性,而典型的配置可能产生大得多的内核。一般情况下,供应商可以提供一份详细的列表,说明了创建包含不同服务的内核分别需要多大的RAM和ROM。,二:如何选择RTOS,5性能,对所有的项目来
6、说,性能无不是个大问题。但是要了解RTOS对系统的影响却不那么容易。当比较供应商提供的benchmark时要明白他们是要测试什么?供应商使用的是什么评估板?微处理器的时钟频率是多少?使用的什么存储系统?存储器访问使用了几个等待周期?只有弄清楚了这些才能作出公平的对比。,6软件组件和设备驱动程序,嵌入式系统应该通过各种标准加大开发需求的互操作性,开发者可能要依赖于他人开发的组件。若应用需要通信协议、服务、库或者其他组件(如TCP/IP、HTTP、ftp、telnet、SNMP、CORBA和图形),从哪里获得它们得事先弄清楚。不同操作系统供应商提供这些特性或驱动程序的方式可能不同,有的作为操作系统
7、的一部分,有的作为可选配件。,二:如何选择RTOS,7调试工具,一个良好的集成开发环境和调试工具有助于开发者提高开发速度、发现开发中的错误(如死锁、忘了放信号灯)等。,8标准兼容性,标准兼容性好的RTOS利于别的开发软件的移植。RTOS服务有一个POSIX标准。,10技术支持,技术支持包含哪些内容:培训、文档、电话和电子支持等?这对RTOS上开发很重要,良好的技术支持可以使开发者少走很多弯路。,二:如何选择RTOS,11源代码还是目标代码?,有些供应商提供给全部源代码。而其他的仅提供目标代码。这两种方式都能开发出优秀的产品。对那些没有源代码的来说,也不必担心无法配置内核。供应商会在头文件中给出
8、必要的常量使开发者可以根据需要微调内核。,12许可,购买某些高级的RTOS属于重大的商业事务,有许多费用要考虑。有的供应商一次性地收取一大笔费用,而有的供应商的收费遍及每用户、每平台、每产品、每位置。这需要了解清楚。,二:如何选择RTOS,13声誉,还有一点是要了解该RTOS供应商的声誉。如:技术支持如何?稳定的商务活动开始多久了?公司有多少职员?供应商的网站上有有价值的信息吗?这种RTOS在哪个行业表现最好?公司的质量系统状况如何?公司通过了ISO9001认证吗?,三:四种嵌入式RTOS各自的特点,弄清了以上的一些问题之后,初步得到了一个选择的依据。下面,在这个依据的基础上,把Linux,Q
9、NX,Vxworks和Nucleus这四种嵌入式RTOS各自的特点和各种性能指标作一个罗列,从而达到对它们有个大致的了解。提纲:(一)开发环境及其工具(二)RTOS的性能指标(三)内核(四)软件组件和设备驱动程序(五)硬件支持(六)标准兼容性(七)技术支持(八)源代码还是目标代码(九)价格,许可,声誉 综合评价。,Linux,(一)开发环境及其工具Linux有着非常优秀的完整开发工具链,有十几种集成开发环境,其中很多是免费的,大大降低了开发费用。,右图是一个典型的嵌入式Linux开发环境,它包括主机(工作站或者PC)支持GDB的调试工具,目标板和网络。,Linux 的特点,除了硬件环境外,还需
10、要软件开发环境。基于Linux的开发环境主要包括主机上的Linux操作系统,比如RedHat Linux。,上图是嵌入式 Linux 开发流程图。一般的开发过程是,设计目标板,建立嵌入式Linux开发环境,编写、调试Boot Loader;编写、调试 Linux 内核;编写、调试应用程序;编写、调试BSPBoard Support Package)。Boot Loader用于初始化目标板,检测目标板和引导 Linux 内核。BDM/JTAG用于目标板开发,它可以检测目标板硬件,初始化目标板,调试Boot Loader和BSP。,(二)RTOS的性能指标,1.Linux本身不是实时的操作系统。R
11、T-Linux在Linux的基础上打包实现Linux的实时性。2.RT-Linux实现了一个小的实时核心,仅支持底层任务创建、中断服务例程的装入、底层任务通信队列、中断服务例程(ISR)和Linux进程。原来的非实时Linux核心作为一个可抢先的任务运行于这个小核心之上,所有的任务都在核心地址空间运行。它不同于微内核和大型内核,属于实时体系结构。其可靠性和可维护性对电信服务系统来说都不够理想,但应用于相对小的嵌入式系统性能还行。3.调度策略 RT-Linux在操作系统之下实现了一个简单的实时核心,Linux本身作为一个可抢占的任务在核内运行,优先级最低,随时会被高优先级任务抢占。,Linux
12、的特点,(三)内核,+-+-+|应用程序层(Application Layout)|级别=3|+-+-+|服务器层(Deamon/Server Layout)|=2|+-+-+|设备驱动层(Drivers Manager)|=1|+-+-+|进程管理层(Process Manager)|=0|+-+-+|硬件(裸机)|+-+-+,Linux 的特点,Linux采用的是带保护的平行内核体系(见上图)。其优点是:(1)采用平行内核,因为各层次间以及同层次间的实现比较独立,这种体系的稳定性就要好的多,如果一个子系统崩溃,系统一般不会全部瘫痪;(2)可以更容易地添加新服务模块,Linux甚至无须重新启
13、动。缺点是:(1)当高层模块(如加减设备,服务器时)更新时,往往更新了特权任务表的内容,所以内核需要重新编译.(2)这种体系的底层代码和硬件直接关联,且功能越强,这种关联越紧,再加上核心比微内核体系要大得多,所以移植也要费事。,(四)软件组件和设备驱动程序,Linux具有完善的网络通讯、图形、文件管理机制。网络是Linux的强项,Linux还支持多种文件和图形系统。同时,Linux上的驱动已经非常丰富了,它们支持各种主流硬件设备和最新硬件技术。Linux的系统服务:近来,很多基于Linux的实时应用被开发出来,它具有成熟和丰富的资源。UNIX用户的开发工具和应用软件都可移植到Linux上。TC
14、P/IP网络协议。各种Internet客户/服务端软件。X Window。C/C、Java等语言编译器。,Linux 的特点,(五)硬件支持:,支持多种体系结构,如X86、ARM、MIPS、ALPHA、SPARC等目前,Linux已经被移植到数十种硬件平台上,几乎支持所有流行的CPU。,Linux 的特点,(六)标准兼容性:,Linux可作为一个嵌入式操作系统,它支持POSIX.1b标准。,(七)技术支持,Linux具有开放性:(1)用户可得到UNIX的全部开发工具。(2)可使用市场上便宜又常见的硬件。,Linux 的特点,(八)源代码还是目标代码,Linux是源代码完全公开的。Linux的内
15、核映像bzImage.bin大小为569,764大小。加上其他应用程序,其大小可在2M左右。,(九)价格,许可,声誉:,Linux的最大优势便是经济,免费,源代码公开,是最吸引人的。毫无疑问,这会节省大量的开发费用。同时,它也可以随意地配置不需要任何的许可证或商家的合作关系。市场上的带有Linux的2410评估板已经大量出现,据目前情况所了解,合肥市的华恒科技公司的评估板需:2,500元,内带Linux操作系统,评估板中有USB接口,以太网接口,串口和3.5寸64K色彩屏,提供底板的原理图。同康科技公司的评估板需:9,600元,配置和华恒公司的类似,带有Linux操作系统,并提供全部电路原理图
16、。,Linux 的特点,综合评价:,正如上所述,Linux最大的优势经济,免费,源代码公开,可以节省大量的开发费用,并且,它本身内置网络支持,高度的模块化使添加部件非常容易。Linux在中国蓬勃发展起来,基于Linux的嵌入式评估板具有价格低、可选性强、技术支持多样化等优点。同时Linux的评估板集中了各种各样的资源,如网口、液晶屏、触摸屏,USB口的驱动等。选择2410的嵌入式Linux软件开发平台和OEM板。可以帮助我们在应用项目立项前,评估项目的可行性。在应用项目立项后,使软件开发和硬件开发同步进行。极大地缩短应用产品开发周期。缺点:开发工具和开发环境不尽人意,如单步仿真,这增加开发的难
17、度。,Linux 的特点,QNX,(一)开发环境及其工具QNX Momentics开发系统在集成环境下提供无缝连接的工具链和各种板级支持包、库函数、源码开发工具。QNX Momentics开发系统很容易学。最重要的是,QNX Momentics开发系统提供各种各样的选择:构建各种目标(如x86,MIPS,PowerPC,ARM,StrongARM,Xscale)、选择语言(如C,C+或JAVA)、开发系统宿主(windows或Neutrino自宿主)。,(二)RTOS的性能指标,调度策略:QNX 提供POSIX.1b标准进程调度:32个进程优先级;抢占式的、基于优先级的正文切换;可选调度策略:
18、FIFO、轮转策略、适应性 策略。,(三)内核,QNX的瘦微内核体系+-+-+|应用程序层(Utilities Process)|+-+-+|系统进程层(System Process)|+-+-+|核心层(OS Kernel)|+-+-+|硬件(裸机)|+-+-+,QNX的特点,QNX是一个微内核实时操作系统,其核心仅提供4种服务:进程调度、进程间通信、底层网络通信和中断处理,其进程在独立的地址空间运行。所有其它OS服务,都实现为协作的用户进程,因此QNX核心非常小巧(QNX4.x大约为12Kb)而且运行速度极快。,优点是:(1)有微内核体系的一切优点,另外,将来移植到SMP体系时,只要把核心
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 嵌入式 RTOS 比较 选择
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5378420.html