O hardware de PC mais moderno inclui facilidades de timer de vigilância. Você pode ler mais sobre eles aqui na wikipedia: Watchdog Timers . Também a partir dos documentos do kernel do Linux:
trecho - https://www.kernel.org/doc/Documentation/watchdog/watchdog-api.txt
Um Watchdog Timer (WDT) é um circuito de hardware que pode redefinir o sistema do computador em caso de falha do software. Você provavelmente já sabia disso.
Normalmente, um daemon de espaço de usuário notifica o driver de watchdog do kernel através do arquivo de dispositivo especial / dev / watchdog que o espaço de usuário ainda está ativo, a intervalos regulares. Quando essa notificação ocorre, o driver normalmente diz ao watchdog de hardware que tudo está em ordem e que o watchdog deve esperar mais um pouco para redefinir o sistema. Se o espaço do usuário falhar (erro de RAM, bug do kernel, qualquer que seja), as notificações deixarão de ocorrer e o watchdog de hardware redefinirá o sistema (causando uma reinicialização) após o tempo limite.
A API de vigilância do Linux é uma construção bastante ad-hoc e diferentes drivers implementam partes diferentes e, às vezes, incompatíveis. Esse arquivo é uma tentativa de documentar o uso existente e permitir que futuros gravadores de driver o usem como referência.
Este SO Q&A intitulado, Quem está atualizando o watchdog de hardware no Linux? , abrange a ligação entre o kernel do Linux e o cronômetro do watchdog de hardware.
E o pacote watchdog?
A descrição no RPM deixa isso bem claro, IMO. O watchdog
daemon pode atuar como um watchdog de software ou pode interagir com a implementação de hardware.
trecho da descrição do RPM
O programa watchdog pode ser usado como um poderoso daemon de watchdog de software ou pode ser usado alternadamente com um dispositivo de watchdog de hardware, como a interface do driver de watchdog de hardware IPMI para um BMC (Baseboard Management Controller) residente. o watchdog grava periodicamente em / dev / watchdog; o intervalo entre gravações em / dev / watchdog é configurável através das configurações no arquivo sysconfig do watchdog.
Esse arquivo de configuração também é usado para definir o watchdog para ser usado como um watchdog de hardware em vez de sua operação padrão de watchdog de software. Nos dois casos, se o dispositivo estiver aberto, mas não for gravado dentro do período configurado, a expiração do cronômetro do watchdog acionará a reinicialização da máquina. Ao operar como um watchdog de software, a capacidade de reinicializar dependerá do estado da máquina e será interrompida.
Ao operar como um cão de guarda de hardware, a máquina experimentará uma reinicialização total (ou qualquer ação que tenha sido configurada para ser executada após a expiração do timer do cão de guarda) iniciada pelo BMC.