openwrt开启看门狗
时间: 2023-09-12 14:11:52 浏览: 214
在OpenWRT中,开启看门狗功能可以通过编译生成watchdog的应用程序。你可以使用命令"watchdog -t 10 -T 4 -F /dev/watchdog"来执行喂狗的操作。然而,如果你使用了内核软件watchdog,运行此命令可能会提示资源繁忙,因为watchdogd线程使用了/dev/watchdog。如果你想自己单独使用应用程序执行喂狗操作,需要改写驱动,只注册字符设备驱动,而不生成watchdog线程。
在OpenWRT启动流程中,看门狗的初始化是在initd/init.c中进行的。在main函数中,首先调用watchdog_init(1)来初始化看门狗。然后fork一个子进程,子进程执行"/sbin/kmodloader"命令来启动内核模块加载器。父进程会等待子进程结束或超过1200个循环(每次循环间隔10毫秒),期间会通过watchdog_ping()函数来喂狗。
总结起来,要在OpenWRT中开启看门狗功能,你需要编译生成watchdog应用程序,并使用相应的命令来执行喂狗操作。在启动过程中,看门狗的初始化是在initd/init.c中进行的,通过watchdog_init()函数来初始化,并通过watchdog_ping()函数来定时喂狗。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [OpenWRT 启动流程(一) /sbin/init 进程分析](https://blog.csdn.net/agave7/article/details/86686145)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* [openwrt-看门狗watchdog](https://blog.csdn.net/weixin_39035140/article/details/128544904)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文