Interception de signal avec dump de la pile d'appel

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


Résumé
Juste avant qu'un programme se termine « anormalement », il peut être intéressant d'afficher la pile d'appel. Nous allons voir comment mettre cela en œuvre.

1. Définition

Une « backtrace » est une liste des appels de fonctions qui sont actuellement actifs dans un thread ou un processus donné. La façon habituelle d'inspecter la trace d'un programme est d'utiliser un débogueur externe tel que gdb.

Exemple de backtrace obtenu à partir d'un core dump généré après un segfault :

$ ulimit -c unlimited
./test_core
Erreur de segmentation (core dumped)
$ file core
core: ELF 32-bit LSB core file Intel 80386, version 1 (SYSV), SVR4-style, from
‘./test_core’
$ gdb ./test core
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying…

La suite est réservée aux abonnés. Il vous reste 92% à 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


Article rédigé par

Par le(s) même(s) auteur(s)

Développement applicatif avec GStreamer 1.0

Magazine
Marque
GNU/Linux Magazine
Numéro
211
Mois de parution
janvier 2018
Spécialité(s)
Résumé
GStreamer va bien au-delà des outils gst-launch-1.0 ou gst-inspect-1.0. En effet, il est possible d’utiliser tout son potentiel au sein de nos propres applications. Nous allons donc étudier la mise en œuvre via quelques exemples pratiques en C, C++ et enfin en Python.

Introduction à gstreamer 1.0

Magazine
Marque
GNU/Linux Magazine
Numéro
210
Mois de parution
décembre 2017
Spécialité(s)
Résumé
Lorsqu’il s’agit d’encoder, de transformer ou de décoder un flux vidéo et/ou audio, l’idéal est d’utiliser un framework adapté. Comme il en existe pléthore, nous allons étudier en détail le framework multimédia open source gstreamer.

Partez à la découverte de la réalité augmentée

Magazine
Marque
GNU/Linux Magazine
Numéro
197
Mois de parution
octobre 2016
Spécialité(s)
Résumé
Après le déferlement de Pokémon GO, GNU/Linux Magazine se devait d’aborder le sujet. En effet, le sujet de la réalité virtuelle ou augmentée prend aujourd’hui de plus en plus d’ampleur, tant dans le domaine des loisirs que professionnel. C’est ce que nous allons voir autour d’un sujet qui mettra en œuvre le framework ARTtoolkit de la société DAQRI.

Les listes de lecture

Python niveau débutant

9 article(s) - ajoutée le 01/07/2020
Vous désirez apprendre le langage Python, mais ne savez pas trop par où commencer ? Cette liste de lecture vous permettra de faire vos premiers pas en découvrant l'écosystème de Python et en écrivant de petits scripts.

Au pays des algorithmes

11 article(s) - ajoutée le 01/07/2020
La base de tout programme effectuant une tâche un tant soit peu complexe est un algorithme, une méthode permettant de manipuler des données pour obtenir un résultat attendu. Dans cette liste, vous pourrez découvrir quelques spécimens d'algorithmes.

Analyse de données en Python

10 article(s) - ajoutée le 01/07/2020
À quoi bon se targuer de posséder des pétaoctets de données si l'on est incapable d'analyser ces dernières ? Cette liste vous aidera à "faire parler" vos données.
Plus de listes de lecture