Wachhund Kurz gesagt, Watchdog ist ein Mechanismus, der den normalen Betrieb des Systems sicherstellt oder um aus einer Deadloop, Deadlock usw. auszusteigen.
Wachhunde werden in Hardware-Wachhunde und Software-Wachhunde unterteilt. Der Hardware-Wachhund verwendet eine Timer-Schaltung, der Zeitausgang ist mit dem Reset-Ende der Schaltung verbunden, und das Programm löscht den Timer innerhalb eines bestimmten Zeitbereichs (allgemein bekannt als "den Hund füttern"), sodass der Timer bei normalem Betrieb nie überlaufen kann und kein Reset-Signal erzeugt werden kann. Wenn das Programm fehlschlägt und der Watchdog nicht innerhalb des Timers zurückgesetzt wird, läuft der Watchdog-Timer über, um ein Reset-Signal zu erzeugen und das System neu zu starten. Das Prinzip des Software-Watchdogs ist dasselbe, aber der Timer auf der Hardware-Schaltung wird durch den internen Timer des Prozessors ersetzt, was das Design der Hardware-Schaltung vereinfachen kann, aber nicht so zuverlässig ist wie der Hardware-Timer, da beispielsweise ein Ausfall des internen Timers des Systems selbst nicht erkannt werden kann.
Es gibt zwei Arten von Software-Watchdogs: normale Softdogs zur Erkennung von Soft Lockups (basierend auf Clock-Interrupts) und NMI-Dogs zur Erkennung harter Lockups (basierend auf NMI-Interrupts).
Hinweis 1: Die Takt-Interrupt-Priorität ist geringer als die NMI-Interrupt Hinweis 2: Lockup bezeichnet einen bestimmten Abschnitt des Kernelcodes, der die CPU belegt. Ein Sperren kann dazu führen, dass das gesamte System nicht mehr reagiert. Soft Lockup und Hard Lockup, der einzige Unterschied zwischen ihnen ist, dass Hard Lockup auftritt, wenn der CPU-Schild unterbrochen wird. ———————————————— Urheberrechtshinweis: Dieser Artikel ist ein Originalartikel des CSDN-Bloggers "Hober_yao" gemäß der CC 4.0 BY-SA Urheberrechtsvereinbarung; bitte fügen Sie den Link zur Originalquelle und diese Erklärung zum Nachdruck bei. Originallink:https://blog.csdn.net/yhb1047818384/article/details/70833825 |