NVME_CDW11_FEATURES 공용 구조체(nvme.h)
지정된 기능의 특성을 검색하거나 설정하는 기능 가져오기 및 기능 설정 명령에 대한 매개 변수를 포함합니다.
이 구조체는 명령 구조에서 GETFEATURES 및 SETFEATURES 필드의 CDW11 매개 변수에 사용됩니다.
구문
typedef union {
NVME_CDW11_FEATURE_NUMBER_OF_QUEUES NumberOfQueues;
NVME_CDW11_FEATURE_INTERRUPT_COALESCING InterruptCoalescing;
NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG InterruptVectorConfig;
NVME_CDW11_FEATURE_LBA_RANGE_TYPE LbaRangeType;
NVME_CDW11_FEATURE_ARBITRATION Arbitration;
NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE VolatileWriteCache;
NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG AsyncEventConfig;
NVME_CDW11_FEATURE_POWER_MANAGEMENT PowerManagement;
NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION AutoPowerStateTransition;
NVME_CDW11_FEATURE_TEMPERATURE_THRESHOLD TemperatureThreshold;
NVME_CDW11_FEATURE_ERROR_RECOVERY ErrorRecovery;
NVME_CDW11_FEATURE_HOST_MEMORY_BUFFER HostMemoryBuffer;
NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL WriteAtomicityNormal;
NVME_CDW11_FEATURE_NON_OPERATIONAL_POWER_STATE NonOperationalPowerState;
NVME_CDW11_FEATURE_IO_COMMAND_SET_PROFILE IoCommandSetProfile;
NVME_CDW11_FEATURE_ERROR_INJECTION ErrorInjection;
NVME_CDW11_FEATURE_HOST_IDENTIFIER HostIdentifier;
NVME_CDW11_FEATURE_RESERVATION_PERSISTENCE ReservationPersistence;
NVME_CDW11_FEATURE_RESERVATION_NOTIFICATION_MASK ReservationNotificationMask;
NVME_CDW11_FEATURE_GET_HOST_METADATA GetHostMetadata;
NVME_CDW11_FEATURE_SET_HOST_METADATA SetHostMetadata;
ULONG AsUlong;
} NVME_CDW11_FEATURES, *PNVME_CDW11_FEATURES;
멤버
NumberOfQueues
호스트가 이 컨트롤러에 대해 요청하는 큐 수를 나타내는 값을 포함하는 NVME_CDW11_FEATURE_NUMBER_OF_QUEUES 구조를 지정합니다.
큐 수 기능에 대해 기능 설정 또는 기능 가져오기 명령을 제출하면 해당 명령에 대한 완료 큐 항목의 DW0(Dword 0) 필드에 NVME_CDW11_FEATURE_NUMBER_OF_QUEUES 구조가 반환됩니다.
InterruptCoalescing
인터럽트 병합 설정을 구성하는 값을 포함하는 NVME_CDW11_FEATURE_INTERRUPT_COALESCING 구조를 지정합니다.
인터럽트 병합 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_INTERRUPT_COALESCING 구조체의 TIME 및 THR 필드에 지정된 값이 해당 명령에 대한 완료 큐 항목의 DW0 필드에 반환됩니다.
InterruptVectorConfig
특정 인터럽트 벡터와 관련된 설정을 구성하는 값을 포함하는 NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG 구조를 지정합니다.
인터럽트 벡터 구성 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG 구조체의 인터럽트 벡터(IV) 및 CD(병합 사용 안 함) 필드에 지정된 값이 해당 명령에 대한 완료 큐 항목의 DW0 필드에 반환됩니다.
이 기능을 실행하기 전에 호스트는 유효한 I/O 완료 큐로 지정된 인터럽트 벡터를 구성해야 합니다. 지정된 I/O 완료 큐 또는 인터럽트 벡터가 잘못된 경우 컨트롤러는 NVME_STATUS_INVALID_FIELD_IN_COMMAND 상태 반환합니다.
LbaRangeType
기능 설정 명령에서 LBA 범위 유형 기능의 LBA 범위 수를 지정하는 값을 포함하는 NVME_CDW11_FEATURE_LBA_RANGE_TYPE 구조를 지정합니다.
이 필드는 기능 설정 명령에만 사용되며 기능 가져오기 명령에 대해서는 무시됩니다.
LBA 범위 유형 기능은 지정된 네임스페이스의 일부인 LBA(논리 블록 할당) 범위의 형식과 특성을 지정합니다. 이 기능은 NVME_CDW11_FEATURE_LBA_RANGE_TYPE 구조를 사용하여 LBA 범위의 수를 지정하고 NVME_LBA_RANGET_TYPE_ENTRY 데이터 구조를 사용하여 형식 및 특성 정보를 지정합니다.
LBA 범위 유형 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_LBA_RANGE_TYPE 구조체의 NUM 필드에 지정된 값이 완료 큐 항목의 DW0 필드에 반환되고 LBA 범위 형식 NVME_LBA_RANGET_TYPE_ENTRY 데이터 구조가 해당 명령의 데이터 버퍼에 반환됩니다.
Arbitration
명령 중재를 제어하는 값을 포함하는 NVME_CDW11_FEATURE_ARBITRATION 구조를 지정합니다.
중재 기능에 대해 기능 가져오기 명령을 제출하면 이 필드에 지정된 구조체가 해당 명령에 대한 완료 큐 항목의 DW0 필드에 반환됩니다.
VolatileWriteCache
컨트롤러에서 휘발성 쓰기 캐시(있는 경우)를 제어하는 값을 포함하는 NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE 구조를 지정합니다.
휘발성 쓰기 캐시 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHEWCE 필드에 지정된 값이 해당 명령에 대한 완료 큐 항목의 DW0 필드에 반환됩니다.
AsyncEventConfig
호스트 에 대한 비동기 이벤트 알림을 트리거하는 이벤트를 제어하는 비동기 이벤트 구성 기능에 대한 매개 변수를 포함하는 NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG 구조를 지정합니다.
비동기 이벤트 구성 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG 구조에 지정된 값이 해당 명령에 대한 완료 큐 항목 구조의 DW0 필드에 반환됩니다.
PowerManagement
호스트가 전원 상태를 구성할 수 있도록 하는 값을 포함하는 NVME_CDW11_FEATURE_POWER_MANAGEMENT 구조를 지정합니다.
전원 관리 기능에 대해 기능 가져오기 명령을 제출하면 해당 명령에 대한 완료 큐 항목의 DW0 필드에 NVME_CDW11_FEATURE_POWER_MANAGEMENT 구조가 반환됩니다.
AutoPowerStateTransition
자율 전원 상태 전환에 대한 설정을 구성하는 자치 전원 상태 전환 기능에 대한 매개 변수를 포함하는 NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION 구조를 지정합니다.
자치 전원 상태 전환 기능은 NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION 데이터 구조 및 자율 전원 상태 전환 항목 데이터 구조의 특성 정보를 지정합니다.
자치 전원 상태 전환 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION 구조체의 APSTE 필드에 지정된 값이 완료 큐 항목의 DW0 필드에 반환되고 NVME_AUTO_POWER_STATE_TRANSITION_ENTRY 데이터 구조가 해당 명령의 데이터 버퍼에 반환됩니다.
TemperatureThreshold
컨트롤러의 온도 임계값을 설정하거나 검색하는 데 사용되는 값을 포함하는 NVME_CDW11_FEATURE_TEMPERATURE_THRESHOLD 구조를 지정합니다.
ErrorRecovery
HostMemoryBuffer
호스트 메모리 버퍼를 제어하는 데 사용되는 값을 포함하는 NVME_CDW11_FEATURE_HOST_MEMORY_BUFFER 구조를 지정합니다.
호스트 메모리 버퍼 기능은 호스트가 컨트롤러에서 단독으로 사용할 호스트 메모리의 일부를 할당하는 메커니즘을 제공합니다. 호스트 메모리 버퍼를 사용하도록 설정하는 기능 설정 명령이 성공적으로 완료되면 호스트 메모리 버퍼가 비활성화될 때까지 호스트가 연결된 호스트 메모리 영역, 버퍼 크기 또는 설명자 목록에 기록되지 않습니다. 호스트 메모리 버퍼를 사용하지 않도록 설정하는 기능 설정 명령이 성공적으로 완료되면 컨트롤러는 호스트 메모리 버퍼가 사용하도록 설정될 때까지 호스트 메모리 버퍼의 데이터에 액세스하지 않습니다.
호스트 메모리 설명자 목록은 호스트 메모리 버퍼의 주소 및 길이 쌍을 설명하는 호스트 메모리의 물리적으로 연속된 데이터 구조입니다. 목록의 경계와 내용은 다음 필드 및 구조에 정의되어 있습니다.
- 호스트 메모리 설명자 목록 주소의 하한은 NVME_CDW13_FEATURE_HOST_MEMORY_BUFFERHMDLLA 필드에 정의됩니다.
- 호스트 메모리 설명자 목록 주소의 상한은 NVME_CDW14_FEATURE_HOST_MEMORY_BUFFERHMDLUA 필드에 정의됩니다.
- 호스트 메모리 설명자 목록의 주소 수와 길이 쌍은 NVME_CDW15_FEATURE_HOST_MEMORY_BUFFERHMDLEC 필드의 호스트 메모리 설명자 목록 항목 수에 지정됩니다.
- 호스트 메모리 설명자 목록의 항목에 대한 필드는 NVME_HOST_MEMORY_BUFFER_DESCRIPTOR_ENTRY 구조에 지정됩니다.
WriteAtomicityNormal
원자성 연산에 대한 컨트롤러의 지원을 정의하는 AWUN(Atomic Write Unit Normal) 및 네임스페이스 NAWUN(Atomic Write Unit Normal) 매개 변수의 연산을 제어하는 값을 포함하는 NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL 구조를 지정 합니다.
쓰기 원자성 일반 기능에 대해 기능 가져오기 명령을 제출하면 NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL 구조에 지정된 값이 해당 명령에 대한 완료 큐 항목 구조의 DW0 필드에 반환됩니다.
NonOperationalPowerState
비운용 전원 상태 기능에 대한 값이 포함된 NVME_CDW11_FEATURE_NON_OPERATIONAL_POWER_STATE 구조를 지정합니다. 이 구조체는 비작동 전원 상태에 대해 허용 모드를 사용할 수 있는지 여부를 나타냅니다.
IoCommandSetProfile
ErrorInjection
HostIdentifier
ReservationPersistence
ReservationNotificationMask
GetHostMetadata
SetHostMetadata
AsUlong
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 |
머리글 | nvme.h |