Windows NT 设备驱动程序开发基础(7) (转)[@more@]1.3.9 分层
I/O管理器一个有用的功能是允许把一个 驱动 程序堆在另一个驱动程序之上。这样在分
编写如 网络驱动等有 协议栈程序时,可以为各层编写相对独立的代码。当驱动程序需要
在不同的平台上移植时,只需重新编写最下层的 硬件驱动程序即可。高层驱动程序的另
一个功能是可以对 用户请求进行予处理,比如把较大的请求分割成较小的请求分多次传
给给下层的程序。
1.3.10 设备名及其符号连接
windows NT 系统维护着一个 对象名字空间,把所有在系统内注册过的对象的名字分类
存在一个树状空间里,用 win32 SDK提供的WinObj工具可以浏览这个空间。如果希望设备
能被用户的CreateFile 函数打开,就需要在 调用IoCreateDevice创建该设备对象时赋予
它一个名字,位于Device下,并调用IoCreateSymbolicLink在DosDevices下创建一
个符号连接。这样,用户程序就能用CreateFile(".符号连接名",……)打开该设
备,并获得其句柄。
--
I/O管理器一个有用的功能是允许把一个 驱动 程序堆在另一个驱动程序之上。这样在分
编写如 网络驱动等有 协议栈程序时,可以为各层编写相对独立的代码。当驱动程序需要
在不同的平台上移植时,只需重新编写最下层的 硬件驱动程序即可。高层驱动程序的另
一个功能是可以对 用户请求进行予处理,比如把较大的请求分割成较小的请求分多次传
给给下层的程序。
1.3.10 设备名及其符号连接
windows NT 系统维护着一个 对象名字空间,把所有在系统内注册过的对象的名字分类
存在一个树状空间里,用 win32 SDK提供的WinObj工具可以浏览这个空间。如果希望设备
能被用户的CreateFile 函数打开,就需要在 调用IoCreateDevice创建该设备对象时赋予
它一个名字,位于Device下,并调用IoCreateSymbolicLink在DosDevices下创建一
个符号连接。这样,用户程序就能用CreateFile(".符号连接名",……)打开该设
备,并获得其句柄。
--
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-992242/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10752043/viewspace-992242/
本文介绍了Windows NT中设备驱动程序的开发基础,包括分层I/O管理器的概念及其实现方式,以及如何通过创建设备名和符号链接使得用户能够通过标准API调用访问设备。

被折叠的 条评论
为什么被折叠?



