Watchdog (WDT) jest mechanizmem nadzoru poprawnej pracy systemu mikroprocesorowego/mikrokontrolerowego. Najczęściej ma postać sprzętowego timera, który odlicza czas do "przekroczenia limitu".
W prawidłowo działającym programie wykonywana jest cyklicznie instrukcja odświeżenia (często nazywana "karmieniem" watchdoga). Dzięki temu licznik WDT nie dojdzie do końca. Jeżeli jednak program zawiesi się, wpadnie w pętlę lub przestanie wykonywać fragment odświeżający WDT, timer dobiega do zera i następuje reakcja bezpieczeństwa: zwykle reset mikrokontrolera, a czasem przerwanie, które może uruchomić procedury ratunkowe.
Dlatego poprawna odpowiedź to: rodzaj timera nadzorującego pracę mikroprocesora — bo podkreśla funkcję czasowego nadzoru i reakcji awaryjnej.
Dlaczego pozostałe odpowiedzi są błędne?
- Licznik impulsów zewnętrznych służy do zliczania zdarzeń (np. impulsy z enkodera, czujnika, wejścia T0/T1). Nie wymusza resetu przy zawieszeniu programu.
- DMA do pamięci (bezpośredni dostęp do pamięci) to mechanizm transferu danych bez angażowania CPU, używany np. z ADC, UART, SPI. Nie jest mechanizmem nadzoru czasu wykonywania programu.
- DMA do portów I/O również dotyczy transferu danych do/z peryferiów. Watchdog nie służy do przyspieszania przesyłu danych, tylko do podniesienia niezawodności.
Wskazówka egzaminacyjna: jeśli w odpowiedzi pojawia się "nadzór" oraz konsekwencja typu reset/przerwanie po upływie czasu, to najczęściej chodzi o WDT, a nie o licznik zdarzeń czy DMA.