Na tyto otázky neexistuje jednotná odpověď, protože v některých případech může být vaše jádro zkompilováno „bez lechtání“ a vůbec nepoužívá běžné přerušení časovače. Ale pokud používáte tradiční jádro a tradiční distribuci, můžete najít .config
aktuálního jádra soubor pod /boot s něčím jako grep 'CONFIG_HZ=' /boot/config-$(uname -r)
.
Hodnotu HZ lze určit takto:
$ getconf CLK_TCK
100
Kteroukoli z možností doby kompilace běžícího jádra lze zobrazit pomocí getconf
. Mějte na paměti, že HZ lze konfigurovat:
$ man 7 time
Hodnota HZ se liší podle verzí jádra a hardwarových platforem. Na i386 je situace následující:na jádrech do 2.4.x včetně HZ dávalo hodnotu jiffy 0,01 sekundy; počínaje 2.6.0 bylo HZ zvýšeno na 1000, což dává okamžik 0,001 sekundy. Od jádra 2.6.13 je hodnota HZ konfiguračním parametrem akernelu a může být 100, 250 (výchozí) nebo 1000, což dává hodnotu jiffies 0,01, 0,004 nebo 0,001 sekundy. Od jádra 2.6.20 je k dispozici další frekvence:300, číslo, které se dělí rovnoměrně pro běžné snímkové frekvence videa (PAL, 25 HZ; NTSC, 30 HZ).
Systémové volání times(2) je speciální případ. Hlásí časy s granularitou definovanou konstantou jádra USER_HZ. Aplikace v uživatelském prostoru mohou určit cvalue této konstanty pomocí sysconf(_SC_CLK_TCK).
Jako obvykle budete možná muset oříznout _SC_
Když se na ni ptáte pomocí getconf
, ukousněte jméno proměnné zobrazené v manuálových stránkách .