由于是软件看门狗,因此他的角色只能算是个辅助工具。
尽管如此,他的功能应该还是有点意义。
此软件的实现计划如下:
1. 软件形式
一个模块soft_wdt.ko,运行在内核中。
2. 软件启动方法
insmod soft_wdt.ko dev=/dev/soft_wdt timeout=5 log=/path/to/log.txt
几个参数分别是:要暴露给用户的设备文件,喂狗时间间隔,日志文件路径
未来可能会支持更多的参数
3. 服务对象
一个个独立的用户态线程。
4. 使用方法
哪个线程,需要看门口服务,打开设备文件,例如/dev/soft_wdt。定时向/dev/soft_wdt写入数据即可。
线程可以写入特殊的数据,例如,设置线程的名称,设置时间间隔等。
如果任何一个线程,长时间没有喂狗,则soft_wdt.ko会记录下日志(包括可执行程序名称,线程名称,时间间隔等),然后重启系统。
5. 开发测试平台
利用手头的一块arm单板,以及相应的软件系统,包括内核源码,交叉编译工具链等。
时间: 2024-10-11 03:59:14