Linux之watchdog
  gcIluVlGdpHJ 2023年11月15日 32 0


使用

都是通过/dev/watchdog设备节点来操作使用
通过命令

# 写入除大写字母‘V’外的任意字符,开启看门狗,每 44 秒内需要写入一次(喂狗)
echo A > /dev/watchdog
# 开启看门狗,并且内核会每隔 22 秒自动喂一次狗
echo V > /dev/watchdog

通过应用程序

示例如下:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>

int main(void)
{
    /*通过open来启动watchdog*/
    int fd = open("/dev/watchdog", O_WRONLY);

    int ret = 0;
    if (fd == -1) {
        perror("watchdog");
        exit(EXIT_FAILURE);
    }
    while (1) {
        /*通过write来喂狗  等同于 ioctl(fd, WDIOC_KEEPALIVE, 0);*/
        ret = write(fd, "\0", 1);
    
        if (ret != 1) {
            ret = -1;
            break;
        }
        sleep(10);
    }

    close(fd);
    return ret;
}

....

作者: Shell

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: nRF52832调试相关记录 下一篇: swap相关概念
  1. 分享:
最后一次编辑于 2023年11月15日 0

暂无评论

推荐阅读
gcIluVlGdpHJ