Watchdog-timer

Een watchdog-timer (WDT), of gewoon watchdog (waakhond), is een hardware- of softwarematige timer die ervoor zorgt dat een ingebed systeem correct blijft werken, zelfs als het systeem crasht. Als de software van het systeem vastloopt of onverwacht gedrag vertoont, kan de watchdog het systeem resetten om het weer in een stabiele toestand te brengen.
Een watchdog zorgt ervoor dat een systeem zich van een crash kan herstellen, zonder dat er menselijke tussenkomst nodig is. Dit is vooral belangrijk bij een ingebed systeem dat bij het vastlopen van de software in een gevaarlijke toestand kan blijven hangen. De oorzaak voor het vastlopen kan een softwarebug zijn, maar ook andere storingen zoals veroorzaakt door elektromagnetische interferentie, blikseminslag of statische elektriciteit.
Werking
De watchdog-timer wordt geactiveerd kort nadat het systeem opstart en loopt na een bepaalde tijd af. Als de software van het systeem nu goed werkt, moet het periodiek de watchdog-timer herstarten. Dit wordt gedaan door een I/O-instructie of een speciaal commando genaamd watchdog-kick. Als de software vastloopt en niet meer reageert met een watchdog-kick, loopt de timer af en genereert een resetsignaal. Dit signaal zorgt ervoor dat het systeem herstart en terugkeert naar een stabiele toestand.
De werking van een watchdog-kick lijkt op die van een dodemansknop die een machinist met tussenpozen moet indrukken om te voorkomen dat de trein automatisch stopt.
Soorten watchdogs
Er zijn verschillende soorten watchdog-timers, afhankelijk van hun implementatie en functionaliteit.[1]
Een hardwarematige watchdog-timer is meestal een externe hardware. Microcontrollers bevatten vaak een geïntegreede, on-chip watchdog-timer. Hardwarematige watchdog-timers werken onafhankelijk van de software en zijn daarom erg betrouwbaar als de software faalt.
In zijn eenvoudigste vorm is de watchdog-timer een monostabiele multivibrator die steeds opnieuw getriggerd moet worden en waarvan de aflooptijd wordt bepaald door een RC-kring. Geïntegreerde watchdog-timers werken meestal met een kloksignaal en een binaire teller, die steeds weer moet worden geladen met een bepaalde beginwaarde en, net als bij een kookwekker, terugtelt naar nul. Het aflopen van een watchdog-timer hoeft niet meteen een harde reset te veroorzaken, maar kan ook eerst leiden tot een interrupt. Na afloop kunnen ook andere besturingssystemen worden geactiveerd die beveiligingsbewerkingen uitvoeren of een systeem in hot-standby dat de taak van een defect systeem kan overnemen.
Een softwarematige watchdog-timer is een door software geïmplementeerde timer die alleen wordt gebruikt om bepaalde softwareproblemen op te lossen (bijvoorbeeld een deadlock).
- ↑ (en) Great Watchdog Timers For Embedded Systems, ganssle.com
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.