Maison > développement back-end > C++ > Comment puis-je surveiller l'accès aux variables dans GDB à l'aide de points de surveillance ?

Comment puis-je surveiller l'accès aux variables dans GDB à l'aide de points de surveillance ?

Linda Hamilton
Libérer: 2024-12-09 18:44:15
original
639 Les gens l'ont consulté

How Can I Monitor Variable Access in GDB Using Watchpoints?

Surveillance de l'accès aux variables dans GDB

L'interruption de l'accès aux variables est une technique utile pour déboguer des programmes complexes. Plusieurs commandes de point de surveillance dans GDB vous permettent de surveiller les variables pour les lectures ou les écritures.

watch pauses sur les écritures, rwatch pauses sur les lectures et awatch pauses sur les opérations de lecture/écriture.

Accès mémoire Points de surveillance :

Vous pouvez définir des points de surveillance de lecture sur des emplacements mémoire à l'aide de rwatch. La commande suivante définit un point de surveillance de lecture sur l'adresse 0xfeedface :

gdb$ rwatch *0xfeedface
Copier après la connexion

Cependant, vous ne pouvez pas utiliser de variables GDB dans les expressions pour rwatch et awatch. Si vous essayez de le faire, vous recevrez un message d'erreur. Au lieu de cela, développez les expressions manuellement :

gdb$ print $ebx
 = 0x135700
gdb$ rwatch *0x135700+0xec1a04f
Copier après la connexion

Support matériel et logiciel :

La prise en charge de Watchpoint dépend de la prise en charge matérielle ou logicielle. Les points de surveillance matériels sont beaucoup plus rapides. Pour vérifier si votre système d'exploitation prend en charge les points de surveillance matériels, utilisez la commande show can-use-hw-watchpoints :

gdb$ show can-use-hw-watchpoints
Debugger's willingness to use watchpoint hardware is 1.
Copier après la connexion

Si la sortie est 1, les points de surveillance matériels sont activés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal