Débogage kernel et applicatif avec Ftrace pour système généraliste ou embarqué

Magazine
Marque
Open Silicium
Numéro
18
Mois de parution
avril 2016
Spécialité(s)


Résumé
Les outils et les méthodes de débogage pour l'espace applicatif Linux sont plutôt bien connus : de Valgrind à Strace/Ltrace en passant par GDB et toutes ses déclinaisons (DDD, Eclipse, Gdbserver), la documentation et les exemples sont très répandus. En ce qui concerne l'espace noyau, la pratique du débogage est beaucoup plus limitée. Pourtant, certains outils comme Ftrace permettent non seulement d'aider à la mise au point du code kernel, mais également d'analyser finement les comportements des tâches de l'espace utilisateur.

1. Ftrace

Le système Ftrace a été développé en 2008 par Steven Rostedt (Red Hat) et intégré dans le noyau Linux mainline 2.6.26. Il fournit un moyen de suivre depuis l'espace utilisateur le comportement du noyau en enregistrant des points de passage dans le code et en les présentant dans le système de fichiers debugfs.

L'utilisation de Ftrace est plutôt simple, mais nécessite d'écrire des paramètres dans plusieurs fichiers successifs, ce qui s'avère fastidieux à la longue. Un outil nommé trace-cmd propose une commande unique qui prend en charge la gestion des fichiers de debugfs concernés. Les résultats de Ftrace se présentent sous forme de fichiers de texte brut, ce qui est parfaitement suffisant dans certains cas (mesure de durée de latence maximale, liste des fonctions invoquées, etc.). Toutefois dans certaines circonstances, une présentation graphique des résultats serait préférable (synchronisation de tâches, mesure de temps de commutation, etc.). Une...

Cet article est réservé aux abonnés. Il vous reste 98% à découvrir.
S'abonner à Connect
  • 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
Je m'abonne


Article rédigé par

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous