SCSI 端口的可以与 SCSI 端口微型端口驱动程序交互的接口
SCSI 端口驱动程序与 SCSI 端口微型端口驱动程序之间的通信通过 SCSI 请求块 (SRB) 和微型端口驱动程序回调例程进行。 有关 SCSI 端口微型端口驱动程序回调例程的详细讨论,请参阅 SCSI 微型端口驱动程序。
有关各个 SRB 函数、SRB 标志和 SRB 状态值的概述和定义,请参阅 SCSI_REQUEST_BLOCK。
有关微型端口驱动程序必须如何响应每个 SRB 函数的讨论,请参阅 SCSI 微型端口驱动程序的 HwScsiStartIo 例程。
SCSI 端口将 SRB 同步转发到 SCSI 端口微型端口驱动程序,适配器支持标记队列时除外。 支持标记队列的主机总线适配器可以在内部对请求进行排队,并按照 SCSI 端口分配给每个请求的标记指示的顺序处理这些请求。 SCSI_REQUEST_BLOCK (SRB) 结构包含两个成员,SCSI 端口驱动程序使用这些成员来指定在主机适配器的内部队列中应如何对 SRB 进行排序:QueuedTag 和 QueueAction。 SCSI 端口将计数或 “标记” 值分配给每个 SRB 的 QueuedTag 成员,指示适配器处理数据包的顺序。 标记值还允许 SCSI 端口跟踪哪些 SDB 已成功完成以及哪些 SDB 已超时。
为 QueueAction 成员分配以下值之一:
SRB_SIMPLE_TAG_REQUEST
SRB_HEAD_OF_QUEUE_TAG_REQUEST
SRB_ORDERED_QUEUE_TAG_REQUEST
有关这些值的说明,请参阅 SCSI-2 规范。