《VxWorks程序开发实践》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:陈智育等编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2004
  • ISBN:7115120889
  • 页数:346 页
图书介绍:本书介绍了嵌入式实时多任务操作系统VxWorks及其主机环境Tornado,并实践性地描述了其上的程序开发过程。书中详细介绍了VxWorks各个重要的组件,包括多任务环境、内存管理、IO系统(包括字符设备)、文件系统和网络通信等。并在每一章的最后都有常见问题解答(FAQ),帮助读者及时地解决开发过程中遇到的问题。本书主要面向有一定VxWorks经验或嵌入式经验的软件开发人员,但是部分章节对初学者也非常有帮助,如一些基本概念和一般开发过程。本书能够帮助VxWorks软件开发人员更好地使用平台,并理解其内部工作机制,扩展平台功能。

目录 1

第1章 Wind River 1

1.1 风河系统公司简介 1

1.2 实时操作系统VxWorks简介 1

1.3 Wind River的产品系列 3

1.4 Wind River Platform系列 7

1.5 Wind River产的成功范例 10

1.6 Wind River服务支持途径 11

第2章 Tornado 13

2.1 初识环境 13

2.1.1 安装 13

2.1.2 目录与文件 15

2.1.3 帮助文档 15

2.2 基本结构 17

2.3 工程管理 19

2.3.1 工程创建 21

2.3.2 源文件引用 23

2.3.3 组件配置 24

2.4 编译器 27

2.4.1 编译配置 27

2.4.2 Makefile规则 30

2.4.3 库使用 31

2.4.4 命令行编译 31

2.5 调试器 32

2.5.1 图形界面 33

2.5.2 命令行 35

2.5.3 目标模块调试 35

2.6 WindSh 36

2.6.2 WindSh特点 37

2.6.1 WindSh结构 37

2.6.3 WindSh内部命令 39

2.6.4 解释器TCL 42

2.7 辅助调试工具 42

2.7.1 Browser 42

2.7.2 VxSim 45

2.8 Target Server 46

2.8.1 配置和启动 46

2.8.2 虚拟IO 50

2.8.3 TSFS 52

2.8.4 Tornado Registry 52

2.9 辅助小工具 53

2.10 常见问题解答 55

第3章 VxWorks 58

3.1 初识系统 58

3.1.2 VxWorks组件介绍 59

3.1.1 VxWorks特性 59

3.1.3 主机上VxWorks相关目录和文件 60

3.1.4 VxWorks库模块 62

3.1.5 VxWorks与其他RTOS的比较 62

3.2 VxWorks与目标机 63

3.3 VxWorks与主机 63

3.4 符号表 65

3.4.1 symLib和symlib 66

3.4.2 符号表初始化 67

3.4.3 符号表同步 69

3.4.4 错误状态 71

3.5 Linker和Loader 73

3.5.1 静态连接 73

3.5.2 动态加载 74

3.5.3 loadLib与loadlib 75

3.5.4 目标模块管理 76

3.5.5 加载方式 77

3.5.6 模块卸载 85

3.6 目标机Shell 86

3.6.1 tShell创建 86

3.6.2 tShell使用 87

3.6.3 tShell辅助调试 90

3.6.4 脚本支持 91

3.6.5 tShell与wShell的区别 92

3.6.6 Console和虚拟Console 93

3.6.7 usrLib和usrFsLib 93

3.6.8 最终产品tShell问题 95

3.6.9 用户定制Shell 96

3.7 其他组件 99

3.7.2 数据结构组件 100

3.7.1 ANSI C库 100

3.7.3 复位支持库 101

3.7.4 可选组件 101

3.8 常见问题解答 102

第4章 多任务环境 107

4.1 任务概念 107

4.1.1 任务控制块 107

4.1.2 任务变量 108

4.1.3 环境变量 109

4.1.4 任务栈 110

4.1.5 任务选项 110

4.1.6 任务状态 110

4.1.7 任务调度 111

4.1.8 任务函数库 114

4.1.9 任务功能扩展 114

4.2 中断处理 115

4.1.10 系统任务 115

4.2.1 中断封装 116

4.2.2 系统时钟 117

4.2.3 辅助时钟 119

4.2.4 代码限制 119

4.2.5 中断通知 119

4.2.6 用户中断 120

4.3 异常处理 120

4.3.1 异常处理库 121

4.3.2 异常信号 122

4.4 线程间通信 122

4.4.1 共享数据结构 122

4.4.2 信号量 123

4.4.3 消息队列 126

4.5 常见问题解答 127

5.1 基本概念 130

第5章 内存管理 130

5.2 VxWorks中的内存布局 131

5.2.1 BootRom运行时的内 132

存布局 132

5.2.2 VxWorks运行时的内 133

存布局 133

5.3 内存分配算法 134

5.4 VxWorks中内存操作API 136

函数 136

5.5 Flash存储器 139

5.6 内存管理单元和VxVMI 141

5.6.1 虚拟内存 141

5.6.2 基本MMU的支持 142

5.6.3 VxVMI 143

5.7.3 Cache的工作过程 145

5.7.2 Cache的操作 145

5.7.1 Cache的结构 145

5.7 高速缓存[Cache] 145

5.8 NVRAM 146

5.9 内存的检验 147

5.9.1 利用内存读写验证内存 147

5.9.2 利用d和memShow命令查看内存 147

5.9.3 使用Browser查看内存 148

5.10 常见问题解答 150

第6章 I/O系统 155

6.1 概述 155

6.1.1 系统结构 155

6.1.2 文件 156

6.1.3 文件描述符 156

6.1.4 标准文件描述符 156

6.2.1 基本I/O 157

6.2 I/O接口 157

6.2.2 带缓存I/O 158

6.2.3 格式I/O 159

6.3 I/O内部管理 160

6.3.1 系统启动 160

6.3.2 I/O系统初始化 161

6.3.3 驱动程序初始化 161

6.3.4 创建设备 162

6.3.5 设备的访问 163

6.4 VxWorks的设备和驱动 167

6.4.1 串行I/O设备 168

6.4.2 管道设备 169

6.4.3 伪内存设备 169

6.5 串口驱动 169

6.5.1 ttyDrv和tyLib 171

6.5.2 xxDrv 172

6.5.3 加载流程 174

6.6 常见问题解答 175

第7章 文件系统 177

7.1 系统结构 177

7.1.1 应用接口 178

7.1.2 IO系统 182

7.1.3 CBIO 183

7.2 本机文件系统 187

7.2.1 dosFs 187

7.2.2 其他 190

7.3 块设备 191

7.3.1 概述 191

7.3.2 ramDrv 193

7.3.3 软盘 194

7.3.4 硬盘 195

7.3.5 TureFFS 195

7.3.6 memDrv 200

7.4 常见问题解答 201

第8章 网络通信 202

8.1 概述 202

8.2 网络驱动 203

8.2.1 网络驱动加载配置 204

8.2.2 增加第二块网卡 206

8.2.3 添加新的网卡驱动程序 208

8.3 Socket程序设计 208

8.3.1 概念的引入 209

8.3.2 客户/服务器模式 210

8.3.3 Socket函数 213

8.3.4 服务器程序结构 226

8.4 网络服务 227

8.4.1 FTP服务器 228

8.5 常见问题解答 229

8.4.2 Telnet服务器 229

第9章 建立开发环境 233

9.1 主机和目标机 233

9.2 板级支持包[BSP] 235

9.3 系统启动 239

9.4 程序映像 241

9.4.1 映像类型 242

9.4.2 映像格式 244

9.4.3 映像组织 248

9.5 BootRom建立 249

9.5.1 BSP定制 249

9.5.2 选择BootRom的启动方式 252

9.5.3 选择VxWorks的加载方式 254

9.5.4 BootRom建立 256

9.5.5 BootRom运行 257

9.6.2 主机环境 258

9.6.1 目标系统 258

9.6 MFC5272 BootRom实例 258

9.6.3 设计目标 262

9.6.4 编辑 263

9.6.5 编译 270

9.6.6 调试 270

9.6.7 发布 271

9.7 PC104/486 BootRom实例 271

9.7.1 目标系统 271

9.7.2 主机环境 272

9.7.3 设计目标 272

9.7.4 编辑 272

9.7.5 编译 279

9.7.6 调试 279

9.7.7 发布 279

9.8.1 调试方式 280

9.8 建立开发环境 280

9.8.2 Hello World 281

9.9 常见问题解答 283

第10章 程序开发实践 285

10.1 Tornado扩展 285

10.1.1 工程组织 285

10.1.2 Tornado API 285

10.1.3 CDF组件定制 287

10.1.4 编辑器 291

10.1.5 版本控制 293

10.1.6 静态检查 297

10.1.7 代码文档 297

10.1.8 UML 298

10.1.9 其他功能扩展 300

10.2.1 多任务调试 302

10.2 调试实践 302

10.2.2 Shell调试功能 305

10.2.3 WindView调试 307

10.3 编程实践 312

10.3.1 OSAL的VxWorks实现实例 312

10.3.2 通用通信层实现实例 323

10.4 移植实践 336

10.4.1 多操作系统移植 337

10.4.2 升级到Tornado 2.2 338

10.4.3 goAhead移植实例 339

10.5 常见问题解答 341

附录 参考资源 343

A.1 参考文献 343

A.2 基础书籍 344

A.3 网络资源 345