proc_timer_stats
Table des matières
Retour à l'index
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 à
Index
- NOM
-
- DESCRIPTION
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:35 GMT, September 19, 2025