当前位置:文档之家› 几种常见嵌入式操作系统之比较

几种常见嵌入式操作系统之比较


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