看门狗的单一进程[Linux]

时间:2016-12-07 13:14:05

标签: linux embedded embedded-linux proc watchdog

我需要确保所选择的流程不被绞死。我以为我会编写这个进程来编写一些/ proc文件,这些文件将由其他一些进程/模块定期监视。如果文件在一段时间内没有变化,则应用程序将被视为挂起。就像在uC看来一样。

但我不知道这是不是最好的方法。由于我不太喜欢深入的Linux工程,我认为在开始学习编写模块,/ proc文件系统等之前,最好先问哪个方法最简单。哈!

我在Monit(https://mmonit.com/monit/)上找到了一些信息。也许这会更好?

您认为在这里实施“看门狗”功能的最佳方式是什么?

非常感谢!

帕维尔

1 个答案:

答案 0 :(得分:1)

独立于操作系统的解决方案是创建一个定期运行的监视程序线程,并支持一个或多个软件监视程序,这些监视程序简单地实现为状态位或字节。有问题的过程负责轻拍看门狗(清除状态)。看门狗线程是一个检查状态的循环。如果它已被清除,则设置它。如果尚未清除,则会发出警报。您可以调整时间,以便每次循环都不会检查状态。

此解决方案非常灵活。您也可以将它绑定到硬件看门狗,只有在拍完所有软件看门狗时才拍拍hw看门狗。