WinCE的开发流程
总的来说,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)的过程。
WinCE的开发流程的更多相关文章
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- 小谈Scrum敏捷开发流程
一晃眼,有两年没有写博客了,回顾前两年,各种奔波,各种忙碌,也有不少的收获.从今天开始,我要把这些收获都分享在这里. 其实这两年,对我影响最大的是开发流程.总所周知,一个好的开发流程,对于项目的进行, ...
- 我理解的Sitecore开发流程
Sitecore是一个强大的支持快速开发CMS建站的平台,进入sitecore后台可以看到 它主要有3个元素: 1.Templates模板 Data template:类似于面向对象编程中的类或结构体 ...
- C++的性能C#的产能?! - .Net Native 系列《二》:.NET Native开发流程详解
之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...
- git开发流程、常用命令及工具、TortoiseGit使用及常见问题
根据我最近使用git的一些经历,git是基于分支的版本控制工具,分支有远程分支和本地分支. 一.开发流程 - 从远程服务器的master,clone一份项目文件到本地,然后本地master的基础上br ...
- 软件开发流程 Software development process
软件开发流程(Software development process)即软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法.软件的总体结构设计和模块设计.编程和调试.程序联调和测试以 ...
- Web开发流程
知乎上关于Web开发流程豪情给予的回答 web前端开发流程是什么?进行操作会用到哪些便捷的小工具?是先用模板做好,然后在基础上改吗??正常大家说的改框架是不是指的用模板做的网站原文件?前端开发做的文件 ...
- 基于Lattice_CPLD/FPGA Diamond 开发流程
本文主要介绍了Lattice CPLD/FPGA集成开发环境的使用方法,并通过点亮开发板(Mach XO2 Breakout Board)上位号为D2的LED这一实例来演示其开发流程. 1. ...
- iOS开发流程总结
本文由社区会员umyueyue分享 以下是会员umyueue总结的iOS开发流程以及学习中的资料分享. 流程:注册.开发.真机测试.发布以及上线. iPhone iOS 4从注册到app上线开发流程 ...
随机推荐
- IOS 提交审核,遇到Missing Push Notification Entitlement 问题。
貌似不影响提交........还是有人提交成了. 昨天晚上提交软件审核,遇到了Missing Push Notification Entitlement 的问题. 问题起因:这个版本我添加了PUSH推 ...
- 【C++】指针数组和数组指针
首先的首先,稍微抱怨一下阿里今天的严重失误.说好的晚六点笔试,说好的务必提前半小时到场.六点十五的时候告诉闷在一个大教室里躁动的我们“今天七点半开考,大家先回去吧,七点半再过来”,满脸黑线…等到七点半 ...
- css系列-间隔与间距实例
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- .bat后台运行
可以编辑一个vbs脚本,在其中以隐藏窗口运行批处理程序. ------------------------------------------------------------ Set ws = C ...
- ExtJs之Ext.util.Format
<!DOCTYPE html> <html> <head> <title>ExtJs</title> <meta http-equiv ...
- poj 3159(差分约束经典题)
题目链接:http://poj.org/problem?id=3159思路:题目意思很简单,都与给定的条件dist[b]-dist[a]<=c,求dist[n]-dist[1]的最大值,显然这是 ...
- poj 3114(强连通缩点+SPFA)
题目链接:http://poj.org/problem?id=3114 思路:题目要求很简单,就是求两点之间的花费的最短时间,不过有一个要求:如果这两个city属于同一个国家,则花费时间为0.如何判断 ...
- 矩阵快速幂 POJ 3735 Training little cats
题目传送门 /* 题意:k次操作,g:i猫+1, e:i猫eat,s:swap 矩阵快速幂:写个转置矩阵,将k次操作写在第0行,定义A = {1,0, 0, 0...}除了第一个外其他是猫的初始值 自 ...
- libprotobuf ERROR
google/protobuf/wire_format.cc:1059] Encountered string containing invalid UTF-8 data while parsing ...
- 【原创】Eclipse中为SVN设置快捷键
SVN是深受开发者喜爱的版本控制工具,其较CVS有更好的控制策略.在Android开发中,我也选择SVN作为版本控制工具.Eclipse的SVN插件名叫Subclipse,可以到htt ...