3.4 嵌入式操作系统选择
3.4.1 选择原则
(1)技术储备。在开发32位嵌入式数据采集器之前,开发小组有幸参与了“三峡遥测系统屏—寸区间遥测站”开发项目,并在其中承担大部分的开发工作,通过该项目开发小组积累了大量的Windows CE系统的开发经验。
(2)技术支持。随着微软公司在全球范围对Windows CE的推广,在国内参与Windows CE系统开发的个人和公司也越来越多,网上针对Windows CE系统开发的论坛和网站也越来越多,同时微软的技术支持网站MSDN也给出了丰富的例子和原代码。
(3)价格。微软公司针对Windows CE映像版本,采取标签收费的方式,即每个正版标签收一次费用,一般为50~130元左右,针对成本空间较大的项目,比较适用。
(4)性能。微软研发的嵌入式操作系统,不但具有任务调度、线程管理、支持多线程、多进程、华丽的界面开发机制、支持SOCKET、支持MessageQeue、支持多种线程间和进程间通信技术、支持多款嵌入式处理器、支持FAT文件系统和支持网络通信。
(5)市场竞争。微软开发的嵌入式操作系统Windows CE自从投入市场以来,一直与风河公司的VxWorks、免费的嵌入式Linux占据着嵌入式开发市场的主流,应用十分广泛。
(6)开发环境的熟悉。在开发本产品之前,笔者所使用的操作系统是微软公司的Windows XP,而开发Windows CE应用的开发环境都可以在Windows XP上安装使用。
3.4.2 同级操作系统比较
在设计本产品时,市面上比较流行的嵌入式操作系统主要有Windows CE 5.0、uClinux和VxWorks;其各项指标相比如表3.4-1所示。
表3.4-1 同级操作系统比较
续表
3.4.3 结论
通过3.4.1和3.4.2小节的描述,为减少开发难度、缩短开发周期,在32位嵌入式数据采集器设计中,开发小组选择了开发环境和开发技术都比较熟悉的Windows CE 5.0嵌入式操作系统。
3.4.4 Windows CE 5.0简介
Windows CE操作系统是Windows家族中的成员,为专门设计给掌上电脑(HPCs)以及嵌入式设备所使用的系统环境。这样的操作系统可使完整的可移动技术与现有的Windows桌面技术整合工作。Windows CE被设计成针对小型设备(它是典型的拥有有限内存的无磁盘系统)的通用操作系统。
Windows CE可以通过设计一层位于内核和硬件之间代码来设定硬件平台,这即是众所周知的硬件抽象层(HAL)[在以前解释时,这被称为OEMC(原始设备制造)适应层,即OAL;内核压缩层,即KAL。以免与微软的Windows NT操作系统的HAL混淆]。
与其他的微软Windows操作系统不同,Windows CE并不是代表一个采用相同标准的对所有平台都适用的软件。为了足够灵活以达到适应广泛产品需求,Windows CE可采用不同的标准模式,这就意味着,它能够从一系列软件模式中做出选择,从而使产品得到定制。另外,一些可利用模式也可作为其组成部分,这意味着这些模式能够通过从一套可利用的组分做出选择,从而成为标准模式。通过选择,Windows CE能够达到系统要求的最小模式,从而减少存储脚本和操作系统的运行,也为企业创造更大效益。
Windows 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应用程序接口和与处理器无关等特点。Windows CE不仅继承了传统的Windows图形界面,并且在Windows CE平台上可以使用Windows 95/98上的编程工具(如Visual Basic、Visual C++等)、使用同样的函数、使用同样的界面风格,使绝大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。
Windows CE 5.0在2004年5月推出,微软宣布Windows CE 5.0扩大开放程序源代码。在这个开放源代码计划授权下,微软开放250万行源代码程序作为评估套件(evaluationkit)。凡是个人、厂商都可以下载这些源代码加以修改使用,未来厂商OEM时,则再依执行时期(Run-time)授权,支付Windows CE 5.0核心每台机器3美元的授权费用,这也是微软第一个提供商业用途衍生授权的操作系统。