【发布时间】:2012-10-24 10:53:19
【问题描述】:
假设我在嵌入式环境中有一个协作调度程序。我有很多进程正在运行。我想利用看门狗定时器,以便我可以检测到进程何时因任何原因停止运行并重置处理器。
在没有 RTOS 的简单应用程序中,我总是会从主循环中接触看门狗,这总是足够的。但是,在这里,有许多进程可能会挂起。什么是定期触摸看门狗定时器同时确保每个进程都处于良好状态的干净方法?
我在想我可以为每个进程提供一个回调函数,这样它就可以让另一个监督所有进程的函数知道它还活着。回调将传递一个参数,该参数将是任务的唯一 ID,因此监督者可以确定谁在回调。
【问题讨论】:
-
我们是在考虑作为 RTOS 一部分的看门狗还是 RTOS 服务的实际硬件看门狗计时器?