Interface da porta SCSI com drivers de miniporta de porta SCSI
A comunicação entre o driver de porta SCSI e os drivers de miniporta de porta SCSI ocorre por meio de SRBs (blocos de solicitação) SCSI e rotinas de retorno de chamada do driver de miniporta. Para obter uma discussão detalhada sobre as rotinas de retorno de chamada do driver de miniporta de porta SCSI, confira Drivers de miniporto SCSI.
Para obter uma visão geral e uma definição das funções SRB individuais, sinalizadores SRB e valores de status SRB, consulte SCSI_REQUEST_BLOCK.
Para ver discussões sobre como os drivers de miniporto devem responder a cada função SRB individual, consulte Rotina HwScsiStartIo do Driver scsi miniport.
A Porta SCSI encaminha SRBs para drivers de miniporta de porta SCSI de forma síncrona, exceto quando o adaptador dá suporte à fila marcada. Os adaptadores de barramento de host que dão suporte ao enfileiramento marcado podem enfileirar solicitações internamente e processá-las na ordem indicada pelas marcas que a Porta SCSI atribui a cada solicitação. A estrutura de SCSI_REQUEST_BLOCK (SRB) contém dois membros que o driver de Porta SCSI usa para especificar como os SRBs devem ser ordenados na fila interna do adaptador de host: QueuedTag e QueueAction. A Porta SCSI atribui um valor de contagem ou "marca" ao membro QueuedTag de cada SRB que indica a ordem na qual o adaptador deve processar os pacotes. Os valores de marca também permitem que a Porta SCSI acompanhe quais SRBs foram concluídos com êxito e quais SRBs esgotaram.
O membro QueueAction recebe um dos seguintes valores:
SRB_SIMPLE_TAG_REQUEST
SRB_HEAD_OF_QUEUE_TAG_REQUEST
SRB_ORDERED_QUEUE_TAG_REQUEST
Para obter uma explicação desses valores, consulte a especificação SCSI-2.