STORAGE_PROTOCOL_NVME_DATA_TYPE 枚举 (winioctl.h)

描述在 IOCTL_STORAGE_QUERY_PROPERTY 请求期间要查询的特定于 NVMe 协议的数据的类型。

语法

typedef enum _STORAGE_PROTOCOL_NVME_DATA_TYPE {
  NVMeDataTypeUnknown = 0,
  NVMeDataTypeIdentify,
  NVMeDataTypeLogPage,
  NVMeDataTypeFeature,
  NVMeDataTypeLogPageEx,
  NVMeDataTypeFeatureEx
} STORAGE_PROTOCOL_NVME_DATA_TYPE, *PSTORAGE_PROTOCOL_NVME_DATA_TYPE;

常量

 
NVMeDataTypeUnknown
值: 0
未知的数据类型。
NVMeDataTypeIdentify
标识数据类型。 这可以是“标识控制器数据”或“标识命名空间数据”。 查询此类数据时, STORAGE_PROTOCOL_SPECIFIC_DATA 的 ProtocolDataRequestValue 字段的值将为 适配器NVME_IDENTIFY_CNS_CONTROLLER ,对于命名空间为 NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE 。 如果 ProtocolDataRequestValue NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE,则 STORAGE_PROTOCOL_SPECIFIC_DATA 结构中的 ProtocolDataRequestSubValue 字段将具有命名空间 ID 的值。
NVMeDataTypeLogPage
日志页数据类型。
NVMeDataTypeFeature
特征数据类型。

注解

使用 IOCTL_STORAGE_QUERY_PROPERTY 检索 STORAGE_PROTOCOL_DATA_DESCRIPTOR中特定于协议的信息时,请按如下所示配置 STORAGE_PROPERTY_QUERY 结构:

  • 分配可以包含 STORAGE_PROPERTY_QUERYSTORAGE_PROTOCOL_SPECIFIC_DATA 结构的缓冲区。
  • 分别将控制器或设备/命名空间请求的 PropertyID 字段设置为 StorageAdapterProtocolSpecificProperty 或 StorageDeviceProtocolSpecificProperty。
  • 将 QueryType 字段设置为 PropertyStandardQuery。
  • 使用所需的值填充 STORAGE_PROTOCOL_SPECIFIC_DATA 结构。 STORAGE_PROTOCOL_SPECIFIC_DATA 的开头是 STORAGE_PROPERTY_QUERY 的 AdditionalParameters 字段。

若要指定特定于 NVMe 协议的信息类型,请配置 STORAGE_PROTOCOL_SPECIFIC_DATA 结构,如下所示:

  • 将 ProtocolType 字段设置为 ProtocolTypeNVMe。
  • 将 DataType 字段设置为 STORAGE_PROTOCOL_NVME_DATA_TYPE 定义的枚举值:
    • 使用 NVMeDataTypeIdentify 获取标识控制器数据或标识命名空间数据。
    • 使用 NVMeDataTypeLogPage 获取日志页(包括 SMART/health 数据)。
    • 使用 NVMeDataTypeFeature 获取 NVMe 驱动器的功能。

要求

   
最低受支持的客户端 Windows 10 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
标头 winioctl.h (包括 Windows.h)

另请参阅