WinCE6.0体系结构

 

      WinCE6.0中的程序有两个级别,分为内核级和用户级。有些程序可以同时运行在内核及和用户级。例如:Coredll会分别运行在内核级和用户级上,这两个级别的Coredll功能是一样的,目的是增加系统的稳定性。

 

       GWESWinCE通过这模块提供的图形接口提供了几个功能:基本的绘图引擎、窗口管理、接口的事件机制等,是用户、应用程序和操作系统间的接口。

 

       Device ManagerKernal来加载并一直运行,它负责管理设备驱动的加载和设备接口,Device Manager追踪驱动登记的接口,并支持根据全局唯一标识globally unique identifier (GUID),来寻找驱动。

 

       Kernal Mode Driver设备驱动是物力设备或虚拟设备的一个软件抽象,一个设备驱动管理这些设备的运行。一个物力设备驱动的例子是网卡驱动,一个虚拟设备的驱动是文件系统。

不同的进程加载不同的驱动程序,下面这张表说明了哪些进程都加载什么驱动。

Process

Drivers

File System (FileSys.dll)

FileSys.dll loads file system drivers. For more information, see File Systems.

Device Manager (Device.exe)

Device.exe loads audio drivers, battery drivers, keyboard drivers, mouse drivers, NDIS drivers, notification LED drivers, serial drivers, PC Card drivers, USB drivers, and any other driver that exposes the stream interface. Device.exe loads most of its drivers with ActivateDeviceEx, and these drivers expose a stream interface. For more information, see Device Manager.

Graphics, Windowing, and Events Subsystem (GWES.dll)

GWES.dll loads a device driver if GWES is the only client of a driver. Device drivers loaded by GWES present a standard set of functionality for all similar devices. Drivers that GWES loads might expose the stream interface or they might expose other interfaces. Having alternatives make accessing the drivers much faster. GWES loads display drivers, printer drivers, and touch screen drivers. For more information, see Shell and User Interface Overview.

 

 

        Coredll(核心操作系统服务) Windows Embedded CE kernel 和其他一些通用的WinCE设计组成。Coredll 执行低级别的任务,例如,进程、线程和内存管理。基础设备驱动也是Coredll的一部分。

 

        Kernal表现为Nk.exe的形式,是WinCE操作系同的核心,提供操作系统的基本功能。这些功能包括,进程、线程和内存管理。Kernal还提供一些文件管理功能。

 

        OALOEM adaptation layer):OEM adaptation layer,是存在于硬件和kernal之间的一段代码。它方便了OS和目标设备之间的交流。这段代码包括了:中断、时钟和一般I/O控制(IOCTLs)等代码。

 

        KITLKernel Independent Transport Layer):

提供一种简单的支持任何调试服务的方式。KITL隔离了层间通信服务的协议,可以直接与硬件通信。硬件传输层是在KITL下面的一层,避免了KITL去了解不同硬件通信类型。例如,你可以创建一个桌面和WinCE设备端的传输机制。

在桌面端,这个传输是一个独立的DLL,这个DLL提供一些API接口给KITL,当然这个DLL要在系统中被注册,以便让KITL知道它是一个功能传输。在设备端,这个传输被建立在OAL中。在CE设备上,KITL依赖这个传输机制去支持一系列API级别的debug服务调用。

 

Hardware这一层包括不同主板的BSPBoard Support Packages)。

 

 

你可能感兴趣的:(WinCE6.0体系结构)