VxWorks程序员指南

免费下载地址:

http://www.vxworks6.com

书是《VxWorks开发人员指南丛书》之一——VxWorks程序员指南,根据Wind River公司的技术文档“VxWorks Programmer’s Guide”翻译而成。
主要内容包括:VxWorks简介、操作系统基础知识、POSIX标准接口、输入/输出接口技术、局部文件系统、目标调试工具的使用、C++开发技术、闪存模块驱动设计与应用、VxDCOM应用程序、分布式消息队列、标准存储对象、虚拟内存接口等内容。
本书语言通畅、条理清晰、内容详细,主要针对从事以VxWorks操作系统为基础内核的嵌入式系统开发人员,可作为了解VxWorks并且将其应用到开发项目中的指导手册。

第1章  引言
1.1  概要
1.2  相关的文件资源
1.3  VxWorks配置和建立
1.4  Wind River代码约定
1.5  文档约定
第2章  基本操作系统
2.1  简介
2.2  VxWorks任务
2.2.1  多任务
2.2.2  任务状态转变
2.2.3  Wind任务调度
2.2.4  任务控制
2.2.5  任务扩展函数
2.2.6  任务的错误状态:errno
2.2.7  任务异常处理
2.2.8  共享代码和重入
2.2.9  VxWorks操作系统任务
2.3  任务间通信
2.3.1  共享数据结构
2.3.2  互斥
2.3.3  信号量
2.3.4  消息队列
2.3.5  管道
2.3.6  任务间网络通信
2.3.7  信号
2.4  VxWorks事件
2.4.1  pSOS事件
2.4.2  VxWorks事件
2. 4.3   API比较
2.5  看门狗定时器
2.6  中断服务代码:中断服务程序
2.6.1  中断处理连接程序
2.6.2  中断堆栈
2.6.3  编写和调试中断服务程序
2.6.4  中断服务程序的特殊限制
2.6.5  中断级异常
2.6.6  保留高中断级
2.6.7  在高中断级上中断服务程序的附加限制
2.6.8  中断与任务通信
第3章  POSIX标准接口
3.1  简介
3.2  POSIX时钟和计时器
3.3  POSIX内存上锁接口
3.4  POSIX线程
3.4.1  POSIX线程属性
3.4.2  线程私用数据
3.4.3  线程取消
3.5  POSIX调度接口
3.5.1  POSIX和Wind调度方法比较
3.5.2  获得和设置POSIX任务优先级
3.5.3  获得并显示当前调度策略
3.5.4  获得调度参数:优先级限制和时间片
3.6  POSIX信号量
3.6.1  POSIX和Wind信号量比较
3.6.2  未命名信号量使用
3.6.3  命名信号量的使用
3.7  POSIX互斥体(Mutexes)和条件变量
3.8  POSIX消息队列
3.8.1  POSIX和Wind消息队列比较
3.8.2  POSIX消息队列属性
3.8.3  显示消息队列属性
3.8.4  用消息队列通信
3.8.5  通知任务有消息在等待
3.9  POSIX队列信号
第4章  输入/输出系统
4.1  简介
4.2  文件、设备和驱动程序
4.2.1  文件名称和默认设备类型
4.3  基本I/O接口
4.3.1  文件描述符
4.3.2  标准输入设备、标准输出设备和标准错误输出设备
4.3.3  打开和关闭文件操作
4.3.4  新建和删除文件操作
4.3.5  读操作和写操作
4.3.6  文件截取操作
4.3.7  I/O控制操作
4.3.8  基于多文件描述符的挂起操作:选择功能
4.4  缓冲型I/O设备:stdio
4.4.1  使用stdio设备
4.4.2  标准输入设备、标准输出设备和标准错误输出设备
4.5  其他格式化I/O操作
4.5.1  特例:printf (),sprintf()和sscanf()函数
4.5.2  其他函数:printErr()和fdprintf()函数
4.5.3  信息记录
4.6  异步输入/输出操作
4.6.1  POSIX标准的异步输入/输出程序
4.6.2  异步输入/输出操作控制块
4.6.3  使用异步输入/输出操作
4.7  VxWorks操作系统中的设备
4.7.1  串行I/O设备(终端和伪终端设备)
4.7.2  管道设备
4.7.3  伪存储设备
4.7.4  网络文件系统(NFS)设备
4.7.5  非NFS网络设备
4.7.6  CBIO接口
4.7.7  块存取设备
4.7.8  套接字
4.8  VxWorks操作系统与主机操作系统中I/O系统的区别
4.9  内部结构
4.9.1  驱动程序
4.9.2  驱动设备
4.9.3  文件描述符
4.9.4  块存取设备
4.9.5  驱动程序支持库
4.10  PCMCIA接口
4.11  外部设备互连接口:PCI
第5章  本地文件系统
5.1  简介
5.2  与MS-DOS兼容的文件系统:dosFs文件系统
5.2.1  建立dosFs文件系统
5.2.2  配置用户系统
5.2.3  初始化dosFs文件系统
5.2.4  创建块存取设备
5.2.5  创建磁盘高速缓冲区
5.2.6  创建和使用磁盘分区
5.2.7  创建dosFs文件系统设备
5.2.8  格式化磁盘卷
5.2.9  安装磁盘卷
5.2.10  例子
5.2.11  对磁盘和磁盘卷进行操作
5.2.12  目录操作
5.2.13  文件操作
5.2.14  分配磁盘空间的方法
5.2.15  灾难恢复和磁盘卷的一致性问题
5.2.16  dosFsLib文件支持的I/O控制功能
5.3  使用SCSI设备从本地dosFs文件系统启动
5.4  原始文件系统:rawFs文件系统
5.4.1  磁盘组织形式
5.4.2  初始化rawFs文件系统
5.4.3  将设备初始化成使用rawFs文件系统
5.4.4  安装磁盘卷
5.4.5  文件I/O操作
5.4.6  更换磁盘
5.4.7  rawFsLib文件支持的I/O控制功能
5.5  磁带文件系统:tapeFs文件系统
5.5.1  磁带中的组织结构
5.5.2  初始化tapeFs文件系统
5.5.3  安装磁带卷
5.5.4  文件I/O操作
5.5.5  更换磁盘
5.5.6  tapeFsLib文件支持的I/O控制功能
5.6  CD-ROM文件系统:cdromFs
5.7  目标服务器文件系统:TSFS
第6章  目标机工具
6,1  简介
6.2  基于目标机的shell
6.2.1  主机和目标机shell的不同
6.2.2  用目标机shell配置VxWorks
6.2.3  使用目标机shell的帮助和控制字符
6.2.4  从目标机shell加载和卸载目标模块
6.2.5  调试目标机shell
6.2.6  终止目标机shell正在执行的程序
6.2.7  使用远程登录进入目标机shell
6.2.8  分配Demangler
6.3  基于目标机的加载器
6.3.1  配置VxWorks加载器
6.3.2  目标机-加载器API
6.3.3  加载器选项总结
6.3.4  加载C++模块
6.3.5  指定加载模块的内存分配
6.3.6  影响加载器行为的限制
6.4  基于目标机的符号表
6.4.1  配置VxWorks系统符号表
6.4.2  生成一个内部系统符号表
6.4.3  生成一个可下载的系统符号表
6.4.4  使用VxWorks系统符号表
6.4.5  基于主机和目标机的符号表同步化
6.4.6  生成用户符号表
6.5  示函数
6.6  常见问题
第7章  C++语言开发
7.1  简介
7.2  在VxWorks系统下使用C++语言
7.2.1  实现C++语言访问的C语言代码
7.2.2  加入支持组件
7.2.3  C++组合器
7.3  初始化和确定静态目标
7.3.1  细化(munch)C++应用模块
7.3.2  交互式调用静态构造体和析构体
7.4  使用GNU C++编程
7.4.1  模板实例化
7.4.2  异常处理
7.4.3  Run-Time类型信息
7.4.4  命名空间(Namespaces)
7.5  使用Diab C++编程
7.5.1  模板实例化
7.5.2  异常处理
7.5.3  Run-Time类型信息
7.6  使用C++库
7.7  运行事例演示
第8章  闪存块设备驱动程序
8.1  简介
8.1.1  选择TrueFFS作为媒质
8.1.2  TrueFFS层
8.2  构建支持TrueFFS的系统
8.3  选择MTD组件
8.4  确定Socket驱动程序
8.5  置和建立项目
8.5.1  包含文件系统组件
8.5.2  包含核心组件
8.5.3  包含应用程序组件
8.5.4  包含MTD组件
8.5.5  包含转换层
8.5.6  加入Socket驱动程序
8.5.7  建立系统项目
8.6  设备格式化
8.6.1  规定驱动器号
8.6.2  对设备进行格式化
8.7  创建用于编写启动镜像的区域
8.7.1  写保护闪存
8.7.2  创建启动镜像区域
8.7.3  在闪存中编写启动镜像
8.8  安装驱动器
8.9  运行shell命令
8.10  编写Socket驱动程序
8.10.1  传送Socket驱动程序存根文件
8.10.2  理解Socket驱动程序功能
8.11  使用MTD支持的闪存设备
8.11.1  支持常用闪存接口(CFI)
8.11.2  支持其他的MTD
8.11.3  获得片上磁盘的支持
8.12  编写MTD组件
8.12.1  编写MTD识别函数
8.12.2  编写MTD映射函数
8.12.3  编写MTD读、写和擦除函数
8.12.4  定义MTD为组件
8.12.5  注册识别函数
8.13  闪存功能
8.13.1  块分配以及数据串
8.13.2  读和写操作
8.13.3  擦除循环和碎片收集
8.13.4  优化方式
8.13.5  TrueFFS中的故障恢复
第9章  VxDCOM应用
9,1  简介
9.2  COM技术概述
9.2.1  COM组件和软件可重用性
9.2.2  VxDCOM和实时分布式技术
9.3  使用Wind目标模板库
9.3.1  WOTL模板类的分类
9.3.2  CoClass真模板类
9.3.3  Lightweight对象类模板
9.3.4  单一实例类宏
9.4  阅读WOTL-生成的代码
9.4.1  WOTL CoClass定义
9.4.2  生成文件中使用的宏定义
9.4.3  接口映射
9.5  配置DCOM性能参数
9.6  使用Wind IDL编译器
9.6.1  命令行格式
9.6.2  已生成代码
9.6.3  数据类型
9.7  阅读IDL文件
9.7.1  IDL文件结构
9.7.2  定义属性
9.8  增加实时扩展
9.8.1  使用VxWorks上的优先级方案
9.8.2  在Windows上配置客户端优先级传送
9.8.3  使用线程集合Threadpools
9.9  使用OPC接口
9.10  编写VxDCOM服务器和客户端应用
9.10.1  编程
9.10.2  编写服务程序
9.10.3  编写客户端代码
9.10.4  询问服务器
9.10.5  执行客户端代码
9.11  比较VxDCOM和ATL执行
9.11.1  CcomObjectRoot
9.11.2  CcomClassFactory
9.11.3  CcomCoClass
9.11.4  CcomObject
9.11.5  CComPtr
9.11.6  CComBSTR
9.11.7  VxComBSTR
9.11.8  Ccom Variant
第10章  分布式信息队列
10.1  简介
10.2  用VxFusion配置VxWorks
10.3  使用VxFusion
10.3.1  VxFusion的系统结构
10.3.2  VxFusion的初始化
10.3.3  配置VxFusion
10.3.4  分布式名称数据库
10.3.5  操作分布式信息队列
10.3.6  操作组信息队列
10.3.7  操作适配器
10.4  系统局限性
10.5  节点启动
10.6  报文和消息
10.6.1  报文与消息比较
10.6.2  报文缓冲器
10.7  设计适配器
10.7.1  设计网络报头
10.7.2  写一个初始化程序
10.7.3  写一个启动程序
10.7.4  写一个发送程序
10.7.5  写一个输入程序
10.7.6  写一个I/O控制程序
第11章  共享内存对象
11.1  简介
11.2  使用共享内存对象
11.2.1  名称数据库
11.2.2  共享信号量
11.2.3  共享消息队列
11.2.4  共享内存分配器
11.3  内部需注意的事项
11.3.1  系统要求
11.3.2  旋转上锁机制
11.3.3  中断延迟
11.3.4  约束
11.3.5  高速缓存一致性
11.4  配置
11.4.1  共享内存对象和共享内存网络驱动
11.4.2  共享内存区
11.4.3  初始化共享内存对象包
11.4.4  配置举例
11.4.5  初始化步骤
11.5  发现故障及解决措施
11.5.1  配置问题
11.5.2  发现并解决故障的技巧
第12章  虚拟内存接口
12.1  简介
12.2  基本虚拟内存支持
12.3  虚拟内存配置
12.4  普通应用
12.5  使用程序化的MMU
12.5.1  虚拟内存上下文
12.5.2  私有虚拟内存
12.5.3  非高速缓存存储区
12.5.4  非可写存储器
12.5.5  故障检验
12.5.6  需警惕的问题

 

posted @ 2009-07-15 21:59  clara  阅读(5240)  评论(0编辑  收藏  举报