Compartilhar via


união NVME_CONTROLLER_MEMORY_BUFFER_SIZE (nvme.h)

Define o tamanho do registro opcional do Buffer de Memória do Controlador e é usado no campo CMBSZ da estrutura NVME_CONTROLLER_REGISTERS .

Se o controlador não der suporte ao recurso buffer de memória do controlador, o campo CMBSZ será limpo para 0h.

O local do Buffer de Memória do Controlador é especificado no campo CMBLOC de NVME_CONTROLLER_REGISTERS.

Sintaxe

typedef union {
  struct {
    ULONG SQS : 1;
    ULONG CQS : 1;
    ULONG LISTS : 1;
    ULONG RDS : 1;
    ULONG WDS : 1;
    ULONG Reserved : 3;
    ULONG SZU : 4;
    ULONG SZ : 20;
  } DUMMYSTRUCTNAME;
  ULONG  AsUlong;
} NVME_CONTROLLER_MEMORY_BUFFER_SIZE, *PNVME_CONTROLLER_MEMORY_BUFFER_SIZE;

Membros

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.SQS

Indica se o controlador dá suporte a filas de envio de Administração e de E/S no Buffer de Memória do Controlador.

Quando esse valor é definido 1como , o controlador dá suporte a filas de envio de E/S e Administração no Buffer de Memória do Controlador. Quando esse valor for limpo para 0, todas as Filas de Envio serão colocadas na memória do host.

DUMMYSTRUCTNAME.CQS

Indica se o controlador dá suporte a filas de conclusão de Administração e de E/S no Buffer de Memória do Controlador.

Quando esse valor é definido 1como , o controlador dá suporte a filas de conclusão de Administração e de E/S no Buffer de Memória do Controlador. Quando esse valor for limpo para 0, todas as Filas de Conclusão serão colocadas na memória do host.

DUMMYSTRUCTNAME.LISTS

Indica se o controlador dá suporte a PRP (Página de Região Física) e SGL (Listas de Coleta de Dispersão) no Buffer de Memória do Controlador.

Quando esse valor é definido 1como , o controlador dá suporte a Listas PRP no Buffer de Memória do Controlador. Se o valor for definido 1 como e os SGLs tiverem suporte do controlador, o controlador oferecerá suporte a SGLs no Buffer de Memória do Controlador. Se esse bit for definido como , o campo Suporte à 1Fila de Envio (SQS) será definido 1como .

Quando esse valor for limpo para 0, todos os Listas e SGLs do PRP serão colocados na memória do host.

DUMMYSTRUCTNAME.RDS

Indica se o controlador dá suporte a dados e metadados no Buffer de Memória do Controlador para comandos, como o comando Read, que transferem dados do controlador para o host.

Quando esse valor é definido 1como , o controlador dá suporte a dados e metadados no Buffer de Memória do Controlador para comandos que transferem dados do controlador para o host.

Quando esse valor for limpo para 0, todos os dados e metadados para comandos que transferem dados do controlador para o host serão transferidos para a memória do host.

DUMMYSTRUCTNAME.WDS

Indica se o controlador dá suporte a dados e metadados no Buffer de Memória do Controlador para comandos, como o comando Write, que transferem dados do host para o controlador.

Quando esse valor é definido 1como , o controlador dá suporte a dados e metadados no Buffer de Memória do Controlador para comandos que transferem dados do host para o controlador.

Quando esse valor for limpo para 0, todos os dados e metadados para comandos que transferem dados do host para o controlador serão transferidos da memória do host.

DUMMYSTRUCTNAME.Reserved

DUMMYSTRUCTNAME.SZU

Um valor NVME_CMBSZ_SIZE_UNITS que indica a granularidade do campo Tamanho SZ .

DUMMYSTRUCTNAME.SZ

Indica o tamanho do Buffer de Memória do Controlador disponível para uso pelo host. O tamanho está em múltiplos do SZU da Unidade de Tamanho.

Se o Deslocamento (o campo OFST na estrutura NVME_CONTROLLER_MEMORY_BUFFER_LOCATION ) + Tamanho (SZ) exceder o comprimento do Registro de Endereço Base especificado (o campo BIR na estrutura NVME_CONTROLLER_MEMORY_BUFFER_LOCATION ), o tamanho disponível para o host será limitado pelo comprimento do Registro de Endereço Base.

AsUlong

Requisitos

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

Confira também