多核编程挑战
在SMP(对称多处理)方面,我们将与我们的合作伙伴一起来做。目前,WindowsEmbeddedCE6.0是单核设备进行服务的,我们希望将来能够支持SMP。
在内核里面,SMP实际上是微软所做的一部分工作;另外一部分工作,微软希望客户在开发应用程序的时候,能够做得更加简单,就是客户所开发的应用程序能够更加轻易地扩展,能够在一个系统里面适应多核的要求,或者说能够使用在不同的、通过网络相互连接的系统里面。这就是我们说的分布式的嵌入式系统。在这里面,我们目前可以使用一些经常采用的编程模式,来适应一个系统里面硬件的开发。或者可以采用不同的模式来适应不同的客户设备和操作系统的要求。
其中一个比较好的例子,目前在微软WindowsCE和WindowsXPEmbedded上面使用的,一个是地方的形式,另外一个是丰富性的形式,这是微软研究院所创造的两个研究技术,一个是CCR,一个是DSS,他们应用在WinCE和WindowsXPEmbedded上。
WindowsCE容量大小
WindowsCE是一个嵌入式操作系统,如果建设一个操作系统,里面只有内核的话,他的映像大小是300KB左右,一般WindowsCE大小在4M到10M之间。
WindowsCE里面提供了700个操作系统功能组件,开发人员根据个人的喜好,挑选自己需要的,所以WinCE操作系统的大小取决于你要在这个系统里面实现多少组件。如果从此角度来看,可以把WindowsCE操作系统看作两层:第一层是硬件部分,是比较具体的,第二层是独立于硬件之外的。所以在配置操作系统映像的时候,可以把眼光放在独立于硬件的层次。这样工作就比较简单,你的目标只是建立一个根据不同的处理器,比如SH,MSI等来配置你的WindowsCE操作系统。而你可以不考虑硬件方面的变化,只考虑操作系统,而在具体测试和构成中,你可以先设定一个具体的方案作为参考,通过改变相关的硬件,最终对产品进行验证,然后发货。
CE运行时的环境
我们看到,在WindowsEmbeddedCE6.0里面,我们可以改变CE的操作系统,这样对开发人员来讲,是可以更加容易使用第三方的CE进行使用,那么还可以把第三方的CE运行式作为这个系统里面默认的形式。比如有一个运行式,可以采取第三方具有安全技术的新形式,来替代微软的CE运行式。而且所有的运行式可以通过JAVA的方式加入到操作系统里面。
对于嵌入式开发人员来讲,CE和C++语言是非常重要的。绝大多数人员在开发相对低端的编码时候,会选择CE和C++语言。但是对于开发用户界面和用户体验方面,开发人员一般来讲会使用一些新的技术。比如.net技术。
【编辑推荐】