1、 浅谈嵌入式操作系统专业班级:软工四班学生学号:20117610742学生姓名:王凯林摘要:以应用为中心、以计算机为基础的嵌入式技术,是当今发展最快、应用最广、最具有发展前景的主要技术之一。作为嵌入式系统的重要组成部分,嵌入式操作系统(Embedded Operation System,EOS )是随着嵌入式系统的发展而出现的,是嵌入式系统发展到一定阶段的产物。嵌入式操作系统的出现,大大提高了嵌入式系统的开发效率,同时也促进了嵌入式的发展。本文主要涉及嵌入式操作系统的简介、嵌入式操作系统的特点以及几种常见的嵌入式操作系统的比较。引言:嵌入式操作系统(Embedded Operation Sys
2、tem,EOS )是一种用途广泛的系统软件,过去它主要应用与工业控制和国防系统领域。EOS 负责嵌入系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。已推出一些应用比较成功的 EOS 产品系列。随着 Internet 技术的发展、信息家电的普及应用及 EOS 的微型化和专业化, EOS 开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。EOS 是相对于一般操作系统而言的,它除具有了一般操作系统最基本的功能,还有以下功能
3、:如任务调度、同步机制、中断处理、文件处理等。嵌入式操作系统简介:嵌入式操作系统(Embedded Operating System,又称实时操作系统)是指用于嵌入式系统的操作系统。嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。嵌入式实时操作系统(RTOS)是嵌入式系统的基础运行平台,是嵌入式系统稳定、可靠工作的基础,其功能和性能的好坏将直接影响嵌入式系
4、统的功能和性能。嵌入式时实操作系统目前应用的范围越来越广,逐渐成为今后操作系统开发和发展的主要方向。其应用领域大到工业控制,小到个人消费用品如数码相机,手机,PDA 等无处不在,通信系统也大量的使用嵌入式实时操作系统作为操作系统平台。.嵌入式系统发展过程:纵观嵌入式系统的发展历程,大致经历了以下四个阶段:(1) 无操作系统阶段嵌入式系统最初的应用是基于单片机的,大多以可编程控制器的形式出现,具有监测、伺服、设备指示等功能 通常应用于各类工业控制和飞机、导弹等武器装备中,一般没有操作系统的支持,只能通过汇编语言对系统进行直接控制,运行结束后再清除内存。这些装置虽然已经初步具备了嵌入式的应用特点,
5、但仅仅只是使用8位的CPU芯片来执行一些单线程的程序,因此严格地说还谈不上 系统 的概念。这一阶段嵌入式系统的主要特点是:系统结构和功能相对单一,处理效率较低,存储容量较小,几乎没有用户接口。由于这种嵌入式系统使用简便、价格低廉,因而曾经在工业控制领域中得到了非常广泛的应用,但却无法满足现今对执行效率、存储容量都有较高要求的信息家电等场合的需要。(2) 简单操作系统阶段20世纪80年代,随着微电子工艺水平的提高,Ic制造商开始把嵌入式应用中所需要的微处理器、IO接口、串行接口以及RAM、ROM等部件统统集成到一片VLSI中,制造出面向I0设计的微控制器,并一举成为嵌入式系统领域中异军突起的新秀
6、。与此同时,嵌入式系统的程序员也开始基于一些简单的操作系统 开发嵌入式应用软件,大大缩短了开发周期、提高了开发效率。(3) 实时操作系统阶段20世纪9O年代,在分布控制、柔性制造、数字化通信和信息家电等巨大需求的牵引下,嵌入式系统进一步飞速发展,而面向实时信号处理算法的DSP产品则向着高速度、高精度、低功耗的方向发展。随着硬件实时性要求的提高,嵌入式系统的软件规模也不断扩大,逐渐形成了实时多任务操作系统(RTOS),并开始成为嵌入式系统的主流。这一阶段嵌入式系统的主要特点是:操作系统的实时性得到了很大改善,已经能够运行在各种不同类型的微处理器上,具有高度的模块化和扩展性。此时的嵌入式操作系统已
7、经具备了文件和目录管理、设备管理、多任务、网络、图形用户界面(GUI)等功能,并提供了大量的应用程序接口(API),从而使得应用软件的开发变得更加简单。(4) 面向Internet阶段21世纪无疑将是一个网络的时代,将嵌入式系统应用到各种网络环境中去的呼声自然也越来越高。目前大多数嵌入式系统还孤立于Internet之外,随着Internet的进一步发展,以及Internet技术与信息家电、工业控制技术等的结合日益紧密,嵌入式设备与Internet的结合才是嵌入式技术的真正未来。信息时代和数字时代的到来,为嵌入式系统的发展带来了巨大的机遇,同时也对嵌入式系统厂商提出了新的挑战。目前,嵌入式技术与
8、Internet技术的结合正在推动着嵌入式技术的飞速发展,嵌入式系统的研究和应用产生了如下新的显著变化:新的微处理器层出不穷,嵌入式操作系统自身结构的设计更加便于移植,能够在短时间内支持更多的微处理器。嵌入式系统的开发成了一项系统工程,开发厂商不仅要提供嵌入式软硬件系统本身,同时还要提供强大的硬件开发工具和软件支持包。 各类嵌入式Linux操作系统迅速发展,由于具有源代码开放、系统内核小、执行效率高、网络结构完整等特点,很适合信息家电等嵌入式系统的需要,目前已经形成了能与Windows CE、Palm OS等嵌入式操作系统进行有力竞争的局面。 网络化、信息化的要求随着Internet技术的成熟
9、和带宽的提高而日益突出,以往功能单一的设备如电话、手机、冰箱、微波炉等功能不再单一,结构变得更加复杂,网络互联成为必然趋势。精简系统内核,优化关键算法,降低功耗和软硬件成本。提供更加友好的多媒体人机交互界面。.嵌入式操作系统的特点:.系统内核小由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小的多。比如Enea公司的OSE分布式系统,内核只有5K 。专用性强嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统
10、进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全两个概念。系统精简嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。高实时行高实时性的系统软件是嵌入式的基本要求。而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。.多任务的操作系统嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以及和专用库函数接口,用户必须自行选配RTOS(RealTime Operatin
11、g System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。需要开发工具和环境嵌入式系统开发需要开发工具和环境。由于其本身不具备自主开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。常见的嵌入式操作系统及比较:实时操作系统已经从简单走向成熟,有代表性的产品主要有嵌入式Linux 、 Palm OS、Windows CE
12、 等,占据了机顶盒、 PDA 等的绝大部分市场。其实,实时操作系统并不是一个新生的事物,从 20 世纪 80 年代起,国际上就有一些 IT 组织、公司开始进行商用嵌入式系统和专用操作系统的研发。Palm OSPalm OS 是一种 32 位的嵌入式操作系统,用于掌上电脑。此系统是 3Com 公司的 Palm Computing 部开发的。(Palm Computing 目前已经独立成一家公司。) Palm OS 与同步软件 HotSync 结合可以使掌上电脑与 PC 机上的信息实现同步,把台式机的 功能扩展到了手掌上。一些其他的公司也获得了生产基于Palm OS 的 PDA 的许可,如 SON
13、Y 公司,Handspring 公司。在 2001 年,基于 Palm OS 的掌上电脑主要是 3Com 的系列产品,如 Palm IIIx,Palm V,Palm VII, IBM WorkPad c3 用的也是 Palm OS。Sony 等公司也获得了 Palm Computing 的许可,将开发 基于 Palm OS 的掌上电脑。由于推出时间早,软件丰富,Palm 曾经占据了 PDA 市场上绝大部分的份额。但随着微软的强势介入,推出了 Windows CE 操作系统,以及专门针对掌上电脑的 Pocket PC Edition 2002,Palm 的市场份额急剧下降。但 PALM 联盟采取
14、了种种应对措施,如加快开发新版本的 Palm OS,增加广告宣传等,这些措施使得 PALM 仍然在现在的 PDA 市场占据了半壁江山。. Windows CEWindows CE 操作系统 是 Windows 家族中的成员,为专门设计给掌上电脑(HPCs)以及嵌入式设备所使用的系统环境。这样的操作系统可使完整的可移动技术与现有的 Windows 桌面技术整合工作。Windows CE 被设计成针对小型设备(它是典型的拥有的有限内存的无磁盘系统)的通用操作系统,它可以通过设计一层位于内核和硬件之间代码 用来设定硬件平台,这即是众所周知的硬件抽象层(HAL)(在以前解释时,这被称为 OEMC(原始
15、设备制造)适应层,即 OAL;内核压缩层,即 KAL。以免与微软的 Windows NT 操作系统的 HAL 混淆)。与其它的微软 Windows 操作系统不同,Windows CE 并不是代表一个采用相同标准的对所有平台都适用的软件。为了足够灵活以达到适应广泛产品需求,Windows CE 可采用不同的标准模式,这就意味着,它能够从一系列软件模式中做出选择,从而使产品得到定制。另外,一些可利用模式也可作为其组成部分,这意味着这些模式能够通过从一套可利用的组份做出选择,从而成为标准模式。通过选择,Windows CE 能够达到系统要求的最小模式, 从而减少存储脚本和操作系统的运行,也为企业创造
16、更大效益。嵌入式 Linux 随着 Linux 的迅速发展,嵌入式 Linux 现在已经有许多的版本,包括强实时的嵌入式 Linux(如新墨西哥工学院的 RT-Linux 和堪萨斯大学的 KURT-Linux)和一般的嵌入式 Linux 版本( 如 uClinux 和 Pocket Linux 等)。其中,RT-Linux 通过把通常的 Linux 任务优先级设为最低,而所有的实时任务的优先级都高于它,以达到既兼容通常的 Linux 任务又保证强实时性能的目的。另种常用的嵌入式 Linux 是 uClinux,它是针对没有 MMU 的处理器而设计的。它不能使用处理器的虚拟内存管理技术,它对内存
17、的访问是直接的,所有程序中访问的地址都是实际的物理地址。它专为嵌入式系统做了许多小型化的工作。由于嵌入式系统越来越追求数字化、网络化和智能化,因此原来在某些设备或领域中占主导地位的软件系统越来越难以为继,因为要达到上述要求,整个系统必须是开放的、提供标准的 API,并且能够方便地与众多第三方的软硬件沟通。4.三种嵌入式操作系统的比较Palm OS :核心几十 KB,整个嵌入式环境也不大;可以方便地开发定制;互操作性强;适应于多种 CPU 和多种硬件平台;实时性比较好;应用领域较广,特别适于掌上电脑的开发。Windows CE:核心占 500KB 的 ROM 和 250KB 的 RAM,整个 W
18、indows CE 操作系统,包括硬件抽象层、Windows CE Kernel、User、文件系统和数据库,大约1.5M;用户开发定制不方便,受 Microsoft 公司限制较多;互操性比较强,Windows CE 可通过 OEM 的许可协议使用于其他设备;适应于多种 CPU 和多种硬件平台;实时性比较好;应用领域较广,Windows CE 是为了新一代非传统的 PC设备而设计的,这些设备包括掌上电脑、手持电脑以及用于车载电脑等。Linux:核心从几十 KB 到 500KB,整个嵌入式环境最小才 100KB 左右,并且以后还将越来越小;用户可以方便地开发定制,可以自由卸载装用户模块,不受任何
19、限制;互操作性很强;不仅适用于 X86 芯片,并且可以支持 30 多中CPU 和多种硬件平台,开发和使用都很容易;由于 Linux 内核结构及功能等原因,嵌入式 Linux 应用领域非常广泛,特别适于进行信息家电的开发。Palm OS、Windows CE 和 Linux 这三种嵌入式操作系统各有不同的特点,不同的用途;但 Linux 比 Palm OS 和 Windows CE 更小、更稳定,而且 Linux 是开放的 OS,在价格上极具竞争力。6.结束语:在嵌入式应用中,使用实时操作系统是当前嵌入式应用的一个特点、一种趋势,也是单片机应用从低水平向高水平的一个进步。在实际应用中,根据不同的要求和条件选择合适的操作系统,使开发工作更容易,设计出完美的嵌入式系统。