《Windows CE.NET系统分析及实验教程》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:陈向群等编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2003
  • ISBN:7111113373
  • 页数:299 页
图书介绍:本书对微软公司的嵌入式操作系统Windiws CE进行了系统的分析。深入讨论了这个系统的内核结构及工作原理,内核的实际运行过程,最后用实验展示了系统内核。对Windiws CE源代码的分析有助于开发人员设计和编写出能够充分发挥其特点和优势的各种应用程序。 本书适合作为大学本科计算机专业的教材和辅导材料,也适合作为开发嵌入式系统应用的参考书。

第1章 引言 1

1.1 什么是嵌入式系统 1

1.2 嵌入式系统的发展历史 2

1.3 嵌入式操作系统基本概念 2

1.4 Windows CE发展简史 4

1.4.1 起因 4

1.4.2 迎战 5

1.4.3 Windows CE的功能 6

1.5 Windows CE的应用领域 7

1.5.1 PDA市场 7

1.5.2 新一代手机操作系统 8

1.5.3 工业控制 9

1.6 本书的组织 11

第2章 Windows CE.NET系统结构 15

2.1 透视系统关键特性 15

2.1.1 操作系统核心特性 16

2.1.2 应用系统基础设施 18

2.1.3 嵌入式系统支持 22

2.1.4 工具 25

2.2 代码组织 25

2.2.1 源代码树的构成 25

2.2.2 代码共享 26

2.2.3 创建系统 27

2.3 系统模型 28

2.3.1 层次化的结构 28

2.3.2 模块化的组织 30

2.4 系统机制 33

2.4.1 陷阱调度 33

2.4.2 进程间通信机制 34

2.4.3 系统调用接口 35

2.4.4 可扩展固件接口 36

2.4.5 注册表 38

2.4.6 Windows CE.NET服务 38

第3章 进程、线程描述和调度 40

3.1 进程的定义和描述 40

3.1.1 进程概述 40

3.1.2 Windows CE的进程描述 41

3.1.3 Windows CE进程结构分析 41

3.1.4 进程的同步和互斥 43

3.2 线程 44

3.2.1 线程概述 44

3.2.2 Windows CE的线程结构分析 45

3.3 其他一些重要的数据结构 48

3.4 Windows CE中的调度 50

3.4.1 Windows CE调度的概述 50

3.4.2 线程调度的时机 51

3.4.3 关于线程的优先级 53

3.4.4 跟调度有关的函数简介 55

3.5 关于中断 61

3.5.1 关于核心中断 61

3.5.2 相关函数 62

4.1.2 逻辑层次结构 64

4.1.1 物理结构 64

第4章 内存管理 64

4.1 Windows CE.NET内存体系结构 64

4.1.3 Windows CE地址空间 65

4.1.4 32位虚拟地址的划分 66

4.2 主要数据结构 66

4.2.1 空闲链表 66

4.2.2 内核内存空间信息 66

4.2.3 块描述符MEMBLOCK 67

4.2.4 有关内存管理的系统全局变量 67

4.3 内存的分配与回收 68

4.3.1 物理内存的分配和回收 68

4.3.2 虚存的分配和回收 70

4.4.2 本地堆和独立堆 75

4.4.3 逻辑地址的数据结构 75

4.4.1 概述 75

4.4 逻辑内存管理 75

4.4.4 堆的创建和初始化 77

4.4.5 堆的分配和回收 78

4.5 Windows CE的保护和共享机制 81

4.5.1 保护 81

4.5.2 Windows CE的共享机制 81

第5章 存储管理 83

5.1 概述 83

5.2 对象存储 83

5.3 存储管理器 85

5.3.1 文件系统过滤器 87

5.3.2 文件系统驱动程序管理器与文件系统驱动程序 87

5.3.3 分区管理器与分区驱动程序 89

5.4 文件系统驱动程序的创建与加载 90

5.4.1 文件系统驱动程序的创建 90

5.3.4 块设备驱动程序管理器 90

5.4.2 文件系统驱动程序的加载 92

5.4.3 文件系统驱动程序管理器在其中所起的作用 93

5.5 文件系统实例:FAT文件系统 94

5.5.1 FATFS的访问过程 94

5.5.2 Buffer Cache机制 94

5.5.3 Stream的实现 96

第6章 设备管理 99

6.1 Windows CE.NET的设备管理模式 99

6.1.1 Windows CE.NET设备管理部分的体系构成 99

6.1.2 注册表 101

6.2 设备管理器 102

6.2.1 设备信息管理 102

6.1.3 HAL以及OAL支持 102

6.1.4 Windows CE.NET的设备驱动集成 102

6.2.2 I/O资源管理 113

6.2.3 设备管理接口 116

6.3 电源管理器 118

6.3.1 Windows CE.NET电源管理体系 118

6.3.2 电源状态 118

6.3.3 电源管理接口 119

6.3.4 系统电源状态转换 120

6.3.5 驱动程序电源管理 121

6.3.6 电源管理器的实现 122

6.4.1 数据结构 123

6.4 即插即用管理器 123

6.4.3 广告 124

6.5 设备驱动程序 124

6.5.1 设备驱动程序接口 124

6.4.2 通知 124

6.5.2 设备驱动程序结构 125

6.5.3 中断处理 126

6.5.4 DMA 128

6.5.5 实时特性 128

6.5.6 设备驱动程序的加载 128

6.5.7 Windows CE.NET的类型设备驱动程序 129

第7章 用户界面与图形子系统 131

7.1 GWE概述 131

7.2.1 消息队列 133

7.2 用户输入系统 133

7.2.2 输入管理 137

7.3 图形设备接口 139

7.3.1 基本GDI对象 140

7.3.2 图形原语 141

7.3.3 调色板 143

7.3.4 位图 149

7.3.5 字体 149

7.3.6 GDI的组件 151

7.4 显示驱动程序接口 152

第8章 动态链接库的加载分析 157

8.1 loader.c中代码组织的结构 157

8.2 module structure 158

8.3 从LoadOneLibraryPart2开始看DLL的加载过程 159

8.4 DLL载入过程——InitModule的实现 160

8.4.1 调用OpenAD11生成执行文件指针(openexe_t) 161

8.4.2 装入module的e32头信息 162

8.4.3 分配内存给DLL,得到Module->BasePtr 163

8.4.4 给name和o32对象分配内存 165

8.4.5 重定位映像 165

8.4.6 找到EXE的起始IP 166

8.5 情景分析 167

第9章 线程在队列之间转换分析 169

9.1 概述 169

9.2 具体分析 170

9.2.1 MakeRun()函数分析 170

9.2.2 RunDequeue()函数分析 171

9.2.3 SleepDequeue()函数分析 173

第10章 虚存分配 177

10.1 分配过程概述 177

10.1.1 参数验证 177

10.1.2 扫描虚存区域找到合适大小的空闲块 178

10.1.3 在得到的虚存块中写入控制信息 178

10.1.4 获取足够的物理块并建立映射 178

10.1.5 小实验:虚存分配的直观印象 178

10.2 物理内存的获取 180

10.2.1 分配过程 180

10.2.2 小实验:HoldPages函数跟踪 183

10.3 虚存分配代码片段 184

11.1 存储管理器分层结构的建立及可安装文件系统的加载 192

第11章 文件系统的建立及访问过程 192

11.1.1 几个重要的数据结构 193

11.1.2 情景分析 195

11.2 FAT文件系统中CreateFile的具体流程 221

11.2.1 实验环境 221

11.2.2 参数介绍 222

11.2.3 局部变量 224

11.2.4 过程跟踪 225

第12章 驱动程序加载 233

12.1 概述 233

12.2 StartOneDriver 234

12.2.1 设备信息的获取和维护 234

12.3 主要源程序清单以及情景注释 237

12.2.3 系统事件的传递 237

12.2.2 访问核心设备管理数据表 237

第13章 Windows CE应用程序开发 255

13.1 Windows CE编程模型简介 255

13.2 Windows CE编程环境 255

13.2.1 系统安装 256

13.2.2 eMbedded Visual C++集成开发环境的组件与功能 256

13.2.3 应用程序的创建 259

13.2.4 编译生成可执行文件 259

13.2.5 应用程序的调试 263

第14章 Windows CE驱动程序开发 266

14.1 Platform Builder 4.0介绍 266

14.2 使用Platform Builder集成开发环境 267

14.4 驱动程序的代码结构 268

14.3 驱动程序的导出 268

14.5 驱动程序的调试 269

14.6 驱动程序实例 269

第15章 Windows CE.NET调试 277

15.1 简介 277

15.2 调试工具 278

15.2.1 Watch Window 280

15.2.2 Variables Window 280

15.2.3 Memory Window 281

15.2.4 Registers Window 281

15.2.5 Call Stack Window 282

15.2.6 Advanced Memory Window 283

15.2.7 Processes Window 285

15.2.8 Threads Window 286

15.2.9 Modules and Symbols Window 287

15.3 调试过程 288

第16章 实验 290

16.1 同步与互斥 290

16.2 内存管理 290

16.2.1 实验一:虚存 290

16.2.2 实验二:逻辑内存管理性能 291

16.3 存储系统 292

16.3.1 实验一:RAMDISK I/O 292

16.3.2 实验二:文件系统与目录结构 293

16.4 设备驱动程序 294

16.5 图形系统 295