Сторож Коротко кажучи, watchdog — це механізм, який забезпечує нормальну роботу системи або вихід із мертвого контуру, глухого блокування тощо.
Сторожі поділяються на апаратні та програмні сторожі. Апаратний наглядач використовує схему таймера, вихід таймера підключений до кінця скидання схеми, і програма очищає таймер у певний часовий проміжок (відомий як «feeding the dog»), тому коли програма працює нормально, таймер ніколи не може переповнитися, тому не може генерувати сигнал скидання. Якщо програма не працює і watchdog не скидається протягом таймерного періоду, таймер watchdog переповнюється для генерації сигналу скидання та перезапуску системи. Принцип програмного наглядача той самий, але таймер на апаратній схемі замінений на внутрішній таймер процесора, що може спростити апаратну схему, але він не такий надійний, як апаратний таймер, наприклад, неможливо виявити відмову внутрішнього таймера системи.
Існує два типи програмних сторожових догів: звичайні м'які собаки для виявлення м'яких блокувань (на основі переривань тактового сигналу) та собаки NMI для виявлення жорстких блокувань (на основі переривань NMI).
Примітка 1: Пріоритет тактового переривання менший за переривання NMI Примітка 2: Блокування означає певну частину коду ядра, що займає процесор. Блокування може призвести до того, що вся система перестане реагувати. М'яке блокування і жорстке блокування — єдина різниця в тому, що жорстке блокування виникає, коли екран процесора переривається. ———————————————— Повідомлення про авторське право: Ця стаття є оригінальною статтею блогера CSDN «Hober_yao», відповідно до угоди про авторське право CC 4.0 BY-SA, будь ласка, додайте оригінальне джерело та цю заяву для повторного видання. Оригінальне посилання:https://blog.csdn.net/yhb1047818384/article/details/70833825 |