NVME_CDW10_CREATE_IO_QUEUE 공용 구조체(nvme.h)
I/O 완료 큐 만들기 및 IO 제출 큐 만들기 명령에 사용되는 매개 변수를 포함합니다. I/O 완료 큐 만들기 명령은 관리 완료 큐를 제외하고 모든 I/O 완료 큐를 만드는 데 사용되며 I/O 제출 큐 만들기 명령은 I/O 제출 큐를 만드는 데 사용됩니다.
NVME_CDW10_CREATE_IO_QUEUE 구조체는 명령 구조체의 CREATEIOCQ 및 CREATEIOSQ 매개 변수의 CDW10 필드에 사용됩니다.
구문
typedef union {
struct {
ULONG QID : 16;
ULONG QSIZE : 16;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_CDW10_CREATE_IO_QUEUE, *PNVME_CDW10_CREATE_IO_QUEUE;
멤버
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.QID
QID(큐 식별자) 필드는 만들 완료 큐 또는 제출 큐에 할당할 식별자를 나타냅니다.
이 식별자는 완료 큐 명령에 사용되는 완료 큐 헤드 초인종 또는 제출 큐 명령에 사용되는 제출 큐 Tail Doorbell 에 해당합니다.
이 16비트 ID 값은 I/O 완료 큐 또는 I/O 제출 큐에 대한 NVME_FEATURE_NUMBER_OF_QUEUES 기능에 보고된 값을 초과해서는 안 됩니다. 지정된 값이 이고 0h
, 보고된 큐 수를 초과하거나 이미 사용 중인 식별자에 해당하는 경우 컨트롤러는 NVME_STATUS_INVALID_QUEUE_IDENTIFIER 오류를 반환해야 합니다.
DUMMYSTRUCTNAME.QSIZE
큐 크기(QSIZE) 필드는 만들 완료 큐 또는 제출 큐의 크기를 나타냅니다. 큐 크기는 큐의 항목 수를 지정하는 16비트 0의 기반 필드에 표시됩니다.
큐의 최소 크기는 두 개의 항목입니다. I/O 제출 큐 또는 I/O 완료 큐의 최대 크기는 64K 항목으로, NVME_CONTROLLER_CAPABILITIES 구조의 MQES(최대 큐 항목 지원) 필드에 보고되는 컨트롤러에서 지원하는 최대 큐 크기로 제한됩니다.
관리 제출 및 관리 완료 큐의 최대 크기는 4K 항목으로 정의됩니다. 헤드 및 Tail 항목 포인터 정의로 인해 각 큐의 하나의 항목을 사용할 수 없습니다.
크기가 0h
컨트롤러에서 지원하는 것보다 크거나 크면 컨트롤러가 잘못된 큐 크기 오류를 반환해야 합니다.
AsUlong
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 |
머리글 | nvme.h |