嵌入式技术william hill官网
直播中

贾熹

7年用户 1633经验值
私信 关注
[问答]

在RT-Thread中怎样使用看门狗才能让程序正常运行呢

目前如果要在 rt-thread 中使用看门狗让程序正常运行,则需要在空线程中喂狗,或者单独起一个线程喂狗。但是这个的设计是否能胜任要求稍微高一点的产品呢?看门狗是确保软件质量的关键模块,狗叫是确保软件正常运行的兜底功能,这样的功能在 rt-thread 中却不管,请问是否合理?

回帖(1)

王强

2022-9-29 11:43:59
系统看守(syswatch)组件 主要功能是保障实时操作系统正常运行,防止系统死机以及各种异常引起的线程阻塞,保障整个系统长期正常运行。系统看守具备以下几种行为模式:
1.系统崩溃或硬件异常导致系统失去调度时,执行 系统复位 恢复系统正常运行。
2.当有异常导致某些线程长时间阻塞时,可根据用户的配置实施 系统复位 / 杀掉阻塞线程 / 重启阻塞线程 的方式恢复系统正常运行。
系统看守(syswatch)组件 使用实时操作系统中允许的最高优先级作为看守线程的优先级,保障看守线程不会被阻塞,同时看守线程由看门狗提供看护,保障看守线程正常运行;系统看守通过 线程调度回调接口 监测线程的调度情况,当检测到有线程发生异常阻塞时,开始检测和确认具体哪个线程发生了异常阻塞,最后根据异常解决模式执行 系统复位 / 杀掉阻塞线程 / 重启阻塞线程 清除异常,使系统恢复正常运行。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分