Contrôle du débogueur User-Mode à partir du débogueur de noyau
Vous pouvez rediriger l’entrée et la sortie d’un débogueur en mode utilisateur vers un débogueur de noyau. Cette redirection permet au débogueur du noyau de contrôler une session de débogage en mode utilisateur spécifique qui se produit sur l’ordinateur cible.
Vous pouvez utiliser KD ou WinDbg comme débogueur de noyau. Notez que la plupart des fonctionnalités familières de WinDbg ne sont pas disponibles dans ce scénario. Par exemple, vous ne pouvez pas utiliser la fenêtre Locals, la fenêtre Désassemblement ou la fenêtre Pile des appels, et vous ne pouvez pas parcourir le code source. Cela est dû au fait que WinDbg agit uniquement en tant que visionneuse pour le débogueur (NTSD ou CDB) en cours d’exécution sur l’ordinateur cible.
Vous pouvez utiliser CDB ou NTSD comme débogueur en mode utilisateur. NTSD est le meilleur choix, car il nécessite des ressources minimales du processeur et du système d’exploitation de l’ordinateur dont l’application est en cours de débogage. En fait, lorsque NTSD est démarré sous le contrôle du débogueur du noyau, aucune fenêtre NTSD n’est créée. Avec NTSD, vous pouvez effectuer un débogage en mode utilisateur via le port série au début de la phase de démarrage et à la fin de l’arrêt.
Note La commande .shell n’est pas prise en charge lorsque la sortie d’un débogueur en mode utilisateur est redirigée vers le débogueur du noyau.
Cette section comprend les éléments suivants :
Démarrage de la session de débogage décrit comment commencer une session où le débogueur en mode utilisateur est contrôlé à partir du débogueur du noyau.
Les modes de basculement décrivent les quatre modes différents impliqués et la façon d’alterner entre eux.
Quand utiliser cette technique décrit les scénarios dans lesquels cette technique est particulièrement utile.
La combinaison de cette méthode avec le débogage à distance décrit comment contrôler le débogueur en mode utilisateur à partir d’un débogueur de noyau et l’utiliser en tant que serveur de débogage en même temps. Cette combinaison peut être utile si vos symboles en mode utilisateur se trouvent sur un serveur de symboles.