我正在为Beaglebone黑色SBC开发定制的看门狗驱动程序。 BBB连接了一个外部实体。如果它在一定时间内没有收到来自BBB的GPIO状态更改,它将重置板,可以通过I2C对其进行设置。到目前为止,据我了解,从linux软件的角度来看,应该写入/dev/watchdog
设备以刷新看门狗外设,这很清楚。看门狗恶魔可以完成这样的事情:https://www.systutorials.com/docs/linux/man/8-watchdog/
这里的问题是,刷新间隔似乎被硬编码为60秒。对于我的应用程序,间隔要短得多(通常约为5秒),并且可以设置(从1到10秒)。在这种情况下,我想我将无法使用看门狗守护进程作为自定义wdg驱动程序。
有没有解决的办法?还是我对这种情况的看法甚至不正确?
答案 0 :(得分:1)
通常,如果您想使用内核看门狗框架,则可以简单地编写一些C代码,用自己的“看门狗频率”来修饰/ dev / watchdog文件。如果您有自己的理由,则没有理由使用看门狗守护程序。
并且,内核看门狗框架已挂接到真正的硬件看门狗中,该硬件看门狗能够检测锁定,并根据到期情况生成事件,并且如果您的硬件看门狗“超时”或“到期”间隔可以调整,则可以更改时间而且您可以让60秒不开火。
通常,没有人会处理busybox或其他linux pkg提供的看门狗进程。他们最有可能按原样使用它。另外,据我所知,间隔为1秒。