点击空白处退出提示
作品详情
本书共分为 11 章,各章内容如下:
第一章简单介绍了嵌入式系统,并对 *works 操作系统特性进行了简单的说明。
第二章对 *works 操作系统几个主要组成方面进行了比较详细的介绍,包括任务,任务调
度,任务间通信,内存管理,中断处理。我们不做翻译官方文档的工作,结合作者经验有感
而发。
第三章对 *works 内核映像类型以及启动方式进行了详细分析,并对下载方式中使用的
bootrom 进行了较为深入的分析和介绍,此后对 *works 操作系统启动过程进行了梳理。本
章将澄清读者对 *works 启动方面的很多疑问。
第四章讨论了驱动程序的基本功能和结构,对驱动程序中常用的一些策略以及注意事项进行
了介绍。
第五章介绍了 *works 设备驱动的内核结构层次,着重对 IO 子系统及其维护的三张系统表
进行了讨论,并对 *works 下已有的几个较为常用的驱动以代码示例的方式介绍了其使用
方法。
第六章开始进入具体设备驱动的设计,在本章中我们将从结构层次最为简单的普通字符设备
驱动开始讲起,以一个 SPI 接口驱动代码为例,着重讨论了普通字符设备驱动的结构,设计
方式和具体实现。
第七章对串口驱动设计和实现进行了详细的分析。串口也是字符设备的一种,由于其常用性,
*works 内核专门提供了 TTY 中间层来提高串口驱动设计的效率,降低串口驱动设计的复
杂度。
第八章进入到第二大类设备-块设备驱动的设计和实现的分析中。我们将从数据结构出发,
分析块设备驱动的基本结构,进而讨论其具体实现。*works 下块设备驱动工作方式比较特
殊,其使用阻塞读写方式,不同于通用操作系统下中断读写方式,这与 *works 特殊的工
作环境有关。
第九章我们将对 FLASH 设备驱动进行详细介绍。Flash 设备是嵌入式平台上最为常见和常
用的设备,用以存储操作系统内核映像和用户数据。本章将以 *works 内核提供的 TrueFFS
中间层进行展开,分析 Flash 设备驱动涉及的各个方面。
第十章进入到第三大类设备-网络设备驱动的设计和实现中。网络设备由于其独特的工作方
式,其内核驱动层次不同于其他两类设备(字符,块设备),其不属于 IO 子系统管理,而
是直接工作在内核网络栈实现下,为了简化网络设备驱动设计的复杂度,*works 提供 MUX
中间层,在该层次下实现的驱动通常被称为增强型网络驱动,本章同样也是从数据结构出发,
以实际项目中使用的网口驱动代码为例,逐步完成对网络设备驱动的设计和实现。
第十一章分析了 USB 设备驱动的设计和实现。本章首先对 USB 本身进行了详细的介绍,之
后对我们要驱动对象进行了澄清,一般而言,USB 设备驱动指的是对 USB 主机或者目标机
控制器的驱动,这个驱动由于与内核 USB 栈耦合较紧密,故必须对内核 USB 栈的实现有一
个很清楚的了解才能成功完成 USB 主机控制器的驱动开发。本章首先跟随一个 USB 类驱动
层读数据请求,对请求在内核 USB 栈中的传递路径进行了跟踪,对路径上调用的关键函数
以及使用的数据结构进行了较为详细的分析和介绍,之后以 Mass Storage 类驱动为例,介绍
了类驱动的初始化过程,并以 UHCI 控制器驱动为例,介绍了主机控制器驱动的初始化过程,
之后总结出了 USB 主机控制器的驱动结构,并给出了驱动中两个中心函数的实现框架。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论