다음을 통해 공유


STORAGE_PROTOCOL_SPECIFIC_DATA 구조체(ntddstor.h)

IOCTL_STORAGE_QUERY_PROPERTY 요청의 입력 및 출력 버퍼에 제공되는 프로토콜별 디바이스 데이터를 설명합니다.

구문

typedef struct _STORAGE_PROTOCOL_SPECIFIC_DATA {
  STORAGE_PROTOCOL_TYPE ProtocolType;
  ULONG                 DataType;
  ULONG                 ProtocolDataRequestValue;
  ULONG                 ProtocolDataRequestSubValue;
  ULONG                 ProtocolDataOffset;
  ULONG                 ProtocolDataLength;
  ULONG                 FixedProtocolReturnData;
  ULONG                 ProtocolDataRequestSubValue2;
  ULONG                 ProtocolDataRequestSubValue3;
  ULONG                 ProtocolDataRequestSubValue4;
} STORAGE_PROTOCOL_SPECIFIC_DATA, *PSTORAGE_PROTOCOL_SPECIFIC_DATA;

멤버

ProtocolType

프로토콜 유형입니다. 이 멤버의 값은 STORAGE_PROTOCOL_TYPE 열거형에 정의됩니다.

DataType

프로토콜 데이터 형식입니다. 데이터 형식은 STORAGE_PROTOCOL_NVME_DATA_TYPESTORAGE_PROTOCOL_ATA_DATA_TYPE 열거형에 정의됩니다.

ProtocolDataRequestValue

프로토콜 데이터 요청 값입니다.

ProtocolDataRequestSubValue

프로토콜 데이터 요청의 하위 값입니다.

ProtocolDataOffset

이 구조체의 시작 부분에 있는 데이터 버퍼의 오프셋입니다. 일반적인 값은 sizeof(STORAGE_PROTOCOL_SPECIFIC_DATA)일 수 있습니다.

ProtocolDataLength

프로토콜 데이터의 길이입니다. ProtocolDataLength 는 = 512바이트여야 >합니다.

FixedProtocolReturnData

반환된 데이터입니다.

ProtocolDataRequestSubValue2

첫 번째 추가 데이터 하위 요청 값입니다.

ProtocolDataRequestSubValue3

두 번째 추가 데이터 하위 요청 값입니다.

ProtocolDataRequestSubValue4

세 번째 추가 데이터 하위 요청 값입니다.

설명

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추가 매개 변수 필드입니다.

NVMe 프로토콜 관련 정보의 형식을 지정하려면 다음과 같이 STORAGE_PROTOCOL_SPECIFIC_DATA 구조를 구성합니다.

  • ProtocolType 필드를 ProtocolTypeNVMe로 설정합니다.
  • DataType 필드를 STORAGE_PROTOCOL_NVME_DATA_TYPE에 정의된 열거형 값으로 설정합니다.
    • NVMeDataTypeIdentify 를 사용하여 컨트롤러 데이터 식별 또는 네임스페이스 데이터 식별
    • NVMeDataTypeLogPage - 로그 페이지(SMART/상태 데이터 포함)를 가져옵니다.
    • NVMeDataTypeFeature - NVMe 드라이브의 기능을 가져옵니다.

ATA 프로토콜 관련 정보의 형식을 지정하려면 다음과 같이 STORAGE_PROTOCOL_SPECIFIC_DATA 구조를 구성합니다.

  • ProtocolType 필드를 ProtocolTypeAta로 설정합니다.
  • DataType 필드를 STORAGE_PROTOCOL_ATA_DATA_TYPE 정의된 열거형 값으로 설정합니다.
    • AtaDataTypeIdentify를 사용하여 ATA 드라이브를 식별합니다.
    • AtaDataTypeLogPage를 사용하여 ATA 드라이브에서 로그 페이지를 가져옵니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
머리글 ntddstor.h(Ntddstor.h 포함)

추가 정보

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_ID

STORAGE_PROPERTY_QUERY

STORAGE_PROTOCOL_SPECIFIC_DATA_EXT