Windows Embedded Compact 7初体验

简介: Windows Embedded Compact 7已经出来半年多了,一直没时间搞。最近它又出了Refresh的版本,电脑也换了个1T的硬盘,所以就下载下来体验一把。       先说说开发环境的搭建。

      Windows Embedded Compact 7已经出来半年多了,一直没时间搞。最近它又出了Refresh的版本,电脑也换了个1T的硬盘,所以就下载下来体验一把。

      先说说开发环境的搭建。Platform Builder 7.0作为VS2008的一个插件使用,且与之前所有版本的WinCE开发环境都不兼容,需独立安装。所以,我搭建WinCE7.0开发环境的步骤如下:

  • 安装VMWARE WorkStation 7
  • 在虚拟机上安装Windows 7
  • 安装VS2008及SP1
  • 安装Windows Embedded Compact 7

      以前在学习新版本WinCE的时候,一般都是先基于模拟器定制一个系统,但WinCE7.0目前是不支持的Device Emulator的,大概是因为它只支持ARMv5及其之后的处理器,而Device Emulator还是ARMv4的。目前项目中使用的处理器是ARM11的,属于ARMv6,于是就打算直接往这个平台上移植看看。

      WinCE7.0的新特性及移植说明,在安装目录下有相关的pdf文档做介绍。从它提供的文档来看,WinCE6.0到WinCE7.0的移植相对比较简单。而WinCE5.0到WinCE7.0的移植会麻烦一些,建议先从WinCE5.0移植到WinCE6.0,然后再从WinCE6.0移植到WinCE7.0。

      目前项目使用的是WinCE6.0,所以就拿6.0的BSP作为模板来移植了。移植方法与《S3C2410-WinCE6.0-OAL的快速调试》介绍的类似。将6.0的BSP拷贝到Platform目录下,然后通过Platform Builder 7.0克隆出一个新的BSP,并修改Catalog文件中相应的Item属性,将ARMv4改为ARMv6。另外,修改Files目录下的Platform.bib和Platform.reg文件,清空这两个文件的内容。修改SRC目录下的dirs文件,去除BOOT和Drivers对应的目录。这么做的目的就是想快速移植WinCE7.0的OAL,先让WinCE7.0的内核跑起来,然后再慢慢移植各个驱动。

      WinCE7.0创建工程的方法与WinCE6.0的类似。基于Custom Device的模板创建一个工程,并设置平台属性,由于一直没在6.0上验证过这个BSP的KITL,所以这里也就先把KITL给禁用了。设置完平台属性后使用Clean Sysgen编译系统。运气好的话,编译不出问题,直接生成NK。烧写到设备上,就起来了。系统启动后的打印信息如下。

Windows CE Kernel  for  ARM (Thumb Enabled) Built on Dec  15   2010  at  16 : 44 : 21
ProcessorType
= 0b76  Revision = 6  CpuId = 0x410fb766
OEMAddressTable 
=  80203b80
[KERNEL      ]
+ OEMInit()
[KERNEL      ]DCache: 
128  sets,  4  ways,  32  line size,  16384  size
[KERNEL      ]ICache: 
128  sets,  4  ways,  32  line size,  16384  size
[KERNEL      ]CHIPID[
156 ][acda17d0]
[KERNEL      ]
- OEMInit()
NKStartup done, starting up kernel. nCpus 
=   1
Windows CE KernelInit
Error Reporting Memory Reserved, dump size 
=   00020000
Booting Windows CE version 
7.00   for  (ARM)
Memory Configuring: Total pages: 
36278 , Filesystem pages  =   4534
Booting kernel with clean memory configuration:
Total Memory Sections:
1
[
0 ] ( static ): start: 83a26000, extension / attributes:  00024000 , length: 08db6000
Scheduling the first thread.
PID:
00400002  TID: 00410002  PGPOOL: Reserved  768  pages  for  Loader pool
PID:
00400002  TID: 00410002  PGPOOL: Reserved  256  pages  for  File pool
PID:
00400002  TID: 00410002  ERROR: OALIoCtlHalGetDeviceInfo: Invalid request
PID:
00400002  TID: 00410002  OSAXST0: Platform Name  =  WinCE6. 0  R3
PID:
00400002  TID: 00410002  WARN: OALIoCtlHalGetDeviceinfo::SPI_GETPROJECTNAME: Bu
ffer too small
PID:
00400002  TID: 00410002  OSAXST1:  >>>  Loading Module  ' kd.dll '  ( 0xC0401DB0 ) at a
ddress 
0xEFFE0000 - 0xEFFFE000   in  Process  ' NK.EXE '  ( 0x83A09AD0 )
PID:
00400002  TID: 00410002  KD: Starting kernel debugger software probe (KdStub)  -
 KD API version 
27
PID:
00400002  TID: 00410002  OSAXST1:  >>>  Loading Module  ' NK.EXE '  ( 0x83A09AD0 ) at a
ddress 
0x80200000 - 0x80217000   in  Process  ' NK.EXE '  ( 0x83A09AD0 )
PID:
00400002  TID: 00500002  Filesys doesn ' t exist, no app started

      至此,就初步完成了WinCE7.0 OAL的移植。虽然还没有看到WinCE7.0的界面,但也总算初步了解了Platform Builder 7.0。接下来可以移植显示、触摸驱动,进一步揭开WinCE7.0的面纱。

目录
相关文章
|
安全 机器人 Shell
【靶机】Windows渗透初体验-Steel Mountain
本靶机是windows版的mr robot,难度适中,值得一做。
222 0
|
Java 测试技术 开发工具
Appium Studio 初体验(windows做ios自动化,录制appium脚本)
Appium Studio 初体验(windows做ios自动化,录制appium脚本)
Appium Studio 初体验(windows做ios自动化,录制appium脚本)
|
弹性计算 物联网 新制造
ECS初体验——Windows服务器平台经验分享
飞天加速计划,Windows平台ECS服务器初体验
257 0
ECS初体验——Windows服务器平台经验分享
|
Web App开发 缓存 弹性计算
windows Ecs使用初体验
先我们先来了解一下CPU读取数据时的操作,首先CPU会先从自己的缓存中去查找,如下图,有L1/ L2/ L3三级缓存,若缓存中没有找到需要的数据,则会去内存中查找(我们称之为Cache Miss),CPU读取到内存数据后就会将新数据存放在缓存当中。CPU访问内存的速度会比访问L1 Cache的速度慢100倍,因此提高缓存命中率(Cache Hit),避免Cache Miss会大大提高性能。因此我们应该尽量使用数组,尽量分割属性(SOA),尽量连续的进行处理。 这也使得一味的讨论复杂度O(n)不再适用,因为现在效率=数据+代码,最常见的例子就是在数据量小的情况下遍历数组会比 (Hash)Map
|
Windows
2008微软MVP成功连任—从VB转型为Windows Embedded
微软MVP成功连任—从VB转型为Windows Embedded
783 0
|
定位技术 Windows
实战Windows Embedded CE 6.0—GPS篇
由于本人对GPS导航系统一知半解,有这方面经验的网友,还望不吝指教
723 0
|
存储 SQL 数据库
Windows Azure初体验
目前在IT界,云这个概念的第一意思不再是词典里的解释了。不过它们还是有相同点的——也许确实会酝酿出一块大蛋糕,可也是飘在天上,众神分食之,与我等P民无关。所谓云,不过是网络时代发展到一定阶段的必然产物,而并非划时代的技术质变,so,我一直保持既不排斥亦不主动接触的立场。
1107 0
|
Windows
在Virtual Pc中感受Windows Embedded Compact 7的魅力
欢迎下载试用新一代Windows Embedded CE(Compact 7) http://www.microsoft.com/windowsembedded/zh-cn/products/windowsce/default.mspx   在Virtual Pc中感受Windows Embedded Compact 7的魅力 今天,让大家来动手来实际操作一下Windows Embedded Compact 7,感受一下它的新特性。
|
UED Windows 内存技术
了解Windows Embedded Compact 7
      欢迎下载试用新一代Windows Embedded CE(Compact 7):http://www.microsoft.com/windowsembedded/zh-cn/products/windowsce/default.mspx Windows Embedded Compact 是在 Windows Embedded CE 的基础之上演变而来的。