我是靠谱客的博主 无情身影,这篇文章主要介绍linux简单易用的看门狗程序,现在分享给大家,希望可以做个参考。

    看门狗程序是通过“喂狗”的形式不停的给watchdog写入数据,一旦在一定的时间内没有写入,watchdog就会认为程序发生了崩溃,它能够直接出发芯片复位,让linux系统进行重启。在实际的项目中具有重要的作用。

    本文讲解linux中标准的看门狗程序,标准指的是设备号为/dev/watchdog,程序如下:

void 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简单易用内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(122)

评论列表共有 0 条评论

立即
投稿
返回
顶部