##############################################################################
第一讲:wince开发上手指南:
(1)
wince简介:
wince 是32位操作系统,多线程,多任务.
精简化的win32API.
支持多种主流CPU.
(2)
---wince 是借鉴了WIN2000/XP操作系统的设计。
---采用了分层模型设计,使功能模块之间的调用关系更加清晰,更便于进行系统定制。
(3)
-》应用层(如网络应用,文本编辑器等)
-》应用开发层(MFC,ATL,COM/DOCM,.NET..)
-》应用支持库(COMM,GWES,STORAGEMANAGE..)
-》操作系统层 (CoreDll,Schedule,Memory,Device)
-》OEM适配层 (BSP,CSP,Drivers)
-》硬件层
(4)
wince的高级功能:
灵活的电源管理功能
良好的通信能力
完善的图形用户界面
功能齐全的网络功能
完全的实时操作系统
(5)
Windows CE的应用领域:
1.信息家电领域
2.移动计算领域
3.工业控制领域
(6)
设备开发流程:
1.硬件设计或选型
2.选定BSP
3.获得驱动程序
4.裁剪内核
5.生成SDK
6.编写应用程序
(7)
platform builder 用来定制WINCE操作平台。
(8)
eMbedded Visual C++ 是用来开发WINCE应用程序的。
(9)
实时定义:
一个实时系统它的计算正确性,不仅依靠于计算逻辑上的正确,还包括及时的生产结果,如果没有达到系统时间的限制条件,系统也是失效的。
(10)
支持嵌套中断,高优先级的中断并不需要等待低优先级的中断服务里程(ISR)完成。
256个线程优先级,可以灵活调度嵌入式系统的任务。
使用Hitachi SH3(133MHz)可以在2~5us内启动一个中断服务。许多实际的基于Windows CE 平台的响应时间更短。
集成MediaPlayer 9.0,支持MPEG,WMV,AVI,等多种视频格式,支持WAV,MP3等多种音频格式。
提供DDrew和DirectShow,支持Directx7(7.0版本)
支持超过1百个国家和地区语言。
支持多语言用户界面。
##############################################################################
第二讲:如何进行联机调试应用程序:
##############################################################################
第三讲:WINCE内存管理以及如何在WINCE下访问设备地址
(1)
虚拟内存管理
Windows CE实现了虚拟内存管理系统。
在虚拟内存系统中,应用程序处理虚拟内存,它是一个单独的虚拟地址空间,与硬件实现的物理地址内存没有关系。
操作系统应用未处理的内存管理单元(MMU)来将虚拟地址转换为物理地址。
(2)
当Windows CE操作系统创建初始化时,会创建一个单一的4GB虚拟地址空间。
Windows CE 为所有的应用程序实现了单独2GB的虚拟地址空间。
这些空间是被所有进程所共享的,但应用程序的内存空间却受到保护,这样他就不能被另一个应用程序所访问。
虚拟地址中的1G地址空间被划分成33个32MB大小的槽。
当一个进程初始化的时候,系统会在地址空间中给他分配一个槽,不过编号为0的槽是专门保留的,只是供给当前正在运行的进程使用。
当WINDOWS CE 在进程切换时,它将重新映射地址空间以便将进程移除0槽,并将新进程移入0槽。
这项任务由操作系统通过微处理器的页面转换表来快速完成。
(3)
访问设备地址的实现:
WINCE 通过虚拟地址映射来访问设备地址。
调用virtualAlloc 和 virtualcopy 进行地址映射。
映射后的地址在2GB以上的高位地址。
操作完毕后应调用virtualFree 进行释放。
##############################################################################
第四讲:如何在线调试系统内核:
(1)
KITL介绍:
与硬件无关的调试通道
可以通过各种接口发送调试信息,如串口,网口,USB口等
进行应用程序调试的必要手段
一般由硬件供应商负责集成。
通过KITL建立远程连接
定制系统时应加入,使得系统支持KITL
操作系统启动后即可通过KITL在开发机与目标板之间建立远程连接
发布式内核与调试型内核
发布性内核:
进行了一定程度的代码优化,不支持内核级别的调试,文件体积小,用于最终产品的发布。
调试型内核:
未进行代码优化,支持内核级别的调试,文件体积较大,用于调试阶段。
Kernel Dibugger介绍:
是进行WINDOWS CE内核调试的必要手段
在内核启动后加载,可以进行代码级别的调试。
07-24
07-24