我需要确保选定的进程不会挂起。我想我应该对这个进程进行编程,使其写入某个/proc文件,该文件将由其他进程/模块定期监视。如果文件在一段时间内没有更改,则认为应用程序已挂起。就像uC里的看门狗一样。
然而,我不知道这是否是最好的方法。因为我不是很深入的Linux工程,我想在开始学习写模块,/proc文件系统,等等之前,问问哪种方法是最简单的更好!
我在Monit (https://mmonit.com/monit/)上找到了一些信息。也许这样会更好?
你建议在这里实现“看门狗”功能的最佳方式是什么?
非常感谢!
Paweł
发布于 2016-12-08 11:02:13
独立于操作系统的解决方案是创建一个定期运行的看门狗线程,并支持一个或多个软件看门狗,其简单地实现为状态位或字节。有问题的进程负责拍打看门狗(清除状态)。看门狗线程是一个检查状态的循环。如果已清除,则对其进行设置。如果未清除,则会发出警报。您可以调整计时,这样就不会在每次循环中都检查状态。
这个解决方案非常灵活。您还可以将其绑定到硬件看门狗,仅当所有软件看门狗都已被拍下时才拍下硬件看门狗。
https://stackoverflow.com/questions/41018480
复制相似问题