NVME_LBA_FORMAT union (nvme.h)
包含的参数指定要应用于 NVM 媒体的 LBA 格式,作为格式化 NVM 命令的一部分。
此结构在 NVME_IDENTIFY_NAMESPACE_DATA 结构的 LBAF 字段中使用。
语法
typedef union {
struct {
USHORT MS;
UCHAR LBADS;
UCHAR RP : 2;
UCHAR Reserved0 : 6;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_LBA_FORMAT, *PNVME_LBA_FORMAT;
成员
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.MS
根据 LBA 数据大小 (LBADS) 字段的值指示每个 LBA 提供的元数据字节数。
如果不支持元数据,则此字段将被清除为 00h
。
如果支持元数据,则命名空间可能支持作为扩展数据 LBA 的一部分或单独的连续缓冲区的一部分传输的元数据。 如果启用了端到端数据保护,则元数据的前 8 个字节或后 8 个字节是保护信息。
DUMMYSTRUCTNAME.LBADS
指示支持的 LBA 数据大小。 该值以 2 (2^n) 的幂来报告。 小于 9 的值 (例如,不支持 512 字节) 。 如果报告的值为 0h
,则不支持或使用 LBA 格式。
DUMMYSTRUCTNAME.RP
指示 LBA 格式相对于控制器支持的其他 LBA 格式的相对性能。 根据 LBA 的大小和关联的元数据,可能会对性能产生影响。 性能分析基于队列深度为 32 且读取工作负荷为 4KB 的更好性能。
下表中列出了这些值的含义。
值 | 定义 |
---|---|
00b | 最佳性能 |
01b | 性能更好 |
10b | 良好的性能 |
11b | 性能下降 |
DUMMYSTRUCTNAME.Reserved0
AsUlong
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 |
标头 | nvme.h |