Сторожовий таймер
Сторожовий таймер (рос. контрольний таймер, англ. Watchdog timer, WDT) — апаратно реалізована схема контролю за зависанням системи. Являє собою таймер, який періодично перезапускається контрольованою системою. Якщо скидання не відбулося протягом деякого інтервалу часу, відбувається примусовий перезапуск системи. У деяких випадках сторожовий таймер може посилати системі сигнал на перезавантаження («м'яке» перезавантаження), в інших — перезавантаження відбувається апаратно, завдяки замиканню сигнального проводу RST або подібного йому.
Фізично сторожовий таймер може бути реалізований як:
- Самостійний пристрій.
- Компонент пристрою, наприклад, мікросхемою на материнській платі.
- Частиною кристала SoC.
Автоматизовані системи, що не контролюються постійно людиною, також схильні до помилок, зависань та інших збоїв (зокрема апаратних). Тому використання в них сторожових таймерів збільшують їхню стабільність роботи, завдяки встановлення часового обмеження на реакцію оновлення свого статусу. Якщо оновлення статусу не відбулося, то відбувається примусовий перезапуск системи.
Сторожовий таймер найбільше поширення знайшов у вбудованих системах.
Сторожовий таймер має незалежний генератор й працює незалежно від основної системи. Через певні проміжки часу (при настанні події Time-Out) він примусово перезавантажує основну систему. Нормально працююча система постійно обнуляє ("скидає") WDT через проміжки часу, менше його періоду, для того щоб уникнути перезавантаження. Зазвичай, скидання WDT здійснюється командою WDR (Watch Dog Reset).