Mise en place d'un système de tag sur les objets ELF

Magazine
Marque
GNU/Linux Magazine
Numéro
165
Mois de parution
novembre 2013
Spécialité(s)


Résumé
Lors de l'inspection d'un objet ELF (binaire, librairies dynamiques, … ), il peut être intéressant de connaître les éléments qui sont entrés dans la phase de génération (version du noyau, version du compilateur, version des binutils, tag SVN ou GIT, … ). Ces éléments peuvent servir à remonter à l'origine d'un bug et donc aider aux investigations.

1. Les objets binaires ELF sous Linux

ELF (Executable and Linkable Format, format exécutable et liable ; anciennement Executable and Linking Format) est un format de fichier binaire utilisé pour l'enregistrement de code compilé (objets, exécutables, bibliothèques de fonctions).

Il a été développé par l’USL (Unix System Laboratories) pour remplacer les anciens formats a.out et COFF qui avaient atteint leurs limites. Aujourd'hui, ce format est utilisé dans la plupart des systèmes d'exploitation de type Unix (GNU/Linux, Solaris, IRIX, System V, BSD), à l'exception de Mac OS X.

Chaque fichier ELF est constitué d'une en-tête ELF, suivi par les données du fichier. Les données de fichier peuvent inclure:

- Un tableau d'en-tête de programme, décrivant zéro ou plusieurs segments ;

- Un tableau d'en-tête de section, décrivant zéro ou plusieurs sections ;

- Les données référencées par des entrées dans la table d'en-tête du programme ou le…

La suite est réservée aux abonnés. Il vous reste 90% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant