当前位置:
文档之家› 几种常见嵌入式操作系统之比较
几种常见嵌入式操作系统之比较
嵌入式Linux的特点
专用嵌入式实时操作系统 版权费 每生产一件产品需交纳一份 版权费 购买费用 技术支持 数十万元(RMB) 由开发商独家提供有限的技 术支持 网络特性 软件移值 另加数十万元(RMB)购买 难(因为是封闭系统) 免费 全世界的自由软件开发者提供支 持 免费且性能优异 易,代码开放(有许多应用软件支 持) 应用产品开发周期 长,因为可参考的代码有限 短,新产品上市迅速,因为有许多 公开的代码可以参考和移植 实时性能 好 须改进,可用 PT_Linux 等模块弥 补 稳定性 较好 较好,但在高性能系统中须改进 嵌入式 Linux 操作系统 免费
• 3、完善Linux的集成开发环境
– Linux在基于图形界面的特定系统定制平台的研 究上,与Windows操作系统相比还存在差距
常见嵌入式操作系统之比较
• 嵌入式Linux举例——RTLinux – RTLinux是一硬实时操作系统 – 实现了一个微内核的小的实时操作系统,而将 普通Linux系统作为一个该操作系统中的一个低 优先级的任务来运行 – 普通Linux系统中的任务可以通过FIFO和实时 任务进行通信 – 通过软件来模拟硬件的中断控制器 – RT-Linux通过将系统的实时时钟设置为单次触 发状态,可以提供十几个微秒级的调度粒度
主流嵌入式Linux系统
• • • • • μClinux Embedix RTLinux RTAI Monta Vista Linux
嵌入式Linux的优势
• Linux系统是层次结构且内核完全开放 • 强大的网络支持功能 • Linux具备一整套工具链,容易自行建立嵌 入式系统的开发环境和交叉运行环境,并 且可以跨越嵌入式系统开发中仿真工具的 障碍 • Linux具有广泛的硬件支持特性
常见嵌入式操作系统之比较
• 嵌入式Linux举例——RTLinux
– 内核结构:RT-kernel对硬件中的中断进行处理,并用 软件模拟中断控制器。对于编程而言,Linux内核对软 件中断控制器的操作就如同原来它对硬件中断一样, 但它不能禁止RT-kernel响应中断。实时任务不同于 Linux的进程:首先它相当于线程,使上下文切换延迟 缩短;其次系统为它静态分配内存并锁定,不使用虚 拟内存;第三,任务的模式高于Linux的系统模式与用 户模式。RT-kernel本身是不可抢占,但是由于它非常 短小精悍,造成的延迟比较短。
POSIX实时扩展
• POSIX(Portable Operating System Interface)是为标准化类UNIX操作系统所 必须具有的特征和接口而制定,其思想就 是为了增强为类UNIX操作系统编写的软件 的可移植性
嵌入式Linux 与Windows CE相比的优点 • Linux是开放源代码的,不存在黑箱技术。 • Linux在价格上极具竞争力。 • Linux的内核小、效率高。
嵌入式操作系统 Embedded Operating System
西安交通大学计算机系
嵌入式操作系统
——几种常见嵌入式操作系统之比较
常用嵌入式操作系统
• • • • • VxWorks Windows CE Palm OS 嵌入式Linux uc OS …
常见嵌入式操作系统之比较
• Palm OS
Palm OS
Windows CE
嵌入Linux
大小
核心几十KB,整 个嵌入环境也不 大
核心占500KB的ROM和 250KB的RAM。整个 核心从几十KB到 Windows CE操作系统, 500KB。整个嵌入式 包括硬件抽象层(HAL)、环境最小才100KB左 Windosw CE Kernel、User、右,并且以后还将越 GDI、文件系统和数据库, 来越小 大约共1.5MB
• RT-Linux的做法
–Linux本身的任务以及Linux内核本身作为一个 优先级最低的任务 –实时任务作为优先级最高的任务 –实时任务以Linux的内核模块(Loadable Kernel Module,LKM)的形式存在
嵌入式Linux面临的挑战(续二)
• 2、改变Linux内核的体系结构
– Monolithic内核体系 – MicroKernel体系 – 执行效率 – 内核的体积 – 升级、维护和移植
嵌入式Linux面临的挑战(续三)
• 微内核技术
– 缺点:操作系统的服务模块在独立的地址空间 运行,使得进程间通信和上下文切换的系统开 销大大增加,降低了系统效率。
嵌入式Linux面临的挑战(续四)
嵌入式Linux 与Windows CE相比的优点(续)
• Linux不仅支持x86芯片,还是一个跨平台 的系统。到目前为止,它可以支持20~30 种CPU。 • Linux内核的结构在网络支持方面是非常完 整的,它提供了对包括十兆位、百兆位及 千兆位的以太网络,还有无线网络、Token ring(令牌环)和光纤甚至卫星的支持。 • Linux在内核结构的设计中充分考虑了适应 系统的可裁剪性的要求。
常见嵌入式操作系统之比较
• 嵌入式Linux
– 嵌入式Linux OS逐渐形成了可与Windows CE 等EOS相抗衡的局面。目前正在开发的嵌入式 系统中,49%的项目选择Linux作为嵌入式操作 系统。Linux现已成为嵌入式操作系统的理想选 择。 – 已有产品:如中科红旗嵌入式Linux,已投入了 实际应用。
嵌入式Linux面临的挑战
• 1、扩充Linux的实时系统
–内核不支持事件优先级和抢占实时特性 –对Linux实时性的扩展可以从两方面进行:
• 向外扩展(让实时系统支持的范围更广,支持的设 备更多) • 向上扩展(扩充Linux内核,从功能上扩充Linux的 实时处理和控制系统)
嵌入式Linux面临的挑战(续一)
嵌入式Linux 与Windows CE相比的弱点
• 开发难度较高,需要很强的技术实力 • 核心调试工具不全,调试不太方便,尚没 有很好的用户图形界面 • 有些Linux的应用程序需要虚拟内存,所以 并非所有的Linux应用程序都可以在嵌入式 系统中运行。
Palm OS与Windows CE的比较
比较好
适用于多种CPU和多 种硬件平台
不仅适应于x86芯 片,并且可以支持 30多种CPU和多种 硬件平台,开发和 使用都很容易 很好 由于内核结构及功 能等原因,应用领 域非常广泛,特别 适于进行信息家电 的开发
实用性
比较好
应用领域较广。是为 新一代非传统的PC设 应用领域较广, 适用的应用 备而设计的,这些设 特别适用于掌 领域 备包括掌上电脑、手 上电脑的开发 持电脑以及用于车载 电脑等
常见嵌入式操作系统之比较
• Palm OS 应用
– Palm OS与同步软件(HotSync)结合可以使掌上电脑 与PC机上的信息实现同步,把台式机的功能扩展到了 掌上电脑。 – Palm应用范围相当广泛,如:联络及工作表管理、电 子邮件及互联网通信、销售人员及组别自动化等。 – Palm外围硬件十分丰富,有数码相机、GPS接收器、 调制解调器、GSM无线电话、数码音频播放设备、便 携键盘、语音记录器、条码扫描、无线寻呼接收器、 探测仪等。
• 从技术层面上讲,Palm OS是一套专门为 掌上电脑开发的操作系统;Windows CE相 对则过于臃肿。 • Palm OS是一套具有极强开放性的系统。 开发者向用户免费提供Palm OS的开发工 具,允许用户利用该工具在Palm OS基础 上方便地编写、修改相关软件。
• Palm OS、Windows CE、Linux这三种嵌 入式操作系统各有不同的特点,不同的用 途;但Linux比Palm OS和Windows CE更 小、更稳定,而且Linux是开放的OS,在价 格上极具竞争力。
可开发定制
可以方便地开发 定制
用户开发定制不方便
用户可以方便地开发 定制,可以自由卸装 用户模块,不受任何 限制
互操作性
互操作性强
互操作性比较强, Windows C可通过OEM的 互操作性很强 许可协议使用于其它设备
续上页
Palm OS WindPU和多种硬 件平台
RTLinux内核结构
Linux进程 实时任务 Linux内核
RTLinux内核
硬件环境
常见嵌入式操作系统之比较
• 嵌入式Linux举例——RTLinux(续)
– 调度算法。实时任务的调度方式主要有两种: 周期性调度与中断唤醒。API函数 rt_task_make_periodic( )可以指定任务的周 期。RTLinux带一个纯优先级调度器;用户可 以根据需要编写自己的调度器。
常见嵌入式操作系统之比较
• 嵌入式Linux特点(以中科红旗嵌入式 Linux为例)
– 开放源码,丰富的软件资源,广泛的软件开发 者的支持,价格低廉,结构灵活,适用面广。 – 精简的内核,性能高、稳定,多任务。 – 适用于不同的CPU,支持多种体系结构,如 X86、ARM、MIPS、ALPHA、SPARC等。 – 能够提供完善的嵌入式GUI以及嵌入式XWindows。 – 提供嵌入式浏览器、邮件程序、MP3播放器、 MPEG播放器、记事本等应用程序。
常见嵌入式操作系统之比较
• 嵌入式Linux的开发
– 一种思路是通过裁减的途径。通过开发符合原接口 Linux标准的精简的Linux内核,以满足掌上电脑等方面 的需求。 – 另一种思路在普通Linux操作系统的低层中加载一个非 常精简的Rt-Kernel,处理实时任务;而原有的内核 (Linux kernel)在运行时可以看作RT-kernel的任务,而 且相当于专用RTOS中优先级最低的任务 (the idle task)。美国新墨西哥理工学院的开发小组致力于 RTLinux的开发工作。
– 3Com公司产品,专门为掌上电脑开发的32位的嵌入式操作系统 – 占有非常小的内存,基于Palm OS编写的应用程序占用的空间也 非常小(通常只有几十KB) – Palm提供了串行通信接口和红外线传输接口,利用它可以方便地 与其它外部设备通信、传输数据 – 拥有开放的OS应用程序接口,开发商可根据需要自行开发所需的 应用程序 – 具有强开放性,现在有大约数千种专门为Palm OS编写的应用程 序,从程序内容上看,小到个人管理、游戏,大到行业解决方案, Palm OS无所不包。在丰富的软件支持下,基于Palm OS的掌上 电脑功能得以不断扩展。