선택적 컨트롤러 메모리 버퍼 레지스터의 크기를 정의하고 NVME_CONTROLLER_REGISTERS 구조의 CMBSZ 필드에 사용됩니다.
컨트롤러가 컨트롤러 메모리 버퍼 기능을 지원하지 않으면 CMBSZ 필드가 지워집니다 0h.
컨트롤러 메모리 버퍼의 위치는 NVME_CONTROLLER_REGISTERSCMBLOC 필드에 지정됩니다.
Syntax
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;
Members
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.SQS
컨트롤러가 컨트롤러 메모리 버퍼에서 관리자 및 I/O 제출 큐를 지원하는지 여부를 나타냅니다.
이 값을 설정 1하면 컨트롤러는 컨트롤러 메모리 버퍼에서 관리자 및 I/O 제출 큐를 지원합니다.
이 값이 지워 0지면 모든 제출 큐가 호스트 메모리에 배치됩니다.
DUMMYSTRUCTNAME.CQS
컨트롤러가 컨트롤러 메모리 버퍼에서 관리자 및 I/O 완료 큐를 지원하는지 여부를 나타냅니다.
이 값을 설정 1하면 컨트롤러는 컨트롤러 메모리 버퍼에서 관리자 및 I/O 완료 큐를 지원합니다.
이 값이 지워 0지면 모든 완료 큐가 호스트 메모리에 배치됩니다.
DUMMYSTRUCTNAME.LISTS
컨트롤러가 컨트롤러 메모리 버퍼에서 PRP(물리적 지역 페이지) 및 SGL(분산 수집 목록)을 지원하는지 여부를 나타냅니다.
이 값을 설정 1하면 컨트롤러는 컨트롤러 메모리 버퍼의 PRP 목록을 지원합니다. 값이 설정 1 되고 컨트롤러에서 SGL을 지원하는 경우 컨트롤러는 컨트롤러 메모리 버퍼의 SGL을 지원합니다. 이 비트가 설정 1되면 SQS(제출 큐 지원) 필드가 로 1설정됩니다.
이 값이 지워 0지면 모든 PRP 목록 및 SGL이 호스트 메모리에 배치됩니다.
DUMMYSTRUCTNAME.RDS
컨트롤러가 컨트롤러에서 호스트로 데이터를 전송하는 읽기 명령과 같은 명령에 대해 컨트롤러 메모리 버퍼의 데이터 및 메타데이터를 지원하는지 여부를 나타냅니다.
이 값을 설정하면 컨트롤러는 컨트롤러에서 호스트로 1데이터를 전송하는 명령에 대해 컨트롤러 메모리 버퍼의 데이터 및 메타데이터를 지원합니다.
이 값이 지워지면 컨트롤러에서 호스트로 0데이터를 전송하는 명령에 대한 모든 데이터와 메타데이터가 호스트 메모리로 전송됩니다.
DUMMYSTRUCTNAME.WDS
컨트롤러가 호스트에서 컨트롤러로 데이터를 전송하는 쓰기 명령과 같은 명령에 대해 컨트롤러 메모리 버퍼의 데이터 및 메타데이터를 지원하는지 여부를 나타냅니다.
이 값을 설정하면 컨트롤러는 호스트에서 컨트롤러로 1데이터를 전송하는 명령에 대해 컨트롤러 메모리 버퍼의 데이터 및 메타데이터를 지원합니다.
이 값이 지워지면 호스트에서 컨트롤러로 0데이터를 전송하는 명령에 대한 모든 데이터와 메타데이터가 호스트 메모리에서 전송됩니다.
DUMMYSTRUCTNAME.Reserved
DUMMYSTRUCTNAME.SZU
크기 SZ 필드의 세분성을 나타내는 NVME_CMBSZ_SIZE_UNITS 값입니다.
DUMMYSTRUCTNAME.SZ
호스트에서 사용할 수 있는 컨트롤러 메모리 버퍼의 크기를 나타냅니다. 크기는 Size Unit SZU의 배수입니다.
Offset(NVME_CONTROLLER_MEMORY_BUFFER_LOCATION 구조의 OFST 필드) + 크기(SZ)가 지정된 기본 주소 레지스터(NVME_CONTROLLER_MEMORY_BUFFER_LOCATION 구조의 BIR 필드)의 길이를 초과하면 호스트에서 사용할 수 있는 크기는 기본 주소 레지스터의 길이로 제한됩니다.
AsUlong
요구 사항
| 요구 사항 | 가치 |
|---|---|
| 지원되는 최소 클라이언트 | Windows 10 |
| Header | nvme.h |