StorNVMe 命令集支援
本文清單中的數據表:
- NVMe 系統管理命令集的 NVM Express 規格中定義的命令和作業碼。
- 所有 I/O 命令(基底規格)、NVM 命令集的 I/O 命令,以及區域命名空間命令集的 I/O 命令。
這些資料表包含下列資訊:
- 標頭定義 – 指出命令的列舉定義於相關的 Windows 頭檔中。
- StorNVMe 支援 – 指出 StorNVMe 裝置驅動程序支援 Windows 10 版本 1903 和更新版本的命令。
- 驅動程式 Int Use (驅動程式內部使用) - 指出 StorNVMe 驅動程式可以在內部產生/發出命令。
- 批注 – 任何其他相關信息;例如,是否可以在 IOCTL 作業中發出命令。 「僅限 WinPE」表示命令僅支援於 Windows 的 WinPE 版本。
系統管理員命令
OpCode | NVMe 系統管理命令 | 標頭定義 | StorNVMe 支援 | 驅動程式 Int 使用 | 註解 |
---|---|---|---|---|---|
0h | 刪除 I/O 提交佇列 | Yes | .是 | Yes | |
1 小時 | 建立 I/O 提交佇列 | Yes | .是 | Yes | |
2h | 取得記錄頁面 | Yes | .是 | Yes | IOCTL_STORAGE_QUERY_PROPERTY |
4 小時 | 刪除 I/O 完成佇列 | Yes | .是 | Yes | |
5 小時 | 建立 I/O 完成佇列 | Yes | .是 | Yes | |
6 小時 | 確定 | Yes | .是 | Yes | IOCTL_STORAGE_QUERY_PROPERTY,IOCTL_STORAGE_FIRMWARE_GET_INFO |
8 小時 | 中止 | Yes | |||
9 小時 | 設定功能 | Yes | .是 | Yes | IOCTL_STORAGE_SET_PROPERTY。 目前僅支援主機控制的熱管理。 |
啊 | 取得功能 | Yes | .是 | Yes | IOCTL_STORAGE_QUERY_PROPERTY |
Ch | 異步事件要求 | Yes | .是 | Yes | |
Dh | 命名空間管理 | Yes | Yes | 僅限 WinPE。 IOCTL_STORAGE_PROTOCOL_COMMAND | |
10 小時 | 韌體認可 (先前為韌體啟用) | Yes | .是 | Yes | IOCTL_STORAGE_FIRMWARE_ACTIVATE |
11 小時 | 韌體映像下載 | Yes | .是 | Yes | IOCTL_STORAGE_FIRMWARE_DOWNLOAD |
14 小時 | 裝置自我測試 | Yes | Yes | IOCTL_STORAGE_PROTOCOL_COMMAND | |
15 小時 | 命名空間附件 | Yes | Yes | 僅限 WinPE。 IOCTL_STORAGE_PROTOCOL_COMMAND | |
18 小時 | Keep Alive | ||||
19 小時 | 指示詞傳送 | Yes | .是 | Yes | |
1Ah | 指示詞接收 | Yes | .是 | Yes | |
1Ch | 虛擬化管理 | Yes | |||
1Dh | NVMe-MI 傳送 | Yes | Yes | 僅限 WinPE。 IOCTL_STORAGE_PROTOCOL_COMMAND | |
1Eh | NVMe-MI 接收 | Yes | Yes | 僅限 WinPE。 IOCTL_STORAGE_PROTOCOL_COMMAND | |
20 小時 | 容量管理 | ||||
24 小時 | 鎖定 | ||||
7Ch | Doorbell Buffer Config | Yes | |||
7Fh | 網狀架構命令 | ||||
80 小時 | 格式化 NVM | Yes | .是 | Yes | 僅限 WinPE 的IOCTL_STORAGE_PROTOCOL_COMMAND 。 SCSIOP_SANITIZE的IOCTL_SCSI_PASS_THROUGH。 IOCTL_STORAGE_REINITIALIZE_MEDIA密碼編譯清除。 |
81 小時 | 安全性傳送 | Yes | .是 | Yes | SCSIOP_SECURITY_PROTOCOL_OUT的IOCTL_SCSI_PASS_THROUGH |
82 小時 | 安全性接收 | Yes | .是 | Yes | SCSIOP_SECURITY_PROTOCOL_IN的IOCTL_SCSI_PASS_THROUGH |
84 小時 | 消毒 | Yes | .是 | Yes | IOCTL_STORAGE_PROTOCOL_COMMAND。 從 Windows 10 版本 2004/ 2020 年 5 月更新,Windows Server 版本 2004 (Server Core)。 只有在 Windows 11、Windows Server 2022 之前,以及只有在使用者使用 IOCTL_STORAGE_PROTOCOL_COMMAND 時,才能使用 WinPE。 |
86 小時 | 取得 LBA 狀態 | Yes | 從 Windows 11、Windows Server 2022 | ||
C0h-FFh | 廠商特定 | N/A | Yes | IOCTL_STORAGE_PROTOCOL_COMMAND。 廠商特定的傳遞命令需要每個廠商特定命令 opcode 的對應命令支援和效果記錄頁中的 CSUPP=1。 |
I/O 命令
下表包含 NVM Express I/O 命令的下列資訊:
- NVMe 規格:指出定義 I/O 命令的 NVM Express 規格:
- A = 所有 I/O 命令集,NVM Express Base Specification 2.0a, 2021 年 7 月 23 日
- N = NVM 命令集、NVM Express NVM 命令集規格 1.0a、2021 年 7 月 23 日
- Z = 區域命名空間命令集 I/O 命令、區域命名空間命令集規格 1.1a、2021 年 7 月 23 日
OpCode | NVMe I/O 命令 | 標頭定義 | StorNVMe 支援 | 驅動程式 Int 使用 | NVMe 規格 | 註解 |
---|---|---|---|---|---|---|
0h | 清除 | Yes | .是 | Yes | A、N、Z | IOCTL_SCSI_PASS_THROUGH的SCSIOP_SYNCHRONIZE_CACHE |
1 小時 | 寫入 | Yes | .是 | Yes | N,Z | IOCTL_SCSI_PASS_THROUGH的 SCSIOP_WRITE/SCSIOP_WRITE16 |
2h | 參閱 | Yes | .是 | Yes | N,Z | IOCTL_SCSI_PASS_THROUGH的 SCSIOP_READ/SCSIOP_READ16 |
4 小時 | 寫入無法更正 | Yes | N,Z | |||
5 小時 | 比較 | Yes | Yes | N,Z | 僅限 WinPE。 IOCTL_STORAGE_PROTOCOL_COMMAND | |
8 小時 | 寫入零 | Yes | N,Z | |||
9 小時 | 數據集管理 | Yes | Yes | N,Z | 只有 TRIM (解除分配) 。 IOCTL_SCSI_PASS_THROUGH的SCSIOP_UNMAP | |
Ch | Verify | Yes | N,Z | |||
Dh | 保留快取器 | Yes | A、N、Z | 從 Windows 11、Windows Server 2022。 | ||
啊 | 保留報表 | Yes | A、N、Z | 從 Windows 11、Windows Server 2022。 | ||
11 小時 | 保留取得 | Yes | A、N、Z | 從 Windows 11、Windows Server 2022。 | ||
15 小時 | 保留版本 | Yes | A、N、Z | 從 Windows 11、Windows Server 2022。 | ||
19 小時 | 複製 | Yes | N,Z | 從 Windows 11、Windows Server 2022。 保留給Microsoft內部使用。 | ||
79 小時 | 區域管理傳送 | Yes | Yes | Z | 從 Windows 11、Windows Server 2022。 保留給Microsoft內部使用。 | |
7Ah | 區域管理接收 | Yes | Yes | Z | 從 Windows 11、Windows Server 2022。 保留給Microsoft內部使用。 | |
7Dh | 區域附加 | Yes | Yes | Z | 從 Windows 11、Windows Server 2022。 保留給Microsoft內部使用。 | |
80h-FFh | 廠商特定 | N/A | Yes | A、N、Z | IOCTL_STORAGE_PROTOCOL_COMMAND。 廠商特定的傳遞命令需要每個廠商特定命令 opcode 的對應命令支援和效果記錄頁中的 CSUPP=1。 |
可能會變更。 如需詳細資訊,請參閱 使用NVMe磁碟驅動器。