DEVICE_LB_PROVISIONING_DESCRIPTOR structure (winioctl.h)
La structure DEVICE_LB_PROVISIONING_DESCRIPTOR est l’une des structures de résultats de requête retournées par une requête IOCTL_STORAGE_QUERY_PROPERTY . Cette structure contient les fonctionnalités d’approvisionnement dynamique pour un périphérique de stockage.
Syntaxe
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;
Membres
Version
Contient la taille de cette structure, en octets. La valeur de ce membre change à mesure que des membres sont ajoutés à la structure.
Size
Spécifie la taille totale des données retournées, en octets. Cela peut inclure des données qui suivent cette structure.
ThinProvisioningEnabled
Le status pour le provisionnement dynamique.
Valeur | Signification |
---|---|
|
L’allocation dynamique est désactivée. |
|
L’approvisionnement dynamique est activé. |
ThinProvisioningReadZeros
Les lectures dans les régions non mappées retournent des zéros.
Valeur | Signification |
---|---|
|
Les données lues à partir de régions non mappées ne sont pas définies. |
|
Les lectures retournent des zéros. |
AnchorSupported
Prise en charge déterministe de la lecture après la suppression.
Valeur | Signification |
---|---|
|
La lecture déterministe après découpage n’est pas prise en charge. |
|
La lecture déterministe après découpage est prise en charge. |
UnmapGranularityAlignmentValid
Validité de l’alignement d’un mappage de granularité pour l’appareil.
Valeur | Signification |
---|---|
|
Annuler l’alignement de granularité n’est pas valide. |
|
L’alignement de la granularité de l’annulation de la carte est valide. |
GetFreeSpaceSupported
MapSupported
Reserved1[7]
Réservé.
OptimalUnmapGranularity
Nombre optimal de secteurs logiques pour un mappage de granularité pour l’appareil.
UnmapGranularityAlignment
Valeur actuelle, dans les secteurs logiques, définie pour l’alignement de granularité unmap sur l’appareil.
MaxUnmapLbaCount
À partir de Windows 10 : nombre maximal de LBA qui peuvent être décompressés dans une seule commande unmap, dans des blocs logiques.
MaxUnmapBlockDescriptorCount
À partir de Windows 10 : nombre maximal de descripteurs autorisés dans une seule commande unmap.
Remarques
Cette structure est retournée à partir d’une demande de IOCTL_STORAGE_QUERY_PROPERTY lorsque le membre PropertyId de STORAGE_PROPERTY_QUERY est défini sur StorageDeviceLBProvisioningProperty.
Si UnmapGranularityAlignmentValid = 0, tout code utilisant UnmapGranularityAlignment doit supposer qu’il a la valeur 0.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2012 [applications de bureau uniquement] |
En-tête | winioctl.h (inclure Windows.h) |