那些对WINDOWS CE的人可能会有一个错觉,认为它仅仅是现有的操作系统(如WINDOWS95)降级版。但事实上Windows CE是以小型的、高度用户化的面向嵌入式式应用程序的操作系统开发起来的。 在WINDOWS CE排除了一些基于WINDOWS CE的应用软件所不需要的操作系统特性的同时,它的内核也具有大量的其他Microsoft 32位的操作系统的最精华的东西。例如在Windows NT下, 所有的在Windows CE下运行所应用软件都运行在有优先权的多任务处理环境下,在被保护的内存空间里。 还有,像Windows NT一样,Windows CE支持本地统一的字符编码标准码字符串,使它更适于国际推广。可是,不像其他的32位WINDOWS平台, Windows CE是十分紧凑和用户化的,仅仅占用小于200K的内存。
Windows CE 是由许多离散模块构成的,每一模块都提供特定的功能。这些模块中的一部分被划分成组件。 像其它的32 位Windows平台一样,Windows CE操作系统也有虚拟内存的特性。 内存总在某一时间被分配给应用程序一页,页的大小由系统设计者决定(并在操作系统为目标硬件平台创建时被指定)。例如 在手持电脑,内存大小是典型的1KB或者4KB。
Windows CE提供了三种类型的文件系统:基于RAM的文件系统、基于ROM的文件系统、以及用于支持ATA设备和SRAM卡等外围存储设备的FAT文件系统。 Windows CE在初始化时候,可以创造一个独立的被所有程序共享的4GB 虚拟地址空间。当程序引用一个虚拟的地址时,它被内核记录在物理的内存上。作为应用程序开发者,可能不会太在乎目标系统的内存的物理的结构。内存可以全部是随机存取内存,或者它可能包括闪存、或者硬盘驱动器。 Windows CE操作系统管理内存资源,同时WIN32 API提供必要的分配、使用和释放的内存的接口。
一个优秀的嵌入式系统的设计者,将需要细心考虑将在新的硬件平台上执行的应用程序的内存需要,并且全面考虑成本、速度和可靠性,平衡各种目标的冲突。 如果,使用Windows CE开发一个新的硬件平台 ,Windows CE的面向Visual C++ 的嵌入式软件包,包括资源可以帮助大家做出这些决策,并且从而构成操作系统。 无论系统内存的配置如何,ROM(只读内存)将占用十分重要的地位。
不同于其它的32位Windows操作系统,Windows CE操作系统的代码在只读内存中,并且在那个只读内存中原地执行。 依据产品需要,也能选择在只读内存中放置应用程序代码。 例如,Pocket Word,Pocket Excel和其它应用程序程序,包括在手持电脑只读内存中被提供的。
存储在ROM中的程序组在Windows CE下当地执行,所以嵌入式系统的设计者能够只占用很少的RAM用于堆栈存储的需要。 相应地,嵌入式应用程序可以利用RAM既作为程序的内存又可作临时存储空间。 为了进一步的增加应用程序软件的性能, Windows CE采用按需求将内存分叶;操作系统仅仅需要解压缩、并且装入基于RAM的小部分程序准备执行。 Windows CE 包含提供操作系统关键功能的 4 模块:内核模块;对象存储模块;图形、窗口和事件子系统 (GWES) 模块以及通信模块。Windows CE 还包含一些附加的可选择模块,这些模块可支持的任务有管理可安装设备驱动程序、支持 COM 等。
|