Partager via


Blocage et redémarrage de l’ordinateur cible

Lorsque vous effectuez un débogage du noyau, vous pouvez empêcher l’ordinateur cible de répondre (c’est-à-dire un incident ou un bogue case activée) en émettant la commande .crash (Forcer l’incident système). Cette commande entraîne immédiatement l’arrêt de la réponse de l’ordinateur cible. Le débogueur écrit un fichier de vidage en mode noyau si vous avez activé les vidages sur incident. (Pour plus d’informations sur ces fichiers, consultez Création d’un fichier de vidage Kernel-Mode.)

Pour redémarrer l’ordinateur cible, utilisez la commande .reboot (Redémarrer l’ordinateur cible).

Si vous souhaitez que l’ordinateur cible crée un fichier de vidage sur incident, puis redémarre, vous devez émettre la commande .crash , suivie de la commande .reboot . Si vous souhaitez uniquement redémarrer, la commande .crash n’est pas nécessaire.

Au cours des premières étapes du processus de démarrage, la connexion entre l’ordinateur hôte et l’ordinateur cible est perdue. Aucune information sur l’ordinateur cible n’est disponible pour le débogueur.

Une fois la connexion interrompue, le débogueur ferme tous les fichiers de symboles et décharge toutes les extensions du débogueur. À ce stade, tous les points d’arrêt sont perdus si vous exécutez KD ou CDB. Dans WinDbg, vous pouvez enregistrer l’espace de travail actuel. Cette action enregistre tous les points d’arrêt.

Si vous souhaitez mettre fin à la session de débogage à ce stade, utilisez la commande CTRL+B (en KD) ou cliquez sur Quitter dans le menu Fichier (dans WinDbg).

Si vous ne quittez pas le débogueur, la connexion est rétablie une fois le processus de démarrage terminé. Les symboles et les extensions sont rechargés à ce stade. Si vous exécutez WinDbg, l’espace de travail en mode noyau est rechargé.

Vous pouvez indiquer au débogueur de s’introduire automatiquement sur l’ordinateur cible pendant le processus de redémarrage à deux reprises :

  • Lorsque le premier module du noyau est chargé en mémoire

  • Quand le noyau s’initialise

Pour définir un point d’arrêt automatique lors du chargement du premier module du noyau, utilisez l’option de ligne de commande-d.

Vous pouvez également modifier l’état d’arrêt après l’exécution du débogueur :

  • Contrôlez le chargement initial du module et les points d’arrêt d’initialisation du noyau, comme tous les événements et exceptions. Vous pouvez entrer dans le débogueur lorsque ces événements se produisent ou les ignorer. Vous pouvez également exécuter automatiquement une commande spécifiée lorsque ces points d’arrêt sont atteints. Pour plus d’informations, consultez Contrôle des exceptions et des événements.

  • Utilisez les touches de raccourci CTRL+K dans KD, les touches de raccourci CTRL+ALT+K dans WinDbg et le débogage | Connexion au noyau | Utilisez la commande Arrêt initial dans WinDbg pour modifier l’état d’arrêt. Chaque fois que vous utilisez ces commandes, le débogueur bascule entre trois états : pas d’arrêt automatique, arrêt lors de l’initialisation du noyau et arrêt lors de la première charge du module du noyau. Cette méthode ne peut pas activer les deux points d’arrêt automatiques en même temps.