• Linux Watchdog Test Program


    /***********************************************************************
     *                  Linux Watchdog Test Program
     * 说明:
     *     由于之前的reset一直没有得到解决,所以这个Watchdog功能一直没有处理,
     * 现在问题解决了,于是需要加入这个测试程序。
     *
     *                                    2016-4-15 深圳 南山平山村 曾剑锋
     **********************************************************************/
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <unistd.h>
    #include <fcntl.h>
    #include <sys/ioctl.h>
    #include <linux/types.h>
    #include <linux/watchdog.h>
    
    // watchdog 只要一直打开设备节点不喂,然后等待设定的时间结束引发reset。
    int main(void)
    {
    
        int fd;
        fd = open("/dev/watchdog", O_WRONLY);
    
        if (fd == -1) {
            fprintf(stderr, "Watchdog device not enabled.
    ");
            fflush(stderr);
            exit(-1);
        }
    
        int timeout = 5;
        ioctl(fd, WDIOC_SETTIMEOUT, &timeout);
        printf("The timeout was set to %d seconds
    ", timeout);
    
        int timeleft = timeout;
        while((timeleft--) >= 0) {
            printf("The timeout left %d seconds
    ", timeleft);
            sleep(1);
        }
    }
  • 相关阅读:
    单例模式
    面向对象编程(一)
    杨辉三角形
    静态方法,Arrays类,二维数组
    数组,查找算法,二分查找法,冒泡排序,选择排序,插入排序
    万年历(二)
    循环结构
    万年历(一)
    条件结构
    类型转换,位运算符
  • 原文地址:https://www.cnblogs.com/zengjfgit/p/5396041.html
Copyright © 2020-2023  润新知