共用方式為


DEVICE_LB_PROVISIONING_DESCRIPTOR結構 (ntddstor.h)

DEVICE_LB_PROVISIONING_DESCRIPTOR 結構是從 IOCTL_STORAGE_QUERY_PROPERTY 要求傳回的其中一個查詢結果結構。 此結構包含存儲設備的精簡布建功能。

語法

typedef struct _DEVICE_LB_PROVISIONING_DESCRIPTOR {
  ULONG     Version;
  ULONG     Size;
  UCHAR     ThinProvisioningEnabled : 1;
  UCHAR     ThinProvisioningReadZeros : 1;
  UCHAR     AnchorSupported : 3;
  UCHAR     UnmapGranularityAlignmentValid : 1;
  UCHAR     GetFreeSpaceSupported : 1;
  UCHAR     MapSupported : 1;
  UCHAR     Reserved1[7];
  ULONGLONG OptimalUnmapGranularity;
  ULONGLONG UnmapGranularityAlignment;
  ULONG     MaxUnmapLbaCount;
  ULONG     MaxUnmapBlockDescriptorCount;
} DEVICE_LB_PROVISIONING_DESCRIPTOR, *PDEVICE_LB_PROVISIONING_DESCRIPTOR;

成員

Version

這個結構的版本。

Size

這個結構的大小。 這會設定為 sizeof(DEVICE_LB_PROVISIONING_DESCRIPTOR)

ThinProvisioningEnabled

已啟用精簡布建的狀態。

價值 意義
0 精簡布建已停用。
1 精簡布建已啟用。

ThinProvisioningReadZeros

讀取至未對應的區域會傳回零。

價值 意義
0 從未對應的區域讀取的數據未定義。
1 讀取會傳回零。

AnchorSupported

支援錨定 LBA 對應狀態。

價值 意義
0 不支援錨定 LBA 對應狀態。
1 支援錨定 LBA 對應狀態。

UnmapGranularityAlignmentValid

裝置未對應數據粒度對齊的有效性。

價值 意義
0 取消對應數據粒度對齊無效。
1 取消對應數據粒度對齊是有效的。

GetFreeSpaceSupported

表示對 DeviceDsmAction_GetFreeSpace的支援。

價值 意義
0 不支援 DeviceDsmAction_GetFreeSpace
1 支援 DeviceDsmAction_GetFreeSpace

MapSupported

表示對 DeviceDsmAction_Map的支援。

價值 意義
0 不支援 DeviceDsmAction_Map
1 支援 DeviceDsmAction_Map

Reserved1[7]

保留;請勿使用 。

OptimalUnmapGranularity

裝置未對應數據粒度的最佳區塊數目。

UnmapGranularityAlignment

區塊中的目前值會設定為裝置上的取消對應粒度對齊方式。 UnmapGranularityAlignmentValid 的值 表示這個成員的有效性。

MaxUnmapLbaCount

單一 UNMAP 命令中可以取消對應的 LBA 數量上限,以邏輯區塊為單位。 從 Windows 10 開始有效。

MaxUnmapBlockDescriptorCount

單一 UNMAP 命令中允許的描述項數目上限。 從 Windows 10 開始有效。

言論

STORAGE_PROPERTY_QUERYPropertyId 成員設定為 StorageDeviceLBProvisioningProperty時,這個結構會在系統緩衝區中從 IOCTL_STORAGE_QUERY_PROPERTY 要求中傳回。

DEVICE_LB_PROVISIONING_DESCRIPTOR 結構會寫入系統緩衝區,Irp->AssociatedIrp.SystemBuffer,其值為 Parameters.DeviceIoControl.OutputBufferLength 中設定的 sizeof(DEVICE_LB_PROVISIONING_DESCRIPTOR)。

如果 UnmapGranularityAlignmentValid 為 0,則 任何使用 unmapGranularityAlignment 的程式代碼都應該假設其值為 0。

如果基礎存儲設備是 SCSI 裝置,則可以查詢取消對應功能。 如果 TrimEnabledDEVICE_TRIM_DESCRIPTOR 結構的成員為 TRUE,則支援 UNMAP。 當 STORAGE_PROPERTY_QUERYPropertyId 成員設定為 StorageDeviceTrimProperty時,DEVICE_TRIM_DESCRIPTOR 結構會在系統緩衝區中從 IOCTL_STORAGE_QUERY_PROPERTY 要求傳回。

要求

要求 價值
最低支援的用戶端 Windows 8
標頭 ntddstor.h (include Ntddstor.h)

另請參閱

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_QUERY