- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
200/年11期增刊 计算机系统应用
Linux下用户模式PCI设备驱动程序研究
ResearchonLinux PCIDeviceDriver
User—mode
张雪燕 (宁波广播电视大学信息系浙江宁波315000)
杨晟刚 (燕山大学电气工程学院自动化系河北秦皇岛066004)
访问支持和IOMMU,能为用户进程提供安全可靠的DMA访问。内核为驱动程序提供了四种可供选择
的运行地址空间并能响应和处理来自用户空间的中断,在此基础上,本文提出了用户模式驱动程序的体
系结构和运行原理。最后通过分析实验结果,总结用户模式驱动程序的优劣,并提出了解决方案。
关键词:用户模式驱动程序PCI设备中断请求队列直接存储器存储内核权限
1 前言 设备驱动程序的研究是一个较新的热点问题,较为著
名的是Peter
通常驱动程序运行于内核模式下,运行在操作系 Chubb的gelato项目哩1。
统的低端层Ⅲ。这类驱动程序拥有完全特权,可以访 本文其他部分如下:第二部分分析支持用户模式
问操作系统中的任何地方,影响操作系统的任何部分。 驱动程序开发的内核的体系结构;第三部分介绍用户
因此,内核模式驱动程序至少存在以下两个致命的 模式驱动程序的结构和运行原理:第四部分通过分析
缺陷: IDE设备的测试数据总结用户模式驱动程序的优劣;第
五部分为全文的总结o
(1)内核模式驱动程序的bug会导致整个操作系
统出错或异常,如导致系统重新启动、篮屏、黑屏或系
统崩溃等。 2支持用户模式驱动程序的内核体系结构
(2)内核模式驱动程序的bug是产生系统安全漏
2.1驱动程序运行的地址空间
洞的主要因素。由于内核模式的驱动程序具有最高权 通常Unux驱动程序运行在内核地址空间,拥有内
限,因此一些恶意代码经常利用驱动程序的bug来破 核的权限。但驱动程序并非一定要运行在内核地址空
坏整个系统,即增加新的系统安全漏洞。 间,实际上内核支持的可运行空间可达四个,如图1。
另外由于内核模式的驱动程序采用直接编译到内
核或链接到内核的方式,调试很不方便。解决上述问
q核地址空刚
题的有效方法是让驱动程序运行于用户模式下。目前 A
一些主要的软硬件公司已联合开发用户模式下的程
乏限地址空闻 C D
序。如微软公司将在windows的第六个版本Vista中
引入用户模式的驱动程序,将原本用于核心模式的驱 }户地址空间 B
动程序从核心态脱离出来,缓解了由于驱动程序崩溃 内核权限 用户权目
造成系统崩溃的现象。打印机、显示器、各种USB设备 权限
和其他硬件设备的驱动程序均可运行于用户模式下。
图1 驱动程序可能运行的地址空间
Unux阵营很早就开始开发支持用户模式驱动程序的
内核体系结构。Unux2.5以上的版本已可支持用户模 其中一般Unux驱动程序运行在A点,它直接与
式驱动程序,最典型的为XServer。目前用户模式PCI
文档评论(0)