Вопрос:
- Как рассчитывается такт процессора и что он представляет?
- Есть ли один
tick
приравнять ,10 miliseconds
таким образом , если какой - то поток сообщили , что не призывал к (5 * 10 ticks = 500 ticks
) означает ли это процессор был , пожалуй , слишком занят , чтобы запланировать вышеупомянутую нить для работы ?
Ответы:
Клеща произвольный блок для измерения внутреннего системного времени. Обычно есть тикающий внутренний счетчик ОС; текущее время и дата, используемые различными функциями ОС, выводятся из этого счетчика.
Сколько миллисекунд представляет тик, зависит от ОС и может даже отличаться в зависимости от установки. Используйте механизмы ОС для преобразования тиков в секунды.
sysconf(_SC_CLK_TCK);
. Смотрите, например, http://linux.die.net/man/2/timesОтносительно того, почему поток сообщает, что он не вызывается: это будет зависеть от того, блокирует ли поток где-либо (ожидание, ввод / вывод и т. Д.). Если он не блокирует, то да, планировщик ОС решит, когда он начнет работать, что может занять много времени, если система занята.
Редактировать:
Обратите внимание, что, возможно, к сожалению, некоторые авторы также используют тик в качестве синонима тактового цикла процессора (например, этот текст ). Я считаю, что это использование менее распространено, но все же лучше сначала выяснить, о чем говорят люди.
источник
Редактировать: взято из ПК Оборудование в двух словах :
«Процессорные часы координируют все операции процессора и памяти путем периодической генерации эталонного сигнала времени, называемого тактовым циклом или тактом . Тактовая частота указывается в гигагерцах (ГГц), которая задает миллиарды тактов в секунду. Тактовая частота определяет, как быстро выполняются инструкции. Некоторые инструкции требуют один тик, другие - несколько тиков, а некоторые процессоры выполняют несколько инструкций за один тик ".
Время между тактами определяется вашей тактовой частотой, и оно занимает от одного до нескольких тактов в зависимости от выполняемой операции. Например, процессору класса 286 нужно 20 тиков, чтобы умножить два числа.
Если вам нужны высокопроизводительные таймеры, то я не думаю, что вы можете полагаться на то, что тики будут постоянными во всех системах.
Планировщик ЦП мог задержать поток, особенно если был другой поток с более высоким приоритетом. Так что да, процессор мог быть слишком занят.
источник
ticks
в Unix-системах обычно это происходит 60 или 100 раз в секунду и не привязано к скорости передачи.tick
в качестве синонимаprocessor cycle
. Тем не менее, я в основном вижуtick
использованный, как объяснено в моем ответе выше. Но я думаю, что терминология, как обычно, меняется :-(. Я отредактировал свой ответ.