WDF_ALIGN_SIZE_UP, fonction (wdfcore.h)
[S’applique à KMDF et UMDF]
La fonction WDF_ALIGN_SIZE_UP retourne la taille de mémoire tampon supérieure suivante qui est alignée sur un décalage d’alignement spécifié.
Syntaxe
size_t WDF_ALIGN_SIZE_UP(
[in] size_t Length,
[in] size_t AlignTo
);
Paramètres
[in] Length
Longueur, en octets, d’une mémoire tampon.
[in] AlignTo
Décalage d’alignement, en octets. Cette valeur doit être une puissance de 2, par exemple 2, 4, 8, 16, etc.
Valeur retournée
WDF_ALIGN_SIZE_UP retourne la taille de mémoire tampon alignée, en octets.
Remarques
Les pilotes peuvent utiliser WDF_ALIGN_SIZE_UP ou WDF_ALIGN_SIZE_DOWN pour calculer une taille de mémoire tampon alignée sur un décalage d’alignement spécifié. Ce calcul est utile si votre pilote doit allouer plusieurs mémoires tampons contiguës, si chaque mémoire tampon doit commencer à une limite d’alignement d’adresse.
Si la valeur de l’un ou l’autre des paramètres d’entrée est trop grande, le dépassement arithmétique entraîne WDF_ALIGN_SIZE_UP de retourner une valeur non valide inférieure à Length. Votre code doit tester cette condition.
Exemples
L’exemple de code suivant reçoit une taille de mémoire tampon et retourne la taille (la taille actuelle ou la taille supérieure suivante) qui s’aligne sur une limite d’adresse DWORD.
bufferSizeAligned = WDF_ALIGN_SIZE_UP(bufferSize,
sizeof(DWORD));
if (bufferSizeAligned < bufferSize)
{
// Buffer too large.
...
}
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfcore.h (inclure Wdf.h) |
Bibliothèque | Wdf01000.sys (consultez Gestion des versions de la bibliothèque d’infrastructure).) |
IRQL | N’importe quel IRQL. |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour