板子 BIOS 里面有 WatchDog 的相关功能,但不知道怎么用

2022-01-29 16:50:58 +08:00
 LxnChan

我有块 J1900 的板子,bios 应该是 ami 的公版 bios 。里面有个 watchdog 的功能选项,可以设置 Interval 等参数。

但是很遗憾的是我并不知道怎么用,之前试着开过一次,当时设置的 Interval 是 5s ,但是 5s 根本还没进到系统,咋可能喂的上狗,就反反复复来回重启后来抠电池重置 bios 好了。

板子是朋友送的,资料板号等等一概没有,按照当前情况来看应该是硬件狗。系统目前是 Ubuntu Desktop ,我大概查了一下资料,硬件狗好像需要装驱动,还要让/dev/下的一个文件指向这个设备。

如果有知道这东西怎么用或者大概怎么用的或有相关资料(不一定非得是特定型号的)的大家来讨论一下。

3743 次点击
所在节点    Linux
8 条回复
Sekai
2022-01-29 17:09:51 +08:00
看门狗 没啥可讨论的 关掉就完了
LxnChan
2022-01-29 17:12:18 +08:00
@Sekai 我是想用这个东西但是不知道怎么开
Lnz
2022-01-29 17:45:58 +08:00
不知道你的板子用的 SIO 是不是 ITE 的,如果是 ITE 的,你只需要把时间设长一点,进到系统后往 SIO 的 LDN7 的 73 、74 写时间就可以了,如果 setup 页面没有开出来时间单位,就调整 72 的 bit7 ,记得把 bit5 置零
Harv
2022-01-29 18:53:38 +08:00
像楼上说的,照着板子上的 superio 芯片型号去找下 datasheet 。找下看门狗地址和看下怎么喂狗。
villivateur
2022-01-29 19:16:55 +08:00
你是怎么确定 5s 没进系统的?理论上在 BIOS 里面就会开始喂狗,Linux 内核起来之后也会喂狗,不需要等系统完全起来
villivateur
2022-01-29 19:17:33 +08:00
当然,喂狗的功能可能需要你打一个内核补丁
adoal
2022-01-29 19:25:38 +08:00
Linux 内核有 watchdog API ,可以 ioctl 统一操作,前提是有驱动
如果主板是 ITE 的 superio ,那大概是 it87_wdt
yanqiyu
2022-01-29 19:25:51 +08:00
先运行 wdctl 看看有没有输出,有的话说明内核已经识别到了 WatchDog 了
要用看门狗就一个 userspace 的程序就行,可以是 watchdogd ,也可以是 systemd
systemd 最简单(要是你的 linux 发行版支持的话)
写一个 /etc/systemd/system.conf.d/watchdog.conf 内容是
[Manager]
RuntimeWatchdogSec=10s
就是设置一个 10s 的硬件 WatchDog ,systemd 会 5s 喂一次(设置时间的一半)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/831302

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX