看门狗程序是通过“喂狗”的形式不停的给watchdog写入数据,一旦在一定的时间内没有写入,watchdog就会认为程序发生了崩溃,它能够直接出发芯片复位,让linux系统进行重启。在实际的项目中具有重要的作用。
本文讲解linux中标准的看门狗程序,标准指的是设备号为/dev/watchdog,程序如下:
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22void feed_watchdog() { int wd_fd; wd_fd = open("/dev/watchdog",O_RDWR); if(wd_fd < 0) { printf("wd open failedn"); return; } int timeout = 20; ioctl(wd_fd, WDIOC_SETOPTIONS, WDIOS_ENABLECARD); ioctl(wd_fd, WDIOC_SETTIMEOUT, &timeout); while(1) { sleep(10); ioctl(wd_fd,WDIOC_KEEPALIVE,NULL); } close(wd_fd); }
ioctl(wd_fd, WDIOC_SETOPTIONS, WDIOS_ENABLECARD)是使能watchdog。
ioctl(wd_fd, WDIOC_SETTIMEOUT, &timeout),设置喂狗时间
最后
以上就是无情身影最近收集整理的关于linux简单易用的看门狗程序的全部内容,更多相关linux简单易用内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复