Partager via


Fuzzing différé de Power Framework

Notes

Cette case activée est déconseillée à partir de Windows 10 build 19042 et versions ultérieures

L’option De fuzzing différé de Power Framework aléatoire les planifications de thread pour aider à détecter les bogues d’accès concurrentiel dans les pilotes qui utilisent l’infrastructure de gestion de l’alimentation (PoFx) . Cette option n’est pas recommandée pour les pilotes qui n’utilisent pas directement l’infrastructure de gestion de l’alimentation (PoFx).

Note Cette option est disponible à partir de Windows 8.

Lorsque l’option est sélectionnée, Driver Verifier insère des retards aléatoires à différents points des threads. L’option Fuzzing différé de Power Framework utilise un algorithme qui fournit des garanties probabilistes pour la recherche d’erreurs dans les pilotes. Power Framework Delay Fuzzing améliore les tests de contrainte traditionnels, où le programme de test est exécuté pendant des jours, voire des semaines, dans l’espoir d’intercepter des problèmes dans qui peuvent se produire lors de l’exécution simultanée.

La plupart des routines de pilotes sont réentrées et simultanées. Les bogues de concurrence sont notoirement difficiles à trouver. Les bogues peuvent inclure des interblocages et des conditions de course, causés par des problèmes de synchronisation et un mauvais minutage entre les threads. Le test de résistance est la technique de test traditionnelle, mais il peut être lent et coûteux, et les résultats ne sont pas toujours reproductibles. L’option Fuzzing delay de Power Framework augmente la probabilité que des conditions de course apparaissent au moment de l’exécution en insérant des délais aléatoires dans différents appels de fonction d’API power. Par exemple, si une condition de course entraîne l’accès d’un pilote à l’IRP après l’annulation de celle-ci, l’option Fuzzing différée de Power Framework augmente les chances de cette condition de course de sorte que driver Verifier détecte l’erreur pendant les tests. L’option Fuzzing différé de Power Framework étend la puissance et l’utilité du vérificateur de pilotes.

Activation de cette option

Vous pouvez activer la fonctionnalité de fuzzing différé de Power Framework pour un ou plusieurs pilotes à l’aide du Gestionnaire du vérificateur de pilotes ou de la ligne de commande Verifier.exe. Pour plus d’informations, consultez Sélection des options du vérificateur de pilote. Vous devez redémarrer l’ordinateur pour activer ou désactiver l’option Fuzzing différé de Power Framework.

Note L’option Fuzzing delay de Power Framework augmente la probabilité que des conditions de course apparaissent au moment de l’exécution en insérant des délais aléatoires dans différents appels de fonction d’API power. Pour que ces retards soient plus efficaces, vous pouvez activer cette option avec d’autres options de vérificateur de pilotes. En raison des retards qui peuvent être introduits, vous pouvez vous attendre à ce que l’ordinateur ait une réponse plus lente.

  • Sur la ligne de commande

    Sur la ligne de commande, le fuzzing différé de Power Framework est représenté par le vérificateur /flags 0x00008000 (bit 15). Pour activer power Framework Delay Fuzzing, utilisez une valeur d’indicateur de 0x00008000 ou ajoutez 0x00008000 à la valeur de l’indicateur. Par exemple :

    verifier /flags 0x00008000 /driver MyDriver.sys
    

    La fonctionnalité sera active après le prochain démarrage.

  • Utilisation du Gestionnaire de vérificateur de pilotes

    1. Démarrez le Gestionnaire de vérificateur de pilotes. Tapez Vérificateur dans une fenêtre d’invite de commandes.
    2. Sélectionnez Créer des paramètres personnalisés (pour les développeurs de code), puis cliquez sur Suivant.
    3. Sélectionnez Sélectionner des paramètres individuels dans une liste complète.
    4. Sélectionnez (case activée) Fuzzing différé de Power Framework.
    5. Redémarrez l'ordinateur.