perro guardián En resumen, watchdog es un mecanismo para asegurar el funcionamiento normal del sistema o para salir de un bucle muerto, un bloqueo, etc.
Los vigilantes se dividen en vigilantes de hardware y vigilantes de software. El watchdog de hardware utiliza un circuito temporizador, la salida de temporización se conecta al extremo de reinicio del circuito, y el programa borra el temporizador dentro de un cierto rango de tiempo (comúnmente conocido como "alimentar al perro"), por lo que cuando el programa funciona normalmente, el temporizador nunca puede desbordarse, por lo que no puede generar una señal de reinicio. Si el programa falla y el watchdog no se reinicia dentro del periodo del temporizador, el watchdog se desborda para generar una señal de reinicio y reiniciar el sistema. El principio del watchdog de software es el mismo, pero el temporizador del circuito de hardware se sustituye por el temporizador interno del procesador, que puede simplificar el diseño del circuito de hardware, aunque no es tan fiable como el temporizador de hardware, por ejemplo que no se puede detectar la falla del propio temporizador interno del sistema.
Existen dos tipos de watchdogs de software: los soft dogs normales para detectar bloqueos suaves (basados en interrupciones de reloj) y los NMI dogs para detectar bloqueos duros (basados en interrupciones NMI).
Nota 1: La prioridad de interrupción de reloj es menor que la interrupción NMI Nota 2: El bloqueo se refiere a una determinada sección del código del núcleo que ocupa la CPU. El bloqueo puede hacer que todo el sistema deje de responder. Bloqueo suave y bloqueo duro, la única diferencia entre ellos es que el bloqueo duro ocurre cuando se interrumpe el blindaje de la CPU. ———————————————— Aviso de derechos de autor: Este artículo es un artículo original del bloguero CSDN "Hober_yao", de acuerdo con el acuerdo de derechos de autor CC 4.0 BY-SA, por favor adjunte el enlace original de la fuente y esta declaración para su reimpresión. Enlace original:https://blog.csdn.net/yhb1047818384/article/details/70833825 |