总的来说,WinCE的开发是分为:

一、硬件开发:硬件设计,Boot Loader开发,OAL开发,BSP开发
二、操作系统开发:定制驱动,创建最小内核,定制操作系统组件,测试集成
三、应用程序开发:开发特定的应用程序和中间件

通常基于WinCE的开发必须完成的任务:

1.创建基于特定目标设备的BSP
2.创建基于标准的BSP或定制BSP的操作系统设计,用来创建操作系统运行映像,并将映像下载到目标设备硬件平台上
3.为目标BSP创建或定制设备驱动
4.为定制操作系统设计添加或定制子工程或操作系统组件
5.创建操作系统运行时映像,并将映像下载到标准开发板,然后应用Windows CE提供的调试工具调试操作系统运行时的映像
6.当操作系统运行后映像创建完成时,为应用程序开发者导出SDK

再上张图,然后做名词解释

首先,BSP(板级支持包,Board Support Packet)是一个支持特定标准开发板(SDB,Standed Development Board)硬件的WinCE软件集成包,主要包括Boot Loader程序,OAL程序和板载硬件驱动程序

一个目标板的BSP开发主要有以下几个大的流程:
1.建立BootLoader,用来下载映像,启动系统。
2.编写OAL程序,用来引导系统核心映像和初始化、管理硬件。
3.为新的硬件编写硬件驱动。
4.设置平台配置文件,便于Platform Builder编译系统。

其中,Boot Loader 就是在操作系统内核运行之前运行的一段小程序,大家应该都很熟悉,或许以后还会再详细说一下,不明白的同学就去百度知道一下吧,而OAL(OEM 适配层,OEM Adaptation Layer),它是BSP驱动的一部分,作用是让WinCE在OEM的硬件上运行起来,下图说明了内核和硬件的各个部分如何通过OAL组织起来的:

可以说,WinCE的硬件开发主要就是BSP开发,而此开发通常是由嵌入式主板厂商完成,通常是一个移植和局部修改的过程,而操作系统的定制开发,通常是一个选择组件和对组件进行配置的过程,一般用PB(Platform Builder)完成,在VS2005里也是类似的;而这里面有关驱动的,也暂时跳过,以后再,说至于应用程序的开发,分为本地应用程序和托管应用程序,而在其中,有个定制导出SDK(软件开发工具包,Software Development Kit)的过程。

最新文章

  1. ASP.NET的session操作方法总结
  2. 书籍推荐《以C语言解析电脑》
  3. iOS9 URL Schema 白名单 微信
  4. ADFS 登录页面自定义
  5. AEScrypto WEB and ANDROID (GITHUB)
  6. visual studio 2013使用技巧
  7. Ubuntu14.04建立WiFi热点
  8. ZOJ 1733 Common Subsequence(LCS)
  9. 【概率论】【POJ 3682】【King Arthur's Birthday Celebration】
  10. CA/B Forum: SSL证书最长有效期最终被定为两年
  11. 关于标签中常用的disabled
  12. Linux 查看系统硬件信息汇总 (部份实例详解Centoso为例)
  13. SQL反模式学习笔记3 单纯的树
  14. 解决Java getResource 路径中含有中文的情况
  15. BZOJ4519[Cqoi2016]不同的最小割——最小割树+map
  16. HDU 2256 Problem of Precision(矩阵)
  17. storage封装
  18. Azure之旅
  19. rabbitMQ 安装,集群搭建, 编码
  20. UML类图详解_关联关系_多对多

热门文章

  1. webservice wsdl 生成服务
  2. Unity3D研究院之LZMA压缩文件与解压文件
  3. racle 11g impdp时 报ORA-12899
  4. 【hadoop】mapreduce原理总结
  5. iOS KVC,KVO
  6. Linux多线程之同步3
  7. html + css + js注释规范
  8. 8天学通MongoDB——第三天 细说高级操作
  9. hdu 4664 Triangulation(题意已在讨论版中说明)
  10. EL表达式取整数或者取固定小数位数的简单实现