Mécanismes de Opt-In de pool NX
Pour porter le code du pilote en mode noyau vers Windows 8 à partir de versions antérieures de Windows, vous devez utiliser le type de pool de mémoire NonPagedPoolNx comme meilleure pratique. Vous pouvez utiliser l’une des nombreuses aides de portage pour « accepter » facilement l’utilisation du type de pool NonPagedPoolNx par défaut.
Ces aides au portage utilisent l’une des techniques suivantes ou les deux pour permettre au pilote d’utiliser le pool non paginé NX :
Utilisez une
#define
instruction de préprocesseur pour créer un nom de macro globalement défini.Appelez une fonction inline à partir de la routine DriverEntry .
Pour la plupart du code de pilote en mode noyau, ces aides au portage permettent aux développeurs de mettre à jour leurs pilotes avec un minimum d’effort.
Contenu de cette section
Rubrique | Description |
---|---|
Pour créer un fichier binaire de pilote unique qui s’exécute à la fois dans Windows 8 et dans les versions antérieures de Windows, utilisez le mécanisme d’adhésion POOL_NX_OPTIN. Il s’agit d’une aide au portage pour les fournisseurs de matériel tiers qui fournissent un seul binaire de pilote pour prendre en charge plusieurs versions de Windows. |
|
Si vous êtes un fournisseur de matériel qui fournit différents fichiers binaires de pilotes pour différentes versions de Windows, vous pouvez utiliser le mécanisme d’adhésion POOL_NX_OPTIN_AUTO. Cette aide au portage génère un fichier binaire de pilote distinct pour Windows 8 et pour chaque version antérieure de Windows prise en charge par votre pilote. |
|
Vous pouvez globalement activer l’un des mécanismes d’opt-in de pool de non-exécution (NX) pour un ensemble de fichiers sources de pilotes, puis remplacer ce mécanisme d’adhésion pour un ou plusieurs fichiers sources sélectionnés avec POOL_NX_OPTOUT. Cela permet aux fichiers sources sélectionnés de continuer à utiliser la mémoire non pagée exécutable. Vous pouvez utiliser le mécanisme de désinscription POOL_NX_OPTOUT avec le mécanisme d’POOL_NX_OPTIN ou de POOL_NX_OPTIN_AUTO. |