waakhond Kortom, watchdog is een mechanisme om de normale werking van het systeem te waarborgen of om uit een deadloop, deadlock, enzovoort te komen.
Waakhonden zijn onderverdeeld in hardware-waakhonden en software-waakhonden. De hardware-watchdog gebruikt een timercircuit, de timinguitgang is aangesloten op het reset-uiteinde van het circuit, en het programma veegt de timer binnen een bepaalde tijdsperiode (algemeen bekend als "de hond voeren"), zodat wanneer het programma normaal werkt, de timer nooit kan overlopen en geen resetsignaal kan genereren. Als het programma faalt en de watchdog niet binnen de timerperiode wordt gereset, loopt de watchdog-timer over om een resetsignaal te genereren en het systeem opnieuw te starten. Het principe van de software-watchdog is hetzelfde, maar de timer op het hardwarecircuit wordt vervangen door de interne timer van de processor, wat het hardwarecircuitontwerp kan vereenvoudigen, maar het is minder betrouwbaar dan de hardwaretimer, bijvoorbeeld omdat het falen van de interne timer van het systeem zelf niet kan worden gedetecteerd.
Er zijn twee soorten software-watchdogs: normale soft dogs voor het detecteren van soft lockups (gebaseerd op klokonderbrekingen), en NMI-honden voor het detecteren van harde lockups (gebaseerd op NMI-interrupts).
Noot 1: De klokonderbrekingsprioriteit is lager dan de NMI-onderbreking Opmerking 2: Lockup verwijst naar een bepaald gedeelte van kernelcode dat de CPU bezet. Vastlopen kan ervoor zorgen dat het hele systeem niet meer reageert. Soft lockup en hard lockup, het enige verschil tussen hen is dat hard lockup optreedt wanneer het CPU-schild wordt onderbroken. ———————————————— Copyright: Dit artikel is een origineel artikel van CSDN-blogger "Hober_yao", in overeenstemming met de CC 4.0 BY-SA auteursrechtovereenkomst; voeg de originele bronlink en deze verklaring voor herdruk toe. Originele link:https://blog.csdn.net/yhb1047818384/article/details/70833825 |