Configuration manuelle du débogage en mode noyau sur un câble série
Les outils de débogage pour Windows prennent en charge le débogage du noyau via un câble null-modem. Les câbles null-modem sont des câbles série configurés pour envoyer des données entre deux ports série. Ne confondez pas les câbles null-modem avec les câbles série standard. Les câbles série standard ne connectent pas les ports série entre eux. Pour des informations sur le câblage des câbles null-modem, consultez le câblage des câbles null-modem.
L’ordinateur qui exécute le débogueur est appelé l’ordinateur hôte, et l’ordinateur en cours de débogage est appelé l’ordinateur cible.
Configuration de l'ordinateur cible
Important
Avant d’utiliser bcdedit pour modifier les informations de démarrage, vous devrez peut-être suspendre temporairement les fonctionnalités de sécurité de Windows telles que BitLocker et Secure Boot sur le PC de test. Vous pouvez réactiver Secure Boot une fois que vous avez terminé le débogage et que vous avez désactivé le débogage du noyau.
Sur l'ordinateur cible, ouvrez une fenêtre d'invite de commande en tant qu'administrateur et entrez les commandes suivantes, où n est le numéro du port COM utilisé pour le débogage sur l'ordinateur cible, et rate est la vitesse (en bauds) utilisés pour le débogage :
bcdedit /debug on
bcdedit /dbgsettings serial debugport :n baudrate :rate
Remarque : La vitesse (en bauds) doit être la même sur l'ordinateur hôte et l'ordinateur cible. Le taux recommandé est de 115200.
Redémarrez l'ordinateur cible.
Démarrer la session de débogage
Connectez le câble null-modem aux ports COM que vous avez choisis pour le débogage sur les ordinateurs hôte et cible.
Utilisation de WinDbg
Sur l’ordinateur hôte, ouvrez WinDbg. Dans le menu Fichier, choisissez Débogage du noyau. Dans la boîte de dialogue de débogage du noyau, ouvrez l'onglet COM. Dans la boîte de vitesse (en bauds), saisissez le taux que vous avez choisi pour le débogage. Dans la boîte de port, entrez COMn où n est le numéro du port COM que vous avez choisi pour le débogage sur l'ordinateur hôte. Cliquez sur OK.
Vous pouvez également démarrer une session avec WinDbg en entrant la commande suivante dans une fenêtre d'invite de commande ; n est le numéro du port COM utilisé pour le débogage sur l'ordinateur hôte, et rate est la vitesse (en bauds)utilisée pour le débogage :
windbg -k com:port=COMn,baud=rate
Utilisation de KD
Sur l'ordinateur hôte, ouvrez une fenêtre d'invite de commande et entrez la commande suivante, où n est le numéro du port COM utilisé pour le débogage sur l'ordinateur hôte, et rate est la vitesse (en bauds) utilisée pour le débogage :
kd -k com:port=COMn,baud=rate
Utilisation des variables d'environnement
Sur l'ordinateur hôte, vous pouvez utiliser des variables d'environnement pour spécifier le port COM et la vitesse (en bauds). Ensuite, vous n'avez pas à spécifier le port et la vitesse (en bauds) chaque fois que vous commencez une session de débogage. Pour utiliser des variables d'environnement pour spécifier le port COM et la vitesse (en bauds)d, ouvrez une fenêtre d'invite de commande et entrez les commandes suivantes, où n est le numéro du port COM utilisé pour le débogage sur l'ordinateur hôte, et rate est la vitesse (en bauds) utilisée pour le débogage :
- set _NT_DEBUG_PORT=COMn
- set _NT_DEBUG_BAUD_RATE=rate
Pour démarrer une session de débogage, ouvrez une fenêtre d'invite de commande et entrez l'une des commandes suivantes :
- kd
- windbg
Conseils de dépannage pour le débogage via un câble série
Spécifiez le bon port COM à la fois sur l'hôte et la cible
Déterminez le nombre de ports COM que vous utilisez pour le débogage sur les ordinateurs hôte et cible. Par exemple, supposons que votre câble null-modem soit connecté à COM1 sur l'ordinateur hôte et à COM2 sur l'ordinateur cible.
Sur l'ordinateur cible, ouvrez une fenêtre d'invite de commande en tant qu'administrateur et saisissez bcdedit /dbgsettings. Si vous utilisez COM2 sur l'ordinateur cible, la sortie de bcdedit doit afficher debugport 2
.
Sur l’ordinateur hôte, spécifiez le port COM approprié lorsque vous démarrez le débogueur ou lorsque vous définissez des variables d’environnement. Si vous utilisez COM1 sur l’ordinateur hôte, utilisez l’une des méthodes suivantes pour spécifier le port COM.
- Dans WinDbg, dans la boîte de dialogue Débogage du noyau, saisissez COM1 dans la zone Port.
- windbg -k com:port=COM1, ...
- kd -k com:port=COM1, ...
- set _NT_DEBUG_PORT=COM1
La vitesse (en bauds) doit être la même sur l’hôte et la cible
Le taux de baud utilisé pour le débogage sur un câble série doit être paramétré sur la même valeur sur les ordinateurs hôtes et cibles. Par exemple, supposons que vous avez choisi un taux de baud de 115200.
Sur l'ordinateur cible, ouvrez une fenêtre d'invite de commande en tant qu'administrateur et saisissez bcdedit /dbgsettings. La sortie de bcdedit doit s’afficher baudrate 115200
.
Sur l’ordinateur hôte, spécifiez le taux baud approprié lorsque vous démarrez le débogueur ou lorsque vous définissez des variables d’environnement. Utilisez l’une des méthodes suivantes pour spécifier une vitesse (en bauds) de 115200.
- Dans WinDbg, dans la boîte de dialogue Débogage du noyau, saisissez 115200 dans la zone vitesse (en bauds).
- windbg -k ..., baud=115200
- kd -k ..., baud=115200
- set _NT_DEBUG_BAUD_RATE=115200
Câble de modem Null
Les tableaux suivants montrent comment les câbles null-modem sont câblés.
Connecteur à 9 broches
Connecteur 1 | Connecteur 2 | Signaux |
---|---|---|
2 | 3 | Tx - Rx |
3 | 2 | Rx - Tx |
7 | 8 | RTS - CTS |
8 | 7 | CTS - RTS |
4 | 1+6 | DTR - (CD+DSR) |
1+6 | 4 | (CD+DSR) - DTR |
5 | 5 | Masse signal |
Connecteur à 25 broches
Connecteur 1 | Connecteur 2 | Signaux |
---|---|---|
2 | 3 | Tx - Rx |
3 | 2 | Rx - Tx |
4 | 5 | RTS - CTS |
5 | 4 | CTS - RTS |
6 | 20 | DSR - DTR |
20 | 6 | DTR - DSR |
7 | 7 | Masse signal |
Abréviations de signal
Abréviation | Signal |
---|---|
Tx | Transmettre des données |
Rx | Recevoir des données |
RTS | Demande à envoyer |
CTS | Effacer pour envoyer |
DTR | Terminal de données prêt |
DSR | Jeu de données prêt |
CD | Détection de l’opérateur |
Informations supplémentaires
Pour obtenir la documentation complète de la commande bcdedit , consultez la référence des options BCDEdit.