存储驱动和设备对象
2010-04-06 23:24
253 查看
储存设备栈由处理系统上存储设备I/O的驱动创建的树状设备对象组成。树的根节点是存储适配器或集成于其它存储栈的驱动栈的功能性设备对象(FDO)。树的子节点是文件系统和用户模式应用程序使用的设备对象。
如任一PnP驱动相同,通过IoCreateDevice创建设备对象,IoAttachDeviceToDeviceStack将其连接到设备栈,使用初始化期间PnP管理器传递给驱动程序的AddDevice例程的指向设备对象的指针,存储类型驱动或存储过滤性驱动在自身的AddDevice例程中其加入树。
磁带微类型,媒体更换器微类型或SCSI微类型不要求创建一个设备对象并附加到设备栈中。相反地,通过微类型/微端口驱动程序例程收集创建设备对象的数据,系统提供的磁带微类型,媒体更换器微类型或SCSI微类型驱动程序,代表微类型/为端口,处理这些任务。
存储端口驱动程序创建FILE_DEVICE_MASS_STORAGE类型的物理设备对象(PDOs)。磁盘类,CD-ROM类,磁带类和媒体更换器类驱动程序相应地创建FILE_DEVICE_DISK,FILE_DEVICE_CD_ROM,FILE_DEVICE_TAPE和FILE_DEVICE_CHANGER类型的FDOs。
更多关于PnP驱动程序设计信息,参考PnP驱动程序设计要领。关于PnP相关的IoXxx例程,参考即插即用例程。
如任一PnP驱动相同,通过IoCreateDevice创建设备对象,IoAttachDeviceToDeviceStack将其连接到设备栈,使用初始化期间PnP管理器传递给驱动程序的AddDevice例程的指向设备对象的指针,存储类型驱动或存储过滤性驱动在自身的AddDevice例程中其加入树。
磁带微类型,媒体更换器微类型或SCSI微类型不要求创建一个设备对象并附加到设备栈中。相反地,通过微类型/微端口驱动程序例程收集创建设备对象的数据,系统提供的磁带微类型,媒体更换器微类型或SCSI微类型驱动程序,代表微类型/为端口,处理这些任务。
存储端口驱动程序创建FILE_DEVICE_MASS_STORAGE类型的物理设备对象(PDOs)。磁盘类,CD-ROM类,磁带类和媒体更换器类驱动程序相应地创建FILE_DEVICE_DISK,FILE_DEVICE_CD_ROM,FILE_DEVICE_TAPE和FILE_DEVICE_CHANGER类型的FDOs。
更多关于PnP驱动程序设计信息,参考PnP驱动程序设计要领。关于PnP相关的IoXxx例程,参考即插即用例程。
相关文章推荐
- WinCE 存储设备驱动加载_接口调用过程
- 键盘的过滤(绑定驱动kdbclass的所有设备对象)
- 用面向对象思想分析linux字符设备驱动开发
- [zz]驱动对象设备对象设备栈乱杂谈
- 驱动对象-设备对象-设备栈
- linux设备驱动归纳总结(三):3面向对象思想和lseek
- linux设备驱动归纳总结(三):3.设备驱动面向对象思想和lseek的实现
- WDF驱动学习:驱动对象,设备对象(二)
- Ceph 之 块设备、文件系统、对象存储的使用
- WinCE 存储设备驱动加载_接口调用过程
- 0.driverbase-驱动对象、设备对象、DriverEntry、IoCreateDevice、符号链接、DriverUnLoad、WDM
- 驱动视频: Windows驱动讲稿1.6 -- 设备对象详解
- 设备驱动中环形缓冲区数据存储和读写同步的实现
- 设备对象和驱动对象的关系
- 驱动杂记1:对驱动对象,设备对象,设备栈的理解
- 基础驱动和设备对象关系
- Windows驱动开发WDM (11)- 多个设备对象(同一个驱动)
- [转载]驱动对象 设备对象 设备栈 乱杂谈
- 在linux和Windows下配置HP FC存储设备多路径驱动
- 驱动视频:windows驱动讲稿1.5 - 创建设备对象