Man page - proc_timer_stats(5)

Packages contains this manual

Available languages:

en fr pl ru ro de

Manual

proc_timer_stats

NOM
DESCRIPTION
VOIR AUSSI
TRADUCTION

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 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 .