Glossary · Automation software engineering and architecture
Software watchdog
Also known as: Watchdog task
German: Software-Watchdog
In embedded and control software, a software watchdog is a monitoring function implemented in software that checks whether tasks or processes run and respond within expected time limits and triggers a defined reaction, such as an alarm, restart or safe state, when they do not.
- Software engineering
- Functional safety
In one sentence
A software watchdog checks in software that tasks respond within time limits and triggers a defined reaction when they do not.
Example
The supervisor process on the edge device expects a heartbeat from the data collection service every five seconds and restarts it after three missed heartbeats.
How it applies
- Engineering: Software watchdogs monitor task cycles, program flow or service heartbeats. They detect hangs and overruns but share hardware with what they monitor.
- Functional safety: For safety-related systems, an independent hardware watchdog is usually needed in addition, because a software watchdog can fail together with the processor it runs on.
- Documentation: Document which functions are monitored, the time limits, the reaction and the diagnostic message. Operators need to know what a watchdog trip means and what to do before restarting.
Software watchdog vs. hardware watchdog
A hardware watchdog is a separate timer circuit that resets or de-energizes the system if the software stops triggering it. A software watchdog is more flexible and can monitor individual tasks, but it is less independent.