Instrumentation du code source

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

En informatique, l'instrumentation du code source est une opération consistant à ajouter des instructions machine supplémentaires à un programme informatique sans nécessiter la modification du code source original. Elle est apparentée à l'instrumentation dans les sciences, d'où son nom.

Explication[modifier | modifier le code]

La compilation du code source d'un programme génère un binaire (exécutable, ou code objet) ou bien du bytecode. L'instrumentation intervient après la compilation pour ajouter des instructions supplémentaires au binaire généré. Elle peut aussi intervenir durant la compilation. Dans ce cas, des instructions sont ajoutées en plus des instructions normalement générées à partir du code source.

Les instructions ajoutées sont alors exécutées avec les autres lors de l'exécution du programme.

Utilisation[modifier | modifier le code]

Les instructions ajoutées dépendent du but à atteindre par l'instrumentation.

  • Le profilage de code utilise l'instrumentation de code pour enregistrer les fonctions appelées et le temps passé dans chacune d'elles, afin d'identifier les parties de code à optimiser.
  • Le tissage dans la programmation orientée aspect modifie le binaire généré lors de la compilation en ajoutant des capacités supplémentaires au programme.
  • Déterminer la couverture de code utilise l'instrumentation de code pour enregistrer les instructions exécutées et les chemins empruntés lors de l'exécution.
  • Le logiciel Purify détecte les problèmes dans l'utilisation de la mémoire (fuite de mémoire, déréférencement de pointeur NULL, etc.) dans un programme en l'instrumentant et en ajoutant des vérifications à l'exécution.

Voir aussi[modifier | modifier le code]

  • Apache BCEL, une bibliothèque logicielle permettant de manipuler du bytecode Java pouvant être utilisée pour instrumenter un programme Java.