união NVME_CDW11_FEATURES (nvme.h)

Contém parâmetros para os comandos Obter Recursos e Definir Recursos que recuperam ou definem os atributos do recurso especificado.

Essa estrutura é usada no parâmetro CDW11 dos campos GETFEATURES e SETFEATURES na estrutura Command .

Sintaxe

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;

Membros

NumberOfQueues

Especifica uma estrutura NVME_CDW11_FEATURE_NUMBER_OF_QUEUES que contém valores que indica o número de filas que o host solicita para esse controlador.

Quando um comando Definir Recursos ou Obter Recursos é enviado para o recurso Número de Filas, a estrutura NVME_CDW11_FEATURE_NUMBER_OF_QUEUES é retornada no campo Dword 0 (DW0) da entrada Fila de Conclusão para esse comando.

InterruptCoalescing

Especifica uma estrutura de NVME_CDW11_FEATURE_INTERRUPT_COALESCING que contém valores que definem as configurações de união de interrupção.

Quando um comando Get Features é enviado para o Recurso de União de Interrupção, os valores especificados nos campos TIME e THR da estrutura NVME_CDW11_FEATURE_INTERRUPT_COALESCING são retornados no campo DW0 da Entrada da Fila de Conclusão para esse comando.

InterruptVectorConfig

Especifica uma estrutura NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG que contém valores que definem configurações específicas para um vetor de interrupção específico.

Quando um comando Get Features é enviado para o Recurso de Configuração de Vetor de Interrupção, os valores especificados nos campos IV (Vetor de Interrupção) e CD (Coalescing Disabled) da estrutura NVME_CDW11_FEATURE_INTERRUPT_VECTOR_CONFIG são retornados no campo DW0 da Entrada da Fila de Conclusão para esse comando.

Antes de emitir esse recurso, o host deve configurar o Vetor de Interrupção especificado com uma Fila de Conclusão de E/S válida. Se a Fila de Conclusão de E/S ou o Vetor de Interrupção especificado for inválido, o controlador retornará um status de NVME_STATUS_INVALID_FIELD_IN_COMMAND.

LbaRangeType

Especifica uma estrutura NVME_CDW11_FEATURE_LBA_RANGE_TYPE que contém um valor que especifica o número de intervalos LBA para o Recurso de Tipo de Intervalo LBA no comando Definir Recursos.

Esse campo é usado apenas para o comando Definir Recursos e é ignorado para o comando Obter Recursos.

O recurso Tipo de Intervalo LBA especifica o tipo e os atributos de intervalos lba (alocação de bloco lógico) que fazem parte do namespace especificado. O recurso usa a estrutura NVME_CDW11_FEATURE_LBA_RANGE_TYPE para especificar o número de intervalos LBA e a estrutura de dados NVME_LBA_RANGET_TYPE_ENTRY para especificar as informações de tipo e atributo.

Quando um comando Get Features é enviado para o recurso Tipo de Intervalo LBA, o valor especificado no campo NUM da estrutura NVME_CDW11_FEATURE_LBA_RANGE_TYPE é retornado no campo DW0 da entrada Fila de Conclusão e a estrutura de dados NVME_LBA_RANGET_TYPE_ENTRY tipo de intervalo LBA é retornada no buffer de dados para esse comando.

Arbitration

Especifica uma estrutura NVME_CDW11_FEATURE_ARBITRATION que contém valores que controlam a arbitragem de comandos.

Quando um comando Get Features é enviado para o recurso Arbitragem, a estrutura especificada neste campo é retornada no campo DW0 da entrada Fila de Conclusão para esse comando.

VolatileWriteCache

Especifica uma estrutura NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE que contém valores que controlam o cache de gravação volátil, se presente, no controlador.

Quando um comando Get Features é enviado para o Recurso de Cache de Gravação Volátil, o valor especificado no campo WCE do NVME_CDW11_FEATURE_VOLATILE_WRITE_CACHE é retornado no campo DW0 da Entrada da Fila de Conclusão para esse comando.

AsyncEventConfig

Especifica uma estrutura NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG que contém parâmetros para o Recurso de Configuração de Evento Assíncrono que controla os eventos que disparam uma notificação de evento assíncrono para o host.

Quando um comando Get Features é enviado para o Recurso de Configuração de Evento Assíncrono, os valores especificados em A estrutura NVME_CDW11_FEATURE_ASYNC_EVENT_CONFIG são retornados no campo DW0 da estrutura de Entrada da Fila de Conclusão para esse comando.

PowerManagement

Especifica uma estrutura de NVME_CDW11_FEATURE_POWER_MANAGEMENT que contém valores que permitem que o host configure o estado de energia.

Quando um comando Get Features é enviado para o recurso de Gerenciamento de Energia, a estrutura NVME_CDW11_FEATURE_POWER_MANAGEMENT é retornada no campo DW0 da entrada Fila de Conclusão para esse comando.

AutoPowerStateTransition

Especifica uma estrutura NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION que contém parâmetros para o Recurso de Transição de Estado de Energia Autônomo que define as configurações para transições de estado de energia autônomo.

O Recurso de Transição de Estado de Energia Autônomo especifica as informações de atributo na estrutura de dados do NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION e na estrutura de dados de Entrada de Transição de Estado de Energia Autônoma .

Quando um comando Get Features é enviado para o Recurso de Transição de Estado de Energia Autônomo, o valor especificado no campo APSTE da estrutura NVME_CDW11_FEATURE_AUTO_POWER_STATE_TRANSITION é retornado no campo DW0 da Entrada da Fila de Conclusão e a estrutura de dados NVME_AUTO_POWER_STATE_TRANSITION_ENTRY é retornada no buffer de dados para esse comando.

TemperatureThreshold

Especifica uma estrutura NVME_CDW11_FEATURE_TEMPERATURE_THRESHOLD que contém valores que são usados para definir ou recuperar valores de limite de temperatura para o controlador.

ErrorRecovery

HostMemoryBuffer

Especifica uma estrutura de NVME_CDW11_FEATURE_HOST_MEMORY_BUFFER que contém valores que são usados para controlar o Buffer de Memória do Host.

O recurso Buffer de Memória do Host fornece um mecanismo para o host alocar uma parte da memória do host para o controlador usar exclusivamente. Após a conclusão bem-sucedida de um comando Definir Recursos que habilita o buffer de memória do host, o host não gravará na região de memória do host associada, no tamanho do buffer ou na lista de descritores até que o buffer de memória do host seja desabilitado. Após a conclusão bem-sucedida de um comando Set Features que desabilita o buffer de memória do host, o controlador não acessará nenhum dado no buffer de memória do host até que o buffer de memória do host tenha sido habilitado.

A Lista de Descritores de Memória do Host é uma estrutura de dados fisicamente contígua na memória do host que descreve os pares de endereço e comprimento do Buffer de Memória do Host. Os limites e o conteúdo da lista são definidos nos seguintes campos e estruturas:

WriteAtomicityNormal

Especifica uma estrutura NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL que contém valores que controlam a operação dos parâmetros AWUN (Atomic Write Unit Normal) e NAWUN (Atomic Write Unit Normal) do namespace que definem o suporte do controlador para operações atômicas.

Quando um comando Get Features é enviado para o Recurso Normal de Atomicidade de Gravação, os valores especificados em A estrutura NVME_CDW11_FEATURE_WRITE_ATOMICITY_NORMAL são retornados no campo DW0 da estrutura de Entrada da Fila de Conclusão para esse comando.

NonOperationalPowerState

Especifica uma estrutura NVME_CDW11_FEATURE_NON_OPERATIONAL_POWER_STATE que contém valores para o Recurso de Estado de Energia Não Operacional que indica se o modo permissivo está habilitado para um estado de energia não operacional.

IoCommandSetProfile

ErrorInjection

HostIdentifier

ReservationPersistence

ReservationNotificationMask

GetHostMetadata

SetHostMetadata

AsUlong

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10
Cabeçalho nvme.h

Confira também