微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

watchdog Linux看门狗

程序名称:watchdog

授权协议: GPL

操作系统: Linux

开发语言: C/C++

watchdog 介绍

Linux 自带一个 watchdog 的实现,用于监视系统的运行,包括一个内核 watchdog module 和一个用户间的 watchdog 程序

内核 watchdog 模块通过 /dev/watchdog 这个字符设备与用户空间通信。用户空间程序一旦打开 /dev/watchdog
设备,就会导致在内核中启动一个 1分钟的定时器,此后,用户空间程序需要保证在
1分钟之内向这个设备写入数据,每次写操作会导致重新设定定时器。如果用户空间程序在 1分钟之内没有写操作,定时器到期会导致一次系统 reboot 操作。

用户空间程序可通过关闭 /dev/watchdog 来停止内核中的定时器。

用户间的 watchdog 守护进程:

用户空间,还有一个叫做 watchdog 的守护进程,它可以定期对系统进行检测,包括

  • Is the process table full?
  • Is there enough free memory?
  • Are some files accessible?
  • Have some files changed within a given interval?
  • Is the average work load too high?
  • Has a file table overflow occurred?
  • Is a process still running? The process is specified by a pid file.
  • Do some IP addresses answer to ping?
  • Do network interfaces receive traffic?
  • Is the temperature too high? (Temperature data not always available.)
  • Execute a user defined command to do arbitrary tests.

如果某项检测失败,则可能导致一次 soft reboot (模拟一次 shutdown 命令的执行)

它还可以通过 /dev/watchdog 来触发内核 watchdog 的运行。

watchdog 官网

http://sourceforge.net/projects/watchdog/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐