Таймер

Таймер

Никогда нельзя привязываться к какой-либо конкретной частоте генерации прерывания системного таймера и, соответственно, к тому, сколько раз в секунду изменяется переменная jiffies. Всегда необходимо использовать константу HZ, чтобы корректно определять интервалы времени. Это очень важно, потому что значение частоты системного таймера может отличаться не только для разных аппаратных платформ, но и для одной аппаратной платформы при использовании разных версий ядра.

Например, константа HZ для аппаратной платформы x86 сейчас равна 1000. Это значит, что прерывание таймера возникает 1000 раз в секунду, или каждую миллисекунду. Однако до серии ядер 2.6 для аппаратной платформы x86 значение константы HZ было равно 100. Для разных аппаратных платформ эти значения отличаются: для аппаратной платформы alpha константа HZ равна 1024, а для платформы ARM — 100.

Никогда нельзя сравнивать значение переменной jiffies с числом, таким как 1000, и думать, что это всегда будет означать одно и то же. Для получения интервалов времени необходимо всегда умножать или делить на константу HZ, как в следующем примере.

HZ /* одна секунда */

(2*HZ) /* две секунды */

(HZ/2) /* полсекунды */

(HZ/100) /* 10 мс */

(2*HZ/100) /* 20 мс */

Константа HZ определена в файле <asm/param.h>. Об этом подробно рассказано в главе 10, "Таймеры и управление временем".

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

8.3 ТАЙМЕР

Из книги Архитектура операционной системы UNIX автора Бах Морис Дж

8.3 ТАЙМЕР В функции программы обработки прерываний по таймеру входит:• перезапуск часов,• вызов на исполнение функций ядра, использующих встроенные часы,• поддержка возможности профилирования выполнения процессов в режимах ядра и задачи;• сбор статистики о системе и


Инструмент Таймер

Из книги Интерактивные доски и их использование в учебном процессе автора Горюнова М. А.

Инструмент Таймер Инструмент Таймер (рис. 6.33) может быть использован на уроках при изучении часов, проверке техники чтения в начальных классах, выполнении заданий на время, при подготовке к публичным выступлениям и в других случаях. Инструмент может работать в режиме


Инструмент Таймер/часы

Из книги Удвоение продаж в интернет-магазине автора Парабеллум Андрей Алексеевич

Инструмент Таймер/часы Инструмент Таймер/часы (рис. 8.18) может быть использован на уроках при изучении часов, проверке техники чтения в начальных классах, выполнении заданий на время, при подготовке к публичным выступлениям и в других случаях.Инструмент может работать в


Таймер с обратным отсчетом

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Таймер с обратным отсчетом В сочетании с данным приемом хорошо работает ограничение скидки по времени – когда рядом с товаром в режиме реального времени тикает анимированный таймер с обратным отсчетом (рис. 6). Поставьте на нем ограничение, например 1 час. Этого вполне


Какой таймер выбрать?

Из книги Разработка ядра Linux автора Лав Роберт

Какой таймер выбрать? Создав таймер, теперь вы должны решить, какого типа будет этот таймер. Это осуществляется путем комбинирования аргументов функции timer_settime(), которая обычно применяется для собственно запуска таймера:#include <time.h>int timer_settime(timer_t timerid, int flags, struct itimerspec


Системный таймер

Из книги автора

Системный таймер Системный таймер играет более значительную роль для отслеживания хода времени ядром. Независимо от аппаратной платформы, идея, которая лежит в основе системного таймера, одна и та же — это обеспечение механизма управления прерываниями, которые