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 |