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 中目前 IRP 堆棧位置的 sizeof (DEVICE_LB_PROVISIONING_DESCRIPTOR) 。

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

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

規格需求

需求
最低支援的用戶端 Windows 8
標頭 ntddstor.h (包含 Ntddstor.h)

另請參閱

IOCTL_STORAGE_QUERY_PROPERTY

STORAGE_PROPERTY_QUERY