Windows CE操做系统提供与PC相似的界面和主要应用程序,使熟悉PC机Windows系统的用户能很快学会它的使用。 html
4. 嵌入式Linux
自由免费软件Linux是一个相似于Unix的操做系统。嵌入式Linux因为代码开放及强大的网络功能,在嵌入式产品的开发中具有巨大的潜力。
嵌入式Linux的优势以下:
●Linux是由不少体积小且性能高的微内核系统组成。在内核代码彻底开放的前提下,不一样领域和不一样层次的用户能够根据本身的应用须要方便地对内核进行改造,以低成本设计开发出知足本身须要的嵌入式系统。
●Linux诞生于因特网时代并具备Unix的特性,强大的网络功能保证了它支持全部标准的因特网协议,能够利用Linux的网络协议栈开发嵌入式的 TCP/IP网络协议栈。此外,Linux还支持ext二、fat1六、fat3二、romfs等文件系统,为开发嵌入式系统打下了很好的基础。
●Linux具有一整套工具链,容易自行创建嵌入式系统的开发环境和交叉运行环境,能够跨越嵌入式系统开发中仿真工具的障碍。Linux也符合IEEE POSIX.1标准,使应用程序具备较好的可移植性。
●传统的嵌入式程序调试和调试工具是用在线仿真器(ICE)实现的。它经过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,完成监视和调试 程序,但通常价格比较昂贵。使用嵌入式Linux,一旦软硬件可以支持正常的串口功能,即便不用仿真器,也能够很好地进行开发和调试工做,从而节省一笔不 小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链。它利用GNU的gcc作编译器,用gdb、kgdb、xgdb作调试工具,可以很方便地 实现从操做系统到应用软件各个级别的调试。
●Linux具备普遍的硬件支持特性。不管是RISC仍是CISC、32位仍是64位等各类处理器,Linux都能运行。Linux支持各类主流硬件 设备和最新硬件技术,甚至能够在没有存储管理单元(MMU)的处理器上运行(如μCLinux)。这意味着嵌入式Linux将来将具备更普遍的应用前景。
嵌入式Linux也存在着一些不足:
●实时性是嵌入式操做系统的基本要求。因为Linux还不是一个真正的实时操做系统,内核不支持事件优先级和占先实时特性,因此在开发嵌入式Linux的过程当中,首要问题是扩展Linux的实时性能。
●Linux内核的全部部分都集中在一块儿,并且全部的部件在一块儿编译链接。这样虽然能使系统的各部分直接沟通,有效地缩短任务之间的切换时间,提升系统的响应速度和CPU的利用率,但在系统比较大时体积也比较大,与嵌入式系统容量小、资源有限的特色不符。
●Linux须要占用较多存储器。虽然这能够经过减小一些没必要要的功能来弥补,但可能会很浪费时间,并且容易带来很大的麻烦。许多Linux的应用程序都要用到虚拟内存,这在许多嵌入式系统中是没有价值的。
●提供完整的集成开发环境是每个嵌入式系统开发人员所期待的。Linux在基于图形界面的特定系统定制平台的研究上,与Windows操做系统相比还存在差距。所以,要使嵌入式Linux在嵌入式操做系统领域中的优点更加明显,总体集成开发环境还有待提升和完善。
5. QNX
QNX是加拿大QNX公司的一个实时的、可扩充的操做系统,它部分遵循POSIX相关标准,如POSIX.1b的实时扩展。它提供了一个很小的微内核 以及一些可选的配合进程。其内核仅提供4种服务:进程调度、进程间通讯、底层网络通讯和中断处理,其进程在独立的地址空间运行。全部其余OS服务,都实现 为协做的用户进程,所以QNX内核很是小巧(QNX4.x大约为12KB)并且运行速度极快。这个灵活的结构可使用户根据实际的需求,将系统配置成微小 的嵌入式操做系统或是包括几百个处理器的超级虚拟机操做系统。
6. μC/OS-II
μC/OS-II 是一种可移植、可固化、可裁剪及可剥夺的多任务实时内核。本书将以μC/OS-II为例介绍嵌入式操做系统,关于μC/OS-II将在第5章中做进一步介绍。 程序员