Freigeben über


RS_COMMAND_DESCRIPTOR-Struktur (storport.h)

Die RS_COMMAND_DESCRIPTOR-Struktur enthält Informationen zu einem einzelnen unterstützten Befehlsdeskriptorblock (CDB).

Syntax

typedef struct {
  UCHAR OperationCode;
  UCHAR Reserved;
  UCHAR ServiceAction[2];
  UCHAR Reserved1;
  UCHAR ServiceActionValid : 1;
  UCHAR CommandTimeoutsDescriptorPresent : 1;
  UCHAR CommandDurationLimitPage : 2;
  UCHAR MultipleLogicalUnits : 2;
  UCHAR ReadWriteCommandDurationLimitsPage : 1;
  UCHAR Reserved2 : 1;
  UCHAR CdbLength[2];
} RS_COMMAND_DESCRIPTOR, *PRS_COMMAND_DESCRIPTOR;

Member

OperationCode

Gibt den Befehl an, der vom Befehlsdeskriptorblock (Command Descriptor Block, CDB) angefordert wird.

Reserved

Für die interne Verwendung reserviert.

ServiceAction[2]

Ermöglicht die Qualifizierung für das Feld OperationCode für einige Befehle, die Folgendes ermöglicht:

  • Nicht verwandte Befehle, die denselben Vorgangscode verwenden, z. B. die Befehle "Unterstützte Vorgangscodes melden" und "Berichtszielportgruppen".
  • Eine Reihe verwandter Funktionen, die denselben Vorgangscode verwenden, z. B. den Befehl Persistent Reserve In.

Reserved1

Für die interne Verwendung reserviert.

ServiceActionValid

Gibt an, dass der Inhalt der Felder OperationCode und ServiceAction gültig ist.

CommandTimeoutsDescriptorPresent

Gibt an, dass der Befehlstimeoutdeskriptor in diesem Befehlsdeskriptor enthalten ist.

CommandDurationLimitPage

Die Felder ReadWriteCommandDurationLimitsPage und CommandDurationLimitPage geben zusammen die Modusseite an, die die Befehlsdauerbegrenzung für den Befehl angibt.

MultipleLogicalUnits

Das Feld MultipleLogicalUnits wird in der folgenden Tabelle beschrieben.

Wert BESCHREIBUNG
0 Die Auswirkungen dieses Befehls auf andere logische Einheiten werden nicht gemeldet.
1 Dieser Befehl wirkt sich nur auf diese logische Einheit aus.
2 Dieser Befehl betrifft mehrere, aber nicht alle logischen Einheiten, die auf diesem Zielgerät enthalten sind.
3 Dieser Befehl wirkt sich auf alle logischen Einheiten aus, die in diesem Zielgerät enthalten sind.

ReadWriteCommandDurationLimitsPage

Die Felder ReadWriteCommandDurationLimitsPage und CommandDurationLimitPage geben zusammen die Modusseite an, die die Befehlsdauerbegrenzung für den Befehl angibt.

Reserved2

Für die interne Verwendung reserviert.

CdbLength[2]

Gibt die Länge des Befehlsdeskriptorblocks in Byte für den OperationCode an, und wenn ServiceActionValidauf TRUE festgelegt ist, die aktion, die durch das ServiceAction-Feld angegeben wird.

Hinweise

Die Werte für die Felder ReadWriteCommandDurationLimitsPage und CommandDurationLimitPage werden in der folgenden Tabelle angezeigt.

ReadWriteCommandDurationLimitsPage CommandDurationLimitPage BESCHREIBUNG
0 0 Für diesen Befehl ist keine Seite für den Begrenzungsmodus für die Befehlsdauer angegeben.
1 0 Reserviert
0 1 Befehlsdauerlimit Seite "Modus"
0 2 Seite "B-Modus" für Befehlsdauerlimit
1 1 Seite "T2A-Modus für Befehlsdauerlimit"
1 2 Seite "Befehlsdauerlimit T2B-Modus"
0 oder 1 3 Reserviert

Anforderungen

Anforderung Wert
Header storport.h