Informaticien de langage programmation

Débogueur (Outils pour stopper, piloter l'exécution, observer l'état)

Débugueur (logiciel) est une application qui aide un développeur à analyser les bugs d'un programme, logiciel à la programmation informatique du processus de troubleshooting.

L'outil pour stopper (mettre en pause) l'exécution

  • Commande d'arrêt manuel : le programmeur peut décider à tout moment de stopper l'exécution
  • Point d'arrêt : placé à un endroit spécifique du programme (généralement dans le code source),
  • Point d'arrêt conditionné : comme le point d'arrêt,
  • Point d'observation (watch) : permet d'arrêter l'exécution du programme sur la condition de la modification d'une variable

L'outils pour piloter l'exécution du programme

  • Pas-à-pas : exécution instruction par instruction,
    • Pas-à-pas sommaire : une instruction est exécutée, dans le programme principal,
    • Pas-à-pas détaillé : comme le pas-à-pas sommaire, sauf que le pas-à-pas entre aussi dans les fonctions
    • Avec cadencement : à intervalles périodiques, une instruction est exécutée 
  • Redémarrage de la fonction courante (drop frame)
  • Retour en arrière : revenir à l'instruction précédente, en retrouvant l'état précédent (fonctionnalité assez rare).

L'outils pour observer l'état du programme

  • Observation d'une variable,
  • Observation d'une zone mémoire,
  • Observation d'un registre du microprocesseur,
  • Observation de la pile d'appel (backtrace),
  • Observation du code source avec point d'exécution actuel,
  • Observation du code assembleur (sauf langage interprété) avec point d'exécution actuel,
  • Trace : permet d'observer des informations en différé, sans stopper l'exécution du programme,

Permet de modifier l'état du programme

  • Modification d'un registre
  • Modification d'une variable
  • Modification d'une zone mémoire

Plusieurs débogueurs connus

  • adb, Android Debug Bridge,
  • AntiC,
  • bashdb,
  • Broadway,
  • CodeView,
  • DAEDALUS,
  • DBX, 
  • D.U.M.A Detect Unintended Memory Access,
  • Dynamic debugging tape (DDT), and ODT,
  • DuxDebugger
  • Electric Fence,
  • Firebug,
  • GDB (GNU Debugger),
  • CUDA GDB,
  • IDA The Interactive Disassembler,
  • Le Java Debugger,
  • kgdb, 
  • ladebug,
  • MacsBug,
  • Mpatrol,
  • OCamlDebug, le débogueur d'Objective Caml,
  • OllyDbg,
  • PE Explorer,
  • Les débogueurs Perl,
  • Prism Parallel Debugger,
  • Purify,
  • sdb,
  • SoftICE,
  • Syser, un debugger Ring 0,
  • SPlint,
  • TMON,
  • TotalView,
  • Turbo Debugger,
  • Valgrind,
  • W32DASM,
  • HP Wildebeest Debugger, appelé aussi HP WDB,
  • WinDbg,
  • ODB: Omniscient Debugger.

Related Articles

Vendre bien numérique

Donner site numerique

Veillez nous contacter

Vente et achat en ligne

Rechercher

Terms and conditions | Privacy Policy | Cookie Policy | Disclaimers Policy | Disclosures Policy | Return Policy | Shipping Policy | Secure Payment | Terms of Service | Community Guidelines