WindowsCE开发中最常用的概念和知识

WindowsCE开发中最常用的概念和知识,第1张

WindowsCE开发中最常用的概念和知识,第2张

本文的目的不是介绍Windows Embedded CE开发的方方面面,而是从一个初涉嵌入式领域的软件开发人员的角度,介绍Windows CE开发中最常用的概念和知识,解决大家在实际开发中会遇到的一些小问题,让大家知道嵌入式开发和应用程序开发的区别。

Windows CE概述

从6.0版本开始,Windows CE的名称改为Windows Embedded CE,当然这也是结合Windows Embedded品牌所做的改变。经历了十年的风风雨雨,CE终于在这个版本的CE 6.0中重生了。CE 6.0在CE日历中经历了第二次内核重写,使得CE操作系统更加符合当今嵌入式发展的方向。

CE 6.0内核的变化主要是为了满足嵌入式设备硬件开发的要求。在进程数量上,最大进程数量从32变成了32000,在内存上,每个进程最大32M虚拟内存空到最大2G虚拟内存空。在OS布局方面,将关键驱动、文件系统和图形界面管理器(GWES)移到内核,可以更好地解决CPU在内核模式和用户模式之间切换带来的性能损失。

当然,从上面的改动可以看出,CE 6.0比之前的版本更“重量级”。操作系统领域关于“微核”的争论已经持续了很多年,CE的变化或许支持了某派的观点。但我们必须指出,正是因为目前的嵌入式设备硬件已经可以支持“重量级”的操作系统,CE 6.0才会做出这样的改变。

CE开发人员的另一个变化始于CE 5.0,它将开发环境平台生成器集成到Visual Studio中。这无疑减轻了微软维护两套ide的负担。另一方面,CE开发者也可以享受到更好的开发体验。

嵌入式开发流程

也许很多初涉嵌入式开发领域的程序员会被一系列新名词搞糊涂。在这里,希望给大家展示一下嵌入式开发的过程。

嵌入式开发主要分为三大部分:

1驱动程序开发

这部分开发从硬件设计开始。硬件工程师将设计PCB板,并为我们提供SDB(标准开发板)。当我们拿到开发板后,我们要做的第一件事就是编写启动开发板的boot-loader。一般来说,boot-loader是通过JTGA烧入开发板的。我们可以把boot-loader看作是PC中的BIOS,它负责硬件设备的初始化和操作系统的运行。之后需要根据开发板上的硬件开发各种驱动,比如串口、USB、鼠标、视频输入等。最后,这些驱动程序与引导加载程序打包在一起,称为板级支持包(BSP)。BSP与开发板的具体硬件密切相关。

所以从事这方面开发的工程师往往硬件知识水平很强。

2平台定制

我们可以把Windows CE想象成一个积木盒子。根据不同的应用场景和设备需求,我们要定制这一箱积木,用来堆砌不同形状的城堡、动物和日用品。这个过程被称为“平台定制”,定制生成的平台往往与具体的硬件设备相关。它可以通过将平台直接下载到硬件设备来运行。在整个开发过程中,需要选择不同的组件来匹配最适合当前硬件的软件平台。所以要很好的了解Windows CE的组件,也就是Catalog Item。

3应用程序开发

嵌入式设备上的应用程序开发类似于传统的应用程序开发,只是程序需要借助硬件模拟器或实际设备进行调试。嵌入式设备最常见的应用开发是Windows Mobile的移动应用开发。平台定制工程师会在硬件出厂前提供平台相关的SDK,SDK会包含模拟器。应用程序开发人员可以首先使用模拟器来开发和调试程序。实际硬件出来后,把程序转移到实际硬件上。因为Windows CE采取了很多措施,这种“转移”几乎是无缝的,所以我们不用“迁移”这个词。

其实嵌入式领域的应用开发,一般的软件工程师都可以进行。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » WindowsCE开发中最常用的概念和知识

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情