DEVICE_LB_PROVISIONING_DESCRIPTOR結構 (winioctl.h)
DEVICE_LB_PROVISIONING_DESCRIPTOR結構是從IOCTL_STORAGE_QUERY_PROPERTY要求傳回的其中一個查詢結果結構。 此結構包含存儲設備的精簡布建功能。
語法
typedef struct _DEVICE_LB_PROVISIONING_DESCRIPTOR {
DWORD Version;
DWORD Size;
BYTE ThinProvisioningEnabled : 1;
BYTE ThinProvisioningReadZeros : 1;
BYTE AnchorSupported : 3;
BYTE UnmapGranularityAlignmentValid : 1;
BYTE GetFreeSpaceSupported : 1;
BYTE MapSupported : 1;
BYTE Reserved1[7];
DWORDLONG OptimalUnmapGranularity;
DWORDLONG UnmapGranularityAlignment;
DWORD MaxUnmapLbaCount;
DWORD MaxUnmapBlockDescriptorCount;
} DEVICE_LB_PROVISIONING_DESCRIPTOR, *PDEVICE_LB_PROVISIONING_DESCRIPTOR;
成員
Version
包含這個 結構的大小,以位元組為單位。 當成員加入至 結構時,這個成員的值將會變更。
Size
指定傳回的數據大小總計,以位元組為單位。 這可能包括此結構後面的數據。
ThinProvisioningEnabled
已啟用精簡布建的狀態。
值 | 意義 |
---|---|
|
精簡布建已停用。 |
|
已啟用精簡布建。 |
ThinProvisioningReadZeros
讀取至未對應的區域會傳回零。
值 | 意義 |
---|---|
|
未定義從未對應的區域讀取的數據。 |
|
讀取會傳回零。 |
AnchorSupported
修剪支持之後的決定性讀取。
值 | 意義 |
---|---|
|
不支援修剪之後的決定性讀取。 |
|
支援修剪之後的決定性讀取。 |
UnmapGranularityAlignmentValid
裝置未對應數據粒度對齊的有效性。
值 | 意義 |
---|---|
|
取消對應粒度對齊無效。 |
|
取消對應粒度對齊是有效的。 |
GetFreeSpaceSupported
MapSupported
Reserved1[7]
保留的。
OptimalUnmapGranularity
裝置未對應數據粒度的最佳邏輯扇區數目。
UnmapGranularityAlignment
在邏輯扇區中,針對裝置上的未對應粒度對齊設定目前的值。
MaxUnmapLbaCount
從 Windows 10 開始:邏輯區塊中單一 unmap 命令中可以取消對應的 LBA 數目上限。
MaxUnmapBlockDescriptorCount
從 Windows 10 開始:單一 unmap 命令中允許的最大描述項數目。
備註
當 STORAGE_PROPERTY_QUERY 的 PropertyId 成員設定為 StorageDeviceLBProvisioningProperty 時,會從IOCTL_STORAGE_QUERY_PROPERTY要求傳回這個結構。
如果 UnmapGranularityAlignmentValid = 0,則任何使用 UnmapGranularityAlignment 的程式 代碼都應該假設其值為 0。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
標頭 | winioctl.h (包含 Windows.h) |