- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用户的空间驱动程序的研究
用户的空间驱动程序的研究
(北京工业大学 嵌入式软件与系统研究所, 北京 100022)
??
摘 要:
针对一些复杂设备驱动程序的特点,研究了用户空间实现驱动程序的方法,将驱动程序分为两部分:内核空间实现核心部分,在用户空间实现驱动程序新的接口,以适应设备的多样性。研究了用户空间驱动程序的结构、用户空间和内核空间驱动程序内容的划分及它们之间的通信方法。选择典型的USB设备驱动程序,描述了通用USB驱动程序在用户空间的实现过程,主要内容包括初始化设备接口、操作设备接口、控制传输接口、批传输接口、中断传输接口和通信部分,最后进行了测试分析。
?? 关键词:用户空间; 驱动程序; 通用串行总线
?? 中图分类号:TP319 文献标志码: A
文章编号:1001?菠B3695(2008)12?菠B3642?菠B03
??
Driver researching in user space
??
HE Fu??gui, HOU Yi??bin, LI Hui
??
(Embedded Software Systems Institute, Beijing University of Technology, Beijing 100022, China)
??
Abstract:
According to characteristics of complex device driver, this paper investigated the method that driver was realized in user space. Driver was divided into two parts, the key part was realized in kernel, and new interface was realized in user space. The paper researched structure of driver, content partition and communication method between user and kernel space. And chosed typical USB driver as examples, and described the realization of generally USB driver in user space, main content included initialized interfaces, operating interfaces, control interfaces, bulk transport interfaces , interrupt transport interfaces and communication. Finally, testing and analysis were done.
?? Key words:user space; driver; USB(universal serial bus)
?お?
0 引言??
驱动程序[1]是直接工作在各种硬件设备上的软件,它提供给用户操作设备的接口,是操作系统中内容最丰富的一部分。对于嵌入式设备的开发,其中最主要的工作就集中在设备驱动。随着电子技术的快速发展,不断出现新的输入/输出设备,其中使用最广泛的就是USB设备。USB设备有丰富的种类,如USB字符设备、USB键盘鼠标、USB块设备和USB硬?┡痰泉?。??
设备驱动程序一般都是在内核实现的,对于设备类型单一的驱动程序,仅仅在内核实现就可以满足要求了;但对于一些需要复杂驱动程序的设备,内核设备驱动程序会遇到如下的一些问题:??
a)对于不同的操作系统平台,要设计的设备驱动程序必须是要兼容两个平台的。??
b)对于嵌入式系统,不能定制操作系统设备驱动程序,因为修改内核是非常困难的。??
c) 出现了同一类型的新设备,必须开发新的设备驱动程序。 ??
针对上述问题,本文研究了在用户空间驱动程序的实现方法,将驱动程序的一部分在用户空间实现[2],由用户空间的驱动程序提供接口给应用程序,使设备驱动程序的内核接口限制在驱动程序内部,设备驱动程序的结构更加灵活,也使应用程序访问设备更加方便。??
1 用户空间驱动程序??
在用户空间实现驱动程序是把驱动程序的一部分放在用户空间,但不能将驱动程序任意的部分放在用户空间,也不是所有的设备驱动程序都放到用户空间实现,对于大部分的设备驱动程序是在内核空间实现的。只有在设备种类多、驱
原创力文档


文档评论(0)