Scroll to navigation

proc_timer_stats(5) File Formats Manual proc_timer_stats(5)

NAZWA

/proc/timer_stats - statystyki czasomierzy

OPIS

/proc/timer_stats (od Linuksa 2.6.21 do Linuksa 4.10)
Jest to funkcja debugowania uwidaczniające (nad)użycia czasomierzy w systemie Linux deweloperom jądra i przestrzeni użytkownika. Może być używana przez deweloperów zajmujących się jądrem i przestrzenią użytkownika do weryfikacji, czy ich kod nie używa w nadmiarze czasomierzy. Celem jest zapobieganie niepotrzebnym wybudzeniom, aby zoptymalizować zużycie energii.
Jeśli jest to włączone w jądrze (CONFIG_TIMER_STATS), lecz nie jest używane, ma narzut bliski zera oraz relatywnie niewielki narzut struktury danych. Nawet gdy zbieranie danych jest włączone przy rozruchu, narzut jest niski: wszystkie blokowania następują według CPU, a wyszukiwanie jest haszowane.
Plik /proc/timer_stats jest używany do kontrolowania funkcji próbkowania i odczytu próbek informacji.
Funkcja timer_stats jest nieaktywna przy rozruchu. Okres próbkowania można uruchomić poleceniem:

# echo 1 > /proc/timer_stats
    

Następujące polecenie zatrzymuje okres próbkowania:

# echo 0 > /proc/timer_stats
    

Statystyki można pozyskać przy pomocy:

$ cat /proc/timer_stats
    

Gdy próbkowanie jest włączone, każdy odczyt z /proc/timer_stats daje nowo zaktualizowane statystyki. Po wyłączeniu próbkowania, próbki informacji są zachowywane do momentu włączenia nowego okresu próbkowania. Pozwala to na wielokrotny odczyt.
Próbka wyniku z /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

Kolumny wyniku:
[1]
licznik liczby zdarzeń, po którym opcjonalnie (od Linuksa 2.6.23) występuje litera „D”, jeśli jest to czasomierz odraczalny;
[2]
PID procesu inicjującego czasomierz
[3]
nazwa procesu inicjującego czasomierz;
[4]
funkcja, w której zainicjowano czasomierz; oraz (w nawiasach) funkcja wywołania zwrotnego związanego z czasomierzem.
W cyklu rozwojowym Linuksa 4.11, plik ten usunięto ze względów bezpieczeństwa, jako że ujawnia on informacje poprzez różne przestrzenie nazw. Co więcej, można pozyskać te same informacje za pomocą śledzenia udostępnianego przez jądro, np. ftrace.

ZOBACZ TAKŻE

proc(5)

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 maja 2024 r. Linux man-pages (niewydane)