STORAGE_PROTOCOL_NVME_DATA_TYPE-Enumeration (ntddstor.h)

Beschreibt den Typ der NVMe-protokollspezifischen Daten, die während einer IOCTL_STORAGE_QUERY_PROPERTY Anforderung abgefragt werden sollen.

Syntax

typedef enum _STORAGE_PROTOCOL_NVME_DATA_TYPE {
  NVMeDataTypeUnknown,
  NVMeDataTypeIdentify,
  NVMeDataTypeLogPage,
  NVMeDataTypeFeature
} STORAGE_PROTOCOL_NVME_DATA_TYPE, *PSTORAGE_PROTOCOL_NVME_DATA_TYPE;

Konstanten

 
NVMeDataTypeUnknown
Unbekannter Datentyp.
NVMeDataTypeIdentify
Abrufen von Identifizieren von Daten, die entweder Daten identifizieren des Controllers oder Identifizieren von Namespacedaten sein können.

Wenn diese Art von Daten abgefragt wird, sollten Felder in der STORAGE_PROTOCOL_SPECIFIC_DATA-Struktur die folgenden Werte aufweisen:

* ProtocolDataRequestValue wird für adapter oder NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE für Namespace NVME_IDENTIFY_CNS_CONTROLLER.
* Wenn protocolDataRequestValueNVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE ist, gibt das Feld ProtocolDataRequestSubValue die Namespace-ID an. (Beachten Sie, dass NVME_IDENTIFY_CNS_ACTIVE_NAMESPACES derzeit nicht unterstützt wird.)
NVMeDataTypeLogPage
Rufen Sie eine NVMe-Protokollseite ab.

Wenn diese Art von Daten abgefragt wird, sollten Felder in der STORAGE_PROTOCOL_SPECIFIC_DATA-Struktur die folgenden Werte aufweisen:

* ProtocolDataRequestValue ist der Bezeichner der abzurufenden Protokollseite.
* ProtocolDataRequestSubValue ist der niedrigere 32-Bit-Wert des Offsets innerhalb einer Protokollseite, von der aus mit der Rückgabe von Daten begonnen werden soll.
* ProtocolDataRequestSubValue2 ist der obere 32-Bit-Wert des Offsets innerhalb einer Protokollseite, von der mit der Rückgabe von Daten begonnen werden soll.
* ProtocolDataRequestSubValue3 ist der protokollspezifische Bezeichner, der für eine bestimmte Protokollseite erforderlich ist.
* ProtocolDataRequestSubValue4 ist eine STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE-Struktur , mit der zusätzliche Informationen angegeben werden können, wenn die Protokollseite angezeigt wird.
NVMeDataTypeFeature
Featuredatentyp.

Hinweise

Wenn Sie IOCTL_STORAGE_QUERY_PROPERTY verwenden, um protokollspezifische Informationen im STORAGE_PROTOCOL_DATA_DESCRIPTOR abzurufen, konfigurieren Sie die STORAGE_PROPERTY_QUERY-Struktur wie folgt:

  • Weisen Sie einen Puffer zu, der sowohl eine STORAGE_PROPERTY_QUERY als auch eine StrukturSTORAGE_PROTOCOL_SPECIFIC_DATA enthalten kann.

  • Legen Sie das Feld PropertyID für eine Controller- bzw. Geräte-/Namespaceanforderung auf StorageAdapterProtocolSpecificProperty oder StorageDeviceProtocolSpecificProperty fest.

  • Legen Sie das Feld QueryType auf PropertyStandardQuery fest.

  • Füllen Sie die Struktur STORAGE_PROTOCOL_SPECIFIC_DATA mit den gewünschten Werten. Der Anfang der STORAGE_PROTOCOL_SPECIFIC_DATA ist das Feld AdditionalParameters von STORAGE_PROPERTY_QUERY.

Um einen Typ von NVMe-protokollspezifischen Informationen anzugeben, konfigurieren Sie die Struktur STORAGE_PROTOCOL_SPECIFIC_DATA wie folgt:

  • Legen Sie das Feld ProtocolType auf ProtocolTypeNVMe fest.

  • Legen Sie das Feld DataType auf einen durch STORAGE_PROTOCOL_NVME_DATA_TYPE definierten Enumerationswert fest:

    • Verwenden Sie NVMeDataTypeIdentify, um Daten zum Identifizieren des Controllers oder zum Identifizieren von Namespacedaten abzurufen.
    • Verwenden Sie NVMeDataTypeLogPage, um Protokollseiten (einschließlich SMART/Health-Daten) abzurufen.
    • Verwenden Sie NVMeDataTypeFeature, um Features des NVMe-Laufwerks abzurufen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10
Unterstützte Mindestversion (Server) Windows Server 2016
Kopfzeile ntddstor.h (include Ntddstor.h)

Weitere Informationen

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_ID

STORAGE_PROPERTY_QUERY

STORAGE_PROTOCOL_DATA_SUBVALUE_GET_LOG_PAGE

STORAGE_PROTOCOL_SPECIFIC_DATA