Как короткий время может время (программа Linux) мера?

Я просто задаюсь вопросом что пределы для time . У меня есть программа, которая всегда берет точно 20 мс, таким образом, я предполагаю, что это является самым низким, она может иметь размеры, но я хочу видеть, существует ли своего рода документация этого.

2
задан 15.04.2010, 03:13

3 ответа

Самый короткий временной интервал, который это может измерить, является 1 мигом, который является инверсией частоты, указанной в опциях сборки для ядра (CONFIG_HZ).

3
ответ дан 08.12.2019, 05:09

Я соглашаюсь с ответом Ignacio однако, я полагаю, что он упускает критическую суть. Хотя миг является теоретически самой маленькой единицей, это может иметь размеры, иногда очень короткие продолжительности неточны, потому что используемое оборудование не измеряет изменения вовремя настолько быстро. По моему опыту, что-либо, меньше чем одна миллисекунда не может точно сравниться с чем-то еще (хотя то число могло быть целых 5 или 10 миллисекундами). При попытке сравнить определенной операции или программы, считайте выполнение ее многими сотнями или тысячи времен, затем делящих то общее время на количество повторений для нахождения более точного значения.

3
ответ дан 08.12.2019, 05:09

Попробуйте это:

gcc -o timetest -x c - <<< "int main() {}"; time ./timetest

На моем (старый и медленный) система, последующие выполнения:

time ./timetest

конец в так же мало как:

real    0m0.005s
user    0m0.004s
sys     0m0.000s
1
ответ дан 08.12.2019, 05:09

Теги

Похожие вопросы