bl (liste de points d’arrêt)

La commande bl répertorie des informations sur les points d’arrêt existants.

bl [/L] [Breakpoints]

Paramètres

/L
Force bl à toujours afficher les adresses de point d’arrêt au lieu d’afficher les numéros de ligne et de fichier source.

Points d’arrêt
Spécifie les numéros d’IDENTIFICATION des points d’arrêt à lister. Si vous omettez les points d’arrêt, le débogueur répertorie tous les points d’arrêt. Vous pouvez spécifier n’importe quel nombre de points d’arrêt. Vous devez séparer plusieurs ID par des espaces ou des virgules. Vous pouvez spécifier une plage d’ID de point d’arrêt à l’aide d’un trait d’union (-). Vous pouvez utiliser un astérisque (*) pour indiquer tous les points d’arrêt. Si vous souhaitez utiliser une expression numérique pour un ID, placez-la entre crochets ([]). Si vous souhaitez utiliser une chaîne avec des caractères génériques pour correspondre au nom symbolique d’un point d’arrêt, placez-la entre guillemets (« »).

Environnement

Élément Description
Modes mode utilisateur, mode noyau
Targets débogage en direct uniquement
Plateformes all

Informations supplémentaires

Pour plus d’informations et des exemples d’utilisation des points d’arrêt, d’autres commandes de point d’arrêt et de méthodes de contrôle des points d’arrêt, et pour savoir comment définir des points d’arrêt dans l’espace utilisateur à partir d’un débogueur de noyau, consultez Utilisation de points d’arrêt. Pour plus d’informations sur les points d’arrêt conditionnels, consultez Définition d’un point d’arrêt conditionnel.

Remarques

Pour chaque point d’arrêt, la commande affiche les informations suivantes :

  • ID du point d’arrêt. Cet ID est un nombre décimal que vous pouvez utiliser pour faire référence au point d’arrêt dans les commandes ultérieures.

  • Point d’arrêt status. Le status peut être e (activé) ou d (désactivé).

  • (Points d’arrêt non résolus uniquement) La lettre « u » apparaît si le point d’arrêt n’est pas résolu. Autrement dit, le point d’arrêt ne correspond pas à une référence symbolique dans un module actuellement chargé. Pour plus d’informations sur ces points d’arrêt, consultez Points d’arrêt non résolus (bu Points d’arrêt).

  • Adresse virtuelle ou expression symbolique qui constitue l’emplacement du point d’arrêt. Si vous avez activé le chargement du numéro de ligne source, la commande bl affiche les informations de fichier et de numéro de ligne au lieu des décalages d’adresse. Si le point d’arrêt n’est pas résolu, l’adresse est omise ici et apparaît à la fin de la description à la place.

  • (Points d’arrêt de données uniquement) Les informations de type et de taille sont affichées pour les points d’arrêt de données. Les types peuvent être e (exécuter), r (lecture/écriture), w (écriture) ou i (entrée/sortie). Ces types sont suivis de la taille du bloc, en octets. Pour plus d’informations sur ces points d’arrêt, consultez Points d’arrêt du processeur (ba Points d’arrêt).

  • Nombre de passes restant jusqu’à l’activation du point d’arrêt, suivi du nombre initial de passes entre parenthèses. Pour plus d’informations sur ce type de point d’arrêt, consultez la description du paramètre Passes dans bp, bu, bm (Définir le point d’arrêt).

  • Processus et thread associés. Si le thread est donné sous la forme de trois astérisques (***), ce point d’arrêt n’est pas un point d’arrêt spécifique au thread.

  • Module et fonction, avec décalage, qui correspondent à l’adresse du point d’arrêt. Si le point d’arrêt n’est pas résolu, l’adresse du point d’arrêt apparaît ici à la place, entre parenthèses. Si le point d’arrêt est défini sur une adresse valide mais que les informations de symbole sont manquantes, ce champ est vide.

  • Commande exécutée automatiquement lorsque ce point d’arrêt est atteint. Cette commande s’affiche entre guillemets.

Si vous ne savez pas quelle commande a été utilisée pour définir un point d’arrêt existant, utilisez .bpcmds (Afficher les commandes de point d’arrêt) pour répertorier tous les points d’arrêt, ainsi que les commandes utilisées pour les créer.

L’exemple suivant montre la sortie d’une commande bl .

Exemple

0:000> bl
 0 e 010049e0     0001 (0001)  0:**** stst!main

Cette sortie contient les informations suivantes :

  • L’ID du point d’arrêt est 0.

  • Le point d’arrêt status est e (activé).

  • Le point d’arrêt n’est pas non résolu (il n’y a pas d’u dans la sortie).

  • L’adresse virtuelle du point d’arrêt est 010049e0.

  • Le point d’arrêt est actif lors du premier passage dans le code et le code n’a pas encore été exécuté sous le débogueur. Ces informations sont indiquées par une valeur de 1 (0001) dans le compteur « passes restantes » et une valeur de 1 ((0001)) dans le compteur de passes initial.

  • Ce point d’arrêt n’est pas un point d’arrêt spécifique au thread (***).

  • Le point d’arrêt est défini sur main dans le module stst.