三种常用的嵌入式操作系统分析与比较.pdf
《三种常用的嵌入式操作系统分析与比较.pdf》由会员分享,可在线阅读,更多相关《三种常用的嵌入式操作系统分析与比较.pdf(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、三种常用的嵌入式操作系统分析与比较摘要:提要三种常用的嵌入式操作系统Palm OS、Windows CE、Linux;在此基础上、分析、比较这三种嵌入式操作系统,给出它们之间的异同点及各自的适用范围。1 嵌入式系统与嵌入式操作系统 1.1 嵌入式系统 嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性能有严格要求的专用计算机系统。嵌入式系统应具有的特点是:高可靠性;在恶劣的环境或突然断电的情况下,系统仍然能够正常工作;许多嵌入式应用要求实时性,这就要求嵌入式操作系统具有实时处理能力;嵌入式系统和具体应用有机地结合在
2、一起,它的升级换代也是具体产品同步进行;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器中或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。1.2 嵌入式操作系统 嵌入式操作系统 EOS(Embedded Operating System)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS 负责嵌入系统的全部软、硬件资源的分配、调度作,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。目前,已推出一些应用比较成功的 EOS 产品系列。随着 Internet 技术的发展、信息家电的普及应用及 EOS
3、的微型化和专业化,EOS 开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS 是相对于一般操作系统而方的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还有以下特点:可装卸性。开放性、可伸缩性的体系结构。强实时性。EOS 实时性一般较强,可用于各种设备控制当中。统一的接口。提供各种设备驱动接口。操作方便、简单、提供友好的图形 GUI,图形界面,追求易学易用。提供强大的网络功能,支持 TCP/IP 协议及其它协议,提供 TCP/UDP/IP/PPP 协议支持及
4、统一的 MAC访问层接口,为各种移动计算设备预留接口。强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的 EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统的调用命令向用户程序提供服务。固化代码。在嵌入式系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的 ROM 中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。更好的硬件适应性,也就是良好的移植性。国际上用于信息电器的嵌入式操作系统有 40 种左右。现在,市场上非常流行的 EOS 产品,包括 3Com公司下
5、属子公司的 Palm OS,全球占有份额达 50%,Microsoft 公司的 Windows CE 不过 29%。在美国市场,Palm OS 更以 80%的占有率远超 Windows CE。开放源代码的 Linux 很适于做信息家电的开发。比如:中科红旗软件技术有限公司开发的红旗嵌入式Linux和美商网虎公司开发的基于Xlinux 的嵌入式操作系统“夸克”。“夸克”是目前全世界最小的 Linux,它有两具很突出的特点,就是体积小和使用GCS 编码。2 三种常用的嵌入式操作系统 2.1 Palm OS Palm 是 3Com 公司的产品,其操作系统为 Palm OS。Palm OS 是一种 3
6、2 位的嵌入式操作系统。Palm提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据;拥有开放的OS 应用程序接口,开发商可根据需要自行开发所需的应用程序。Palm OS 是一套具有术强开放性的系统,现在有大约数千种专用为 Palm OS 编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案,Palm OS 无所不包。在丰富的软件支持下,基于 Palm OS 的掌上电脑功能得以不断扩展。Palm OS 是一套专门为掌上电脑开发的 OS。在编写程序时,Palm OS 充分考虑了掌上电脑内存相对较小的情况,因此它只占有非常小的内存。由于基于 Palm O
7、S 编写的应用程序占用的空间也非常小(通常只有几十 KB),所以,基于 Palm OS 的掌上电脑(虽然只有几 MB 的 RAM)可以运行众多应用程序。由于 Palm 产品的最大特点是使用简便、机体轻巧,因此决定了 Palm OS 应具有以下特点。操作系统的节能功能。由上掌上电脑要求使用电源尽可能小,因此在 Palm OS 的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。合理的内存管理。Palm 的存储器全部是可读写的快速 RAM,动态 RAM(Dynamic RAM)类似于 PC机上的 RAM,它为全
8、局变量和其它不需永久保存的数据提供临时的存储空间;存储 RAM(Storage RAM)类似于 PC 机上的硬盘,可以永久保存应用程序和数据。Palm OS 的数据是以数据库(database)的格式来存储的。数据库是由一组记录(records)和一些数据库头信息组成的。为保证程序处理速度和存储器空间,在处理数据的时候,Palm OS 不是把数据从存储堆(Storage Heap)拷贝到动态堆(Dynamic Heap)后再进行处理,而是在存储堆中直接处理。为避免错误地调用存储器地址,Palm OS 规定,这一切都必须调用其内存管理器里的 API 来实现。Palm OS 与同步软件(HotSy
9、nc)结合可以使掌上电脑与 PC 机上的信息实现同步,把台式同的功能扩展到了掌上电脑。Palm 应用范围相当广泛,如:联络及工作表管理、电子邮件及互联网通信、销售人员及组别自动化等等。Palm 外围硬件也十分丰富,有数码相机、GPS 接收器、调制解调器、GSM 无线电话、数码音频播放设备、便携键盘、语音记录器、条码扫描、无线寻呼接收器、探测仪。其中 Palm 与 GPS 结合的应用,不但可以作导航定位,还可以结合 GPS 作气候的监测、地名调查等。2.2 Windows CE Windows CE 是微软开发的一个开放的、可升级的 32 位嵌入式操作系统,是基于掌上型电脑类的电子设备操作。它是
10、精简的 Windows 95。Windows CE 的图形用户界面相当出色。其中 CE 中的 C 代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivity)和伴侣(Companion);E 代表电子产品(Electronics)。与 Windows 95/98、Windows NT 不同的是,Windows CE 是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于 Windows 95/98,但 Windows CE 是基于 Win32 API重新开发的、新型的信息设备平台。Windows CE 具有模块化、结构化和基于 Win32 应用程序
11、接口以及与处理器无关等特点。Windows CE 不仅继承了传统的 Windows 图形界面,并且在Windows CE 平台上可以使用 Windows 95/98 上的编程工具(如 Visual Basic、Visual C+等)、使用同样的函数、使用同样的界面网格,使绝大多数的应用软件只需简单的修改和移植就可以在 Windows CE 平台上继续使用。Windows CE 的设计目标是:模块化及可伸缩性、实时性能好,通信能力强大,支持多种 CPU。它的设计可以满足多种设备的需要,这些设备包括了工业控制器、通信集线器以及销售终端之类的企业设备,还有像照相机、电话和家用娱乐器材之类的消费产品。
12、一个典型的基于 Windows CE 的嵌入系统通常为某个特定用途而设计,并在不联机的情况下工作。它要求所使用的操作系统体积较小,内建有对中断的响应功能。Windows CE 的特点有:具有灵活的电源管理功能,包括瞬眠/唤醒模式。使用了对象存储(object store)技术,包括文件系统、注册表及数据库。它还具有很多高性能、高效率的操作系统特 性,包括按需换页、共享存储、交叉处理同步、支持大容量堆(heap)等。拥有良好的通信能力。广泛支持各种通信硬件,亦支持直接的局域连接以及拨号连接,并提供与 PC、内部网以及 Internet 的连接,还提供与 Windows 9x/NT 的最佳集成和通
13、信。支持嵌套中断。允许更高优先级别的中断首先得到响应,而不是等待低级别的 ISR 完成。这使得该操作系统具有嵌入式操作系统所要求的实时性。更好的线程响应能力。对高级别 IST(中断服务线程)的响应时间上限的要求更加严格,在线程响应能力方面的改进,帮助开发人员掌握线程转换的具体时间,并通过增强的监控能力和对硬件的控制能力帮助他们创建新的嵌入式应用程序。256 个优先级别。可以使开发人员在控制嵌入式系统的时序安排方面有更大的灵活性。Windows CE 的 API 是 Win32 API 的一个子集,支持近 1500 个 Win32 API。有了这些 API,足可以编写任何复杂的应用程序。当然,在
14、 Windows CE 系统中,所提供的 API 也可以随具体应用的需求而定。在掌上型电脑中,Windows CE 包含如下一些重要组件:Pocket Outlook 及其组件、语音录音机、移动频道、远程拨号访问、世界时钟、计算器、多种输入法、GBK 字符集、中文 TTF 字库、英汉双向词典、袖珍浏览器、电子邮件、Pocket Office、系统设置、Windows CE Services 软件。2.3 Linux Linux 是一个类似于 Unix 的操作系统。它起源于芬兰一个名为 Linus Torvalds 的业余爱好,但是现在已经是最为流行的一款开放源代码的操作系统。Linux 从 1
15、991 年问世到现在,短短 10 年的时间内已发展成为一个功能强大、设计完善的操作系统,伴随网络技术进步而发展起来的 Linux OS 已成为 Microsoft 公司的 DOS 和 Windows 95/98 的强劲对手。Linux 系统不仅能够运行于 PC 平台,还在嵌入式系统方面大放光芒,在各种嵌入式 Linux OS 迅速发展的状况下,Linux OS 逐渐形成了可与 Windows CE 等 EOS 进行抗衡的局面。目前正在开发的嵌入式系统中,49%的项目选择 Linux 作为嵌入式操作系统。Linux 现已成为嵌入式操作的理想选择。中科红旗软件技术有限公司开发的红旗嵌入式Linux
16、 正在成为许多嵌入式设备厂商的首选。在不到一年的时间内,红旗公司先后推出了 PDA、机顶盒、瘦客户机、交换机用的嵌入式 Linux 系统,并且投入了实际应用。现以红旗嵌入式 Linux 为例来讲解嵌入式 Linux OS 的特点:精简的内核,性能高、稳定,多任务。适用于不同的 CPU,支持多种体系结构,如 X86、ARM、MIPS、ALPHA、SPARC 等。能够提供完善的嵌入式 GUI 以及嵌入式 X-Windows。提供嵌入式浏览器、邮件程序、MP3 播放器、MPEG 播放器、记事本等应用程序。提供完整的开发工具和 SDK,同时提供 PC 上的开发版本。用户可定制,可提供图形化的定制和配置
17、工具。常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。完善的中文支持,强大的技术支持,完整的文档。开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。3 三种嵌入式操作系统的比较 3.1 Linux OS 与 Windows Ce 的比较 嵌入式 Linux OS 与 Windows CE 相比的优点:第一,Linux 是开放源代码的,不在存黑箱技术,遍布全球的众多 Linux 爱好者都是 Linux 开发者的强大技术支持者;而 Windows CE 是非开放性 OS,使第三方很难实现产品定制。第二
18、,Linux 的源代码随处可得,注释丰富,文档齐全,易于解决各种问题。第三,Linux 的内核小、效率高;而 Windows CE 在这方面是笨拙的,占用过多的 RAM,应用程序庞大。第四,Linux 是开放源代码的 OS,在价格上极具竞争力,适合中国国情。Windows CE 的版权费用是厂家不得不考虑的因素。第五,Linux 不仅支持 x86 芯片,还是一个跨平台的系统。到目前为止,它可以支持 2030种 CPU,很多 CPU(包括家电业的芯片)厂商都开始做Linux 的平台移植工作,而且移植的速度远远超过 Java 的开发环境。如果今天采用 Linux 环境开发产品,那么将来更换 CPU
19、 时就不会遇到更换平台的困扰。第六,Linux 内核的结构在网络方面是非常完整的,它提供了对包括十兆位、百兆位及千兆位的以太网络,还有无线网络、Token ring(令牌环)和光纤甚至卫星的支持。第七,Linux 在内核结构的设计中考虑适应系统的可裁减性的要求,Windows CE 在内核结构的设计中并未考虑适应系统的高度可裁减性的要求。嵌入式 Linux OS 与 Windows CE 相比的弱点:第一,是开发难度较高,需要很高的技术实力;第二,是核心调试工具不全,调试不太方便,尚没有很好的用户图形界面;第三,与某些商业 OS 一样,嵌入式Linux 占用较大的内存,当然,人们可以去掉部分无
20、用的功能来减小使用的内存,但是如果不仔细,将引起新的问题;第四,有些 Linux 的应用程序需要虚拟内存,而嵌入式系统中并没有或不需要虚拟内存,所以并非所有的 Linux 应用程序都可以在嵌入式系统中运行。3.2 Palm OS 与 Windows CE 的比较 3Com 公司的 Palm OS 是掌上电脑市场中较为优秀的嵌入式操作系统,是针对这一市场专门设计的系统。它有开放的操作系统应用程序接口(API),支持开发商根据需要自行开发所需的应用程序,具有十分丰富的应用程序。在掌上电脑市场上独占其霸主地位已久。从技术层面上讲,Palm OS 是一套专门为掌上电脑开发的操作系统,具有许多 Wind
21、ows CE 无法比拟的优势;Windows CE 过于臃肿,不适合应用在廉价的掌上电脑中。Palm OS 是一套具有极强开放性的系统。开发者向用户免费提供Palm OS 的开发工具,允许用户利用该工具在 Palm OS 基础上方便地编写、修改相关软件。与之相比,Windows CE 的开发工具就显得复杂多了,这使得一般用户很难掌握。这也 Palm OS 与 Windows CE 的另一个主要区别。我们从常用 EOS 的大小、可开发定制、互操作性、通用性、实时性及应用领域几个方面,通过表 1 来归纳如下:表 1 Palm OS Windows CE 3.0 嵌入 Linu 大小 核心几十 KB
22、,整个嵌入环境也不大 核心占 500KB 的 ROM 和 250KB的 RAM。整个 Windows CE 操作系统,包括硬件抽象层(HAL 和Hardware Abstraction Layer)、Windosw CE Kernel、User、GDI、文件系统和数据库,大约共1.5MB 核心从几十 KB 到 500KB。整个嵌入式环境最小才100KB 左右,并且以后还将越来越小 可开发定制 可以方便地开发定制 用户开发定制不方便,受Microsoft 公司限制较多 用户可以方便地开发定制,可以自由卸装用户模块,不受任何限制 互操作性 互操作性强 互操作性比较强,Windows C 可通过 O
23、EM 的许可协议使用于其它设备 互操作性很强 通用性 适用于多种 CPU 和多种硬件平台 适用于多种 CPU 和多种硬件平台 不仅适应于 x86 芯片,并且可以支持 30 多种 CPU 和多种硬件平台,开发和使用都很容易 实用性 比较好 比较好 很好 适用的应用领域 应用领域较广,特别适用于掌上电脑的开发 应用领域较广。WindowsC 是为新一代非传统的 PC 设备而设计的,这些设备包括掌上电脑、手持电脑以及用于车载电脑等 由于 Linu 内核结构及功能等原因,嵌入式 Linu 应用领域非常广泛,特别适于进行信息家电的开发 结语 Palm OS、Windows CE、Linux 这三种嵌入式
24、操作系统各有不同的特点,不同的用途;但Linux 比Palm OS 和 Windows CE 更小、更稳定,而且 Linux 是开放的 OS,在价格上极具竞争力。如今整个市场尚未成型,嵌入式操作系统也未形成统一的国际标准,而且 Linux 的一系列特征又为我们开发国产的嵌入式操作系统提供了方便,因此,我们有机会在这个未成熟的市场上占有一席之地。系统分类:汽车电子 用户分类:单片机基础 标签:无标签 来源:转贴 发表评论 阅读全文(282)|回复(4)5 本周最热门”中出现,认为够“牛”就投上一票吧!AutoHide=false 基于裸机编程的实时系统 发表于 2008-1-13 3:27:40
25、 摘要 在系统控制过程中,实时性是系统性能的一个重要测试指标。应用实时操作系统是保证实时性的一种普遍方法,但是一些资源相对缺乏的 单片机是不适合用操作系统的。本文介绍在中低档控制系统中,在不采用实时操作系统的情况下,如何对多个任务进行控制,以达到实时性要求的方法。关键词 嵌入式系统 单片机 实时操作系统 引言 在嵌入式控制系统的设计中,如何对被控制的多个任务进行有效协调,使其动作顺序合理、响应速度快捷,往往是设计者所考虑的一个很重要的方面,也是衡量检验一个系统的综合性能的重要指标。为了在多个任务的协调控制中满足实时性的要求,设计者往往会考虑在系统中嵌入目前流行的某种实时操作系统。现在也有一些通
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 嵌入式 操作系统 分析 比较
限制150内