Watchdog Krótko mówiąc, watchdog to mechanizm zapewniający normalne działanie systemu lub wychodząc z martwej pętli, impasu itp.
Watchdogi dzielą się na sprzętowe i programowe. Sprzętowy watchdog używa układu timera, wyjście czasowe jest podłączone do końca resetu układu, a program usuwa timer w określonym zakresie czasowym (powszechnie nazywanym "karmieniem psa"), więc gdy program działa normalnie, timer nigdy nie może go przepełnić i nie może wygenerować sygnału resetu. Jeśli program się nie powiedzie, a watchdog nie zostanie zresetowany w wyznaczonym czasie, timer watchdog przepełnia się, generując sygnał resetu i restartując system. Zasada oprogramowania watchdoga jest taka sama, ale timer na układzie sprzętowym jest zastąpiony wewnętrznym timerem procesora, co może uprościć projektowanie układu sprzętowego, ale nie jest tak niezawodne jak timer sprzętowy, na przykład nie można wykryć awarii samego wewnętrznego timera systemu.
Istnieją dwa typy programowych watchdogów: zwykłe soft dogi do wykrywania miękkich zablokowanych (oparte na przerwaniu zegara) oraz NMI do wykrywania twardych blokad (opartych na przerwaniach NMI).
Uwaga 1: Priorytet przerwania zegara jest mniejszy niż priorytet przerwania NMI Uwaga 2: Zablokowanie odnosi się do określonej sekcji kodu jądra zajmującej procesor. Zawieszanie się może spowodować, że cały system staje się nieaktywny. Miękkie i twarde zawieszanie, jedyna różnica między nimi polega na tym, że twarde zablokowanie następuje, gdy osłona CPU jest przerwana. ———————————————— Informacja o prawach autorskich: Ten artykuł jest oryginalnym artykułem autorstwa blogera CSDN "Hober_yao", zgodnie z umową o prawach autorskich CC 4.0 BY-SA, prosimy o dołączenie oryginalnego linku źródłowego oraz niniejszego oświadczenia do wznowienia. Oryginalny link:https://blog.csdn.net/yhb1047818384/article/details/70833825 |