Книга: Разработка ядра Linux
Таймеры
Таймеры (timers), или, как их еще иногда называют, динамические таймеры, или таймеры ядра, необходимы для управления ходом времени в ядре. Коду ядра часто необходимо откладывать выполнение некоторых функций на более позднее время. Здесь намеренно выбрано не очень четкое понятие "позже". Назначение механизма нижних половин — это не задерживать выполнение, а не выполнять работу прямо сейчас. В связи с этим необходим инструмент, который позволяет задержать выполнение работы на некоторый интервал времени. Если этот интервал времени не очень маленький, но и не очень большой, то решение проблемы — таймеры ядра.
Таймеры очень легко использовать. Необходимо выполнить некоторые начальные действия, указать момент времени окончания ожидания, указать функцию, которая будет выполнена, когда закончится интервал времени ожидания, и активизировать таймер. Указанная функция будет выполнена, когда закончится интервал времени таймера. Таймеры не являются циклическими. Когда заканчивается интервал времени ожидания, таймер ликвидируется. Это одна из причин, почему таймеры называют динамическими[59]. Таймеры постоянно создаются и ликвидируются, на количество таймеров не существует ограничений. Использование таймеров очень популярно во всех частях ядра.
- 14.3.3. Интервальные таймеры: setitimer() и getitimer()
- Глава 10 Таймеры и управление временем
- Аппаратные часы и таймеры
- Таймеры ожидания
- 18.2.2. Интервальные таймеры
- 6.2.4. Таймеры, задержки и буферы
- 14.1. Таймеры
- Часы и таймеры
- Часы, таймеры и периодические уведомления
- Таймеры, посылающие сигналы
- Таймеры, создающие потоки
- Глава 3 Часы, таймеры и периодические уведомления