組み込み環境に協調スケジューラがあるとします。多くのプロセスが実行されています。プロセスが何らかの理由で動作を停止したことを検出し、プロセッサをリセットできるように、ウォッチドッグ タイマーを利用したいと考えています。
RTOS を使用しない単純なアプリケーションでは、常にメイン ループからウォッチドッグに触れていましたが、これで十分でした。ただし、ここでは、ハングする可能性のあるプロセスが多数あります。各プロセスが正常であることを確認しながら、定期的にウォッチドッグ タイマーに触れるクリーンな方法は何ですか?
各プロセスにコールバック関数を提供して、すべてを監視する別の関数に、それがまだ生きていることを知らせることができると考えていました。コールバックは、タスクの一意の ID であるパラメーターを渡すため、監督者は誰がコールバックしているかを判断できます。