SCSI HBA设备对象例程

    下图显示了为具有PCI IEEE1394控制器的系统、具有CD-ROMPCI SCSI适配器和可分区磁盘设备创建的设备对象。附属于IEEE1394控制器的设备对象显示并描述于IEEE 1394控制器设备对象例程。

 

SCSI主控总线适配器上CD-ROM和磁盘设备的设备对象树

        从图的下部开始,下面描述了每一设备对象及其相关驱动程序:

        1.存储总线驱动程序为存储总线创建FDO,并将其绑定于有PnP管理器创建的存储总线PDO。存储总线FDO下面的设备对象树结构依赖于存储总线及其如何集成于系统的。端口驱动程序之上的存储驱动程序不涉及到这些更低层对象。

上图显示了由具有PCI总线系统的PCI总线驱动程序创建的存储总线FDO

        2.PCI总线驱动程序为其上的每一存储适配器枚举并创建PDO。相应的存储端口驱动程序创建FDO并绑定到PDO上。

上图显示了2个适配器PDO,其一为IEEE1394控制器,另一为SCSI主控总线适配器。SCSI端口驱动程序和一个相关的微端口驱动程序创建一个FDO并绑定到SCSI适配器PDO上。

        3.存储端口驱动程序通过为每一绑定于其适配器的目标设备创建一个PDO来虚拟化目标设备。上图显示了两个由SCSI端口/微端口设备驱动程序创建的PDO:其一为硬盘,另一为CD-ROM

        4.过滤驱动程序将过滤设备对象绑定于由存储端口驱动程序到处的目标设备PDO。该过滤驱动程序能解析和转化类型驱动程序发送的请求到目标设备,例如,无需硬件相关的改变而变通解决设备相关的问题的通用类型和端口驱动程序。上图显示了一个由CD音频过滤性驱动程序绑定于CD-ROMPDO的过滤性DO

        5.存储类型驱动程序创建FDO并将其绑定于下一更低层设备对象,该设备对象为一有存储端口驱动程序到处的目标设备PDO,或由介入性过滤驱动程序绑定于设备栈的过滤性DO。类型驱动程序,通过更低层驱动程序的设备对象,分发所有的随后的请求到存储设备。上图显示了两个这一类型的FDO:其一代表CD-ROM对象,另一代表硬盘的0分区。0分区代表整个RAM磁盘,不管设备是分否区,其总是存在。

        6.类型驱动程序可以起到总线驱动程序的作用,当PnP管理器询问其子设备(IRP_MN_QUERY_DEVICE_RELATIONS with BusRelations).的时候,可以返回PDO列表。例如,一个分区媒体设备驱动程序,如一可移动磁盘,可能返回一列表代表其分区。更高层驱动程序绑定FDO到这些PDO上。上图显示了三个该类型的PDO,每一代表了可被寻址的目标设备的一磁盘分区。对于一个固定的磁盘,分区管理器绑定于FDO,其代表分区0,并代表所有分区处理PnP操作。分区管理器的所有活动对于磁盘类型驱动和其他上层过滤驱动是透明的。

        7.过滤性驱动程序能绑定于类型驱动之上。与更低层过滤性驱动不同,上层过滤性驱动转化发送给类型驱动程序的IRP,也可以在发送IRP到更低层设备对象前转化这些IRP。过滤性驱动程序能解析任一只读请求,并转化这些数据,同时定义而外的I/O控制代码,例如,使能一用户应用程序提供密码或其它相关信息。上图显示了一个由磁盘加密过滤性驱动程序创建,并版定于磁盘PDO分区1的过滤性DO

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值