一种远程PCI设备驱动方法的设计与实现
摘要 | 第1-6页 |
Abstract | 第6-8页 |
目录 | 第8-10页 |
图表目录 | 第10-12页 |
第一章 引言 | 第12-17页 |
·项目背景 | 第12页 |
·项目的目的和意义 | 第12-15页 |
·应用场景 | 第13-14页 |
·项目目的 | 第14-15页 |
·项目简介 | 第15页 |
·本文的工作与组织 | 第15-17页 |
第二章 相关技术 | 第17-31页 |
·设备驱动概述 | 第17-18页 |
·Linux下的设备 | 第17页 |
·Linux设备驱动 | 第17-18页 |
·PCI简介 | 第18-24页 |
·PCI配置空间 | 第19-21页 |
·Linux下的PCI设备驱动 | 第21-24页 |
·虚拟机技术 | 第24-28页 |
·处理器的虚拟 | 第25页 |
·内存的虚拟 | 第25-26页 |
·I/O资源的虚拟 | 第26-28页 |
·QEMU虚拟机 | 第28-31页 |
·QEMU动态翻译技术 | 第28-29页 |
·QEMU设备模型 | 第29-31页 |
第三章 远程PCI设备驱动的设计 | 第31-45页 |
·总体设计 | 第31-33页 |
·本地设备代理的设计 | 第33-36页 |
·设备虚拟化方式的选择 | 第33页 |
·远端PCI设备的模拟 | 第33-35页 |
·设备代理的执行流程 | 第35-36页 |
·远端驱动代理的设计 | 第36-39页 |
·用户空间驱动 | 第36-38页 |
·驱动代理的模块设计 | 第38页 |
·驱动代理的执行流程 | 第38-39页 |
·设备I/O读写的设计 | 第39-40页 |
·中断处理的设计 | 第40-41页 |
·DMA操作的设计 | 第41-44页 |
·网络通信的设计 | 第44-45页 |
第四章 远程PCI设备驱动的实现 | 第45-66页 |
·本地设备代理的实现 | 第45-50页 |
·设备代理的注册 | 第45-46页 |
·设备代理的初始化 | 第46-47页 |
·配置空间读写的实现 | 第47-49页 |
·设备I/O读写的实现 | 第49-50页 |
·DMA操作的实现 | 第50-60页 |
·DMA映射操作的截获 | 第50-53页 |
·DMA映射信息结构 | 第53-54页 |
·DMA通用层API的实现 | 第54-59页 |
·设备代理和客户机的交互 | 第59-60页 |
·远端驱动代理的实现 | 第60-64页 |
·内核模块的初始化 | 第60-62页 |
·用户空间服务器的实现 | 第62-63页 |
·设备操作的实现 | 第63-64页 |
·网络通信模块的实现 | 第64-66页 |
第五章 总结与展望 | 第66-68页 |
·论文小结 | 第66页 |
·工作展望 | 第66-68页 |
参考文献 | 第68-70页 |
致谢 | 第70-71页 |
参与项目 | 第71-73页 |