Platform Builder 5下WinCE 5.0目录结构
Platform Builder 5已经自带WinCE 5.0,安装过程会指定WinCE 5.0的安装路径,默认为X:WINCE500,WINCE500即为WinCE 5.0的根目录。根目录下主要有以下几个目录:PUBLIC, PLATFORM, PRIVATE, PBWorkspaces, OTHERS, SDK。
PUBLIC目录
PUBLIC目录包含构建系统所需要的工具、部分组件的源码、驱动程序、链接库等。以下是部分重要目录的说明,大部分目录看名字就知道是什么组件了。
├─PUBLIC
│ ├─COMMON 存放平台无关的通用模块
│ │ ├─CESYSGEN 用于编译WinCE模块和组件的文件,其中有支持Sysgen工具的Makefile文件Sysgen.bat
│ │ ├─DDK 驱动程序开发包
│ │ ├─OAK 开发工具等操作系统组件文件
│ │ │ ├─BIN 编译工程的工具文件
│ │ │ ├─CATALOG 存放CEC文件
│ │ │ ├─CSP CPU Support Package,CPU相关的通用代码
│ │ │ ├─CONN
│ │ │ ├─CPULIBS
│ │ │ ├─DBGPUB
│ │ │ ├─DEMOS 应用程序例子
│ │ │ ├─DRIVERS 微软提供的所有设备驱动程序的源码(独立于平台部分的)
│ │ │ ├─FILES 用于编译操作系统内核、初始化目录结构、初始化数据库、初始化注册表所需的文件
│ │ │ ├─LIB
│ │ │ ├─LOCALIZE
│ │ │ ├─MISC 存放构建系统时用到的批处理文件
│ │ │ ├─NOTIFY WinCE的API用户界面部分
│ │ │ ├─NOTIFYM WinCE的API用户界面部分,但它是针对没有用户界面的设备设计的
│ │ │ └─TARGET
│ │ │ ├─TKTEST 用于执行微内核配置测试的文件
│ │ │ ├─TOOLS 运行于PC平台Windows下的开发和部署工具的源代码
│ │ │ ├─UTILS 测试系统中断延迟等性能的工具
│ │ │ ├─WTL
│ │ └─SDK
│ ├─CEBASE 存放构建系统时必要的批处理文件、资源等
│ ├─DATASYNC 与PC同步的组件
│ ├─DCOM DCOM开发支持
│ ├─DIRECTX DirectX开发支持
│ ├─GDIEX 图像处理相关组件
│ ├─IE IE浏览器相关组件,有部分源码
│ ├─NETCF .NET Compact Framework
│ ├─OSTEST
│ ├─PBTOOLS
│ ├─RDP 远程桌面协议(Remote Desktop Protocol)支持
│ ├─SCRIPT 微软JScript和Visual Basic Scripting Edition(VBScript)脚本语言支持
│ ├─SERVERS 网络服务,超文本传输协议(HTTP)服务扩展接口
│ ├─SHELL Shell相关组件
│ ├─SHELLSDK
│ ├─SPEECH 微软会话应用程序编程接口
│ ├─SQLCE SQLCE 2.0
│ ├─VIEWERS 包含对各种文件查看器组件的支持,以及一些文件查看器程序
│ ├─VOIP
│ ├─WCEAPPSFE 微软WordPad字处理程序和Inbox电子邮件程序的亚洲国家版本支持,主要是应用程序设置
│ └─WCESHELLFE 微软WordPad字处理程序和Inbox电子邮件程序的亚洲国家版本支持,主要是应用程序界面设置
PLATFORM目录
PLATFROM目录存放所有BSP,每一个子目录存放一个BSP。
├─PLATFORM
│ ├─CEPC PC机上运行WinCE的BSP
│ ├─GEODE AMD GEODE CPU开发板的BSP
│ ├─MAINSTONEII Intel MainstoneII开发板的BSP
│ ├─SMDK2410 三星SMDK2410开发板的BSP
│ ├─COMMON 多个BSP共用的代码
│ ├─EMULATOR EVC的WinCE模拟器BSP
│ ├─SMDK2440A 三星SMDK2440开发板的官方BSP
│ └─Deviceemulator VS2005的ARM模拟器BSP
PRIVATE目录
PRIVATE目录存放WinCE私有的源代码。WinCE 5.0只开放大约56%的核心源码。
├─PRIVATE
│ ├─SERVERS 一些服务的源码
│ ├─SHELL Shell组件源码
│ ├─TEST
│ ├─WCESHELLFE
│ └─WINCEOS &n, bsp; WinCE核心代码
│ ├─COMM 通讯协议的实现代码
│ │ ├─BLUETOOTH 蓝牙协议
│ │ ├─DHCP
│ │ ├─DHCPV6LITE
│ │ ├─INC
│ │ ├─IR 红外协议
│ │ ├─NDISMODS
│ │ ├─PM
│ │ ├─PPP2
│ │ ├─TAPI
│ │ ├─TCPIPW TCP/IP协议
│ │ └─WS2 WinSock2
│ ├─COREOS 操作系统核心模块
│ │ ├─CEPTR 指针操作
│ │ ├─CORE 核心功能,如内存管理
│ │ ├─DEVICE 设备管理
│ │ ├─FSD 文件系统驱动
│ │ ├─GWE 图形、窗口、事件
│ │ ├─INC
│ │ ├─NK NK.exe的部分源码
│ │ ├─SHELL Shell.exe的源码
│ │ └─STORAGE 存储支持
│ ├─UTILS
│ └─INC
PBWorkspaces目录
PBWorkspaces目录是Platform Builder的工作目录,每个项目对应一个子目录。
项目目录下的RelDir是生成目录,按不同的编译版本分成子目录,如smdk2440a_ARMV4I_Release和 smdk2440a_ARMV4I_Debug,存放生成系统映像所需要的所有文件,和最终产生的bin、nbx文件。%_FLATRELEASEDIR%环境变量对应当前编译版本的那个目录。
OTHERS目录
OTHERS目录存放一些组件的库文件和代码,如ATL、MFC、数据库等。
├─OTHERS
│ ├─WCETK
│ ├─VISUALSTUDIO
│ ├─ATL ATL的头文件、库文件和源码
│ ├─DOTNET .NET Compact Framework相关的库文件
│ ├─MFC MFC的头文件、库文件和源码
│ ├─PLATMAN
│ ├─SAMPLES MFC和ATL的示例代码
│ ├─SQLCE20 SQLCE 2.0的库文件
│ └─EDB EDB的库文件
SDK目录
SDKBINI386中存放各交叉编译器、构建系统用到的工具和PB中的远程工具等。