| 致谢 | 第1-5页 |
| 摘要 | 第5-6页 |
| Abstract | 第6-10页 |
| 1 绪论 | 第10-17页 |
| ·需求分析 | 第10-11页 |
| ·研究方案 | 第11-14页 |
| ·主要硬件 | 第11-12页 |
| ·软件架构 | 第12-14页 |
| ·本设计与类似方案的对比与优势 | 第14-15页 |
| ·本文主要工作 | 第15页 |
| ·论文结构安排 | 第15-17页 |
| 2 Linux 下的设备驱动 | 第17-27页 |
| ·Linux 对设备的管理 | 第17-20页 |
| ·Linux 操作系统对设备的分类 | 第17-18页 |
| ·设备驱动在软硬件系统中的位置 | 第18-19页 |
| ·设备驱动的组成部分 | 第19-20页 |
| ·Linux 下的块设备驱动 | 第20-23页 |
| ·块设备的初始化 | 第20页 |
| ·缓冲机制与读写请求的处理 | 第20-23页 |
| ·网络设备驱动 | 第23-27页 |
| ·网络驱动程序的结构 | 第23-24页 |
| ·驱动程序接口 | 第24-27页 |
| 3 802.119 Ad Hoc 无线网络的组建 | 第27-45页 |
| ·无线局域网的结构 | 第27-32页 |
| ·基本结构无线局域网 | 第28-29页 |
| ·点对点式Ad Hoc 网络 | 第29-30页 |
| ·Ad Hoc 网络的拓扑结构 | 第30-32页 |
| ·802.119 Ad Hoc 网络帧类型与帧格式 | 第32-35页 |
| ·帧类型 | 第32页 |
| ·帧结构 | 第32-35页 |
| ·Marvell 88W8686 WLAN 芯片 | 第35-41页 |
| ·88W8686 的功能与优点 | 第35-36页 |
| ·Marvell 88W8686 的主机接口 | 第36-39页 |
| ·主机驱动和Firmware 架构 | 第39-41页 |
| ·网络配置 | 第41-45页 |
| ·网络安全性设置 | 第41-42页 |
| ·设备端无线网络设置流程 | 第42-45页 |
| 4 USB 存储设备功能的软件模拟 | 第45-56页 |
| ·USB 2.0 数据传输方式与总线结构 | 第45-47页 |
| ·USB 总线上的数据传输方式 | 第45-46页 |
| ·USB 设备逻辑结构 | 第46-47页 |
| ·USB 接口在嵌入式设备中的应用 | 第47-49页 |
| ·嵌入式设备中USB 接口的工作模式 | 第47-48页 |
| ·嵌入式USB 设备的基本功能 | 第48-49页 |
| ·利用块设备实现USB 存储设备功能 | 第49-56页 |
| ·Linux 下的USB 设备驱动层次结构 | 第49-50页 |
| ·Linux Gadget 子系统与USB 主机端的交互 | 第50-51页 |
| ·大容量存储设备的数据传输 | 第51-52页 |
| ·Linux Gadget 系统程序分析与实现 | 第52-55页 |
| ·USB File_Storage Device 驱动的加载和使用 | 第55-56页 |
| 5 网络块设备的分析与实现 | 第56-67页 |
| ·网络块设备基本架构 | 第56-57页 |
| ·NBD 服务端程序设计 | 第57-61页 |
| ·网络块设备响应文件系统读写请求的过程 | 第57-58页 |
| ·本设计中NBD 服务端程序结构 | 第58-60页 |
| ·寻址空间的扩展 | 第60-61页 |
| ·NBD 客户端程序设计 | 第61页 |
| ·NBD 驱动程序设计 | 第61-65页 |
| ·NBD 驱动程序中的主要数据结构 | 第62-63页 |
| ·驱动程序的主要处理流程 | 第63-64页 |
| ·读写请求的处理 | 第64-65页 |
| ·NBD 驱动程序的注册和卸载 | 第65-67页 |
| 6 实测性能 | 第67-69页 |
| ·测试方法 | 第67页 |
| ·测试步骤与结果 | 第67-68页 |
| ·测试数据分析 | 第68-69页 |
| 结论 | 第69-71页 |
| 参考文献 | 第71-73页 |
| 附录关键函数 | 第73-77页 |
| 作者简历 | 第77-79页 |
| 学位论文数据集 | 第79-80页 |