proc_timer_stats(5)

NOM
/proc/timer_stats - Statistiques sur les temporisateurs

DESCRIPTION

/proc/timer_stats (de Linux 2.6.21 jusqu’à Linux 4.10)
    Il s'agit d'une fonctionnalité de débogage offrant aux développeurs noyau et espace utilisateur la visibilité sur l'utilisation ou l'abus des temporisateurs. Elle permet aux développeurs noyau et espace utilisateur de vérifier que leur code ne fait pas un usage injustifié des temporisateurs. L'objectif est d'éviter les réveils inutiles et ainsi d'optimiser la consommation d'énergie.

    Si cette fonctionnalité est activée dans le noyau (CONFIG_TIMER_STATS) mais n'est pas utilisée, le surcoût de temps de traitement est quasiment nul et plutôt faible sur la taille des structures. Même lorsque la collecte est activée au moment de l’exécution, son surcoût est faible : tous les verrous sont par CPU et la recherche est hachée.

    Le fichier /proc/timer_stats est utilisé à la fois pour contrôler la fonction d'échantillonnage et lire les informations échantillonnées.

    La fonction timer_stats n'est pas active au démarrage. La commande suivante démarre l'échantillonnage :

        # echo 1 > /proc/timer_stats

    La commande suivante arrête l'échantillonnage :

        # echo 0 > /proc/timer_stats

    La commande suivante récupère les statistiques :

        $ cat /proc/timer_stats

    Lorsque l'échantillonnage est activé, chaque lecture depuis /proc/timer_stats fournira des statistiques nouvellement mises à jour. Une fois l'échantillonnage désactivé, les informations échantillonnées sont conservées jusqu'au démarrage d'une nouvelle période de collecte. Cela autorise plusieurs lectures.

    Exemple de sortie de /proc/timer_stats :

        $ cat /proc/timer_stats
        Timer Stats Version: v0.3
        Sample period: 1.764 s
        Collection: active
          255,     0 swapper/3        hrtimer_start_range_ns (tick_sched_timer)
           71,     0 swapper/1        hrtimer_start_range_ns (tick_sched_timer)
           58,     0 swapper/0        hrtimer_start_range_ns (tick_sched_timer)
            4,  1694 gnome-shell      mod_delayed_work_on (delayed_work_timer_fn)
           17,     7 rcu_sched        rcu_gp_kthread (process_timeout)
        ...
            1,  4911 kworker/u16:0    mod_delayed_work_on (delayed_work_timer_fn)
           1D,  2522 kworker/0:0      queue_delayed_work_on (delayed_work_timer_fn)
        1029 total events, 583.333 events/sec

    Les colonnes produites représentent :

    [1] le nombre d'évènements, suivi éventuellement (depuis Linux 2.6.23) de la lettre « D » s'il s'agit d'un temporisateur différable ;

    [2] le PID du processus qui a initialisé le temporisateur ;

    [3] le nom du processus qui a initialisé le temporisateur ;

    [4] la fonction où le temporisateur a été initialisé, et, entre parenthèses, la fonction de rappel associée au temporisateur.

    Durant le cycle de développement de Linux 4.11, ce fichier a été supprimé pour des raisons de sécurité, car il exposait des informations à travers les espaces de noms. De plus, il est possible d’obtenir les mêmes informations à l’aide des fonctions internes de traçage du noyau telles que ftrace.

VOIR AUSSI
proc(5)

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.