メインコンテンツへ
コンピュータ構成要素ウォッチドッグタイマ

ウォッチドッグタイマ(Watchdog Timer: WDT)の説明として正しいものはどれか。

ア.一定時間ごとに CPU に割り込みをかけ、プログラムのステップ実行を支援するデバッグ専用タイマ
イ.ソフトウェアが定期的にカウンタをリセット(キック)しなければタイムアウトしてシステムをリセットする、暴走検出・回復機構正解
ウ.イベント発生から応答までの時間を計測するパフォーマンス測定用タイマ
エ.リアルタイム時刻を保持し、システム停止中もバッテリでカウントを続けるカレンダ時計機能

解説

ウォッチドッグタイマは「飼い主(プログラム)が定期的に餌をやらないと吠え出す番犬(タイマ)」。プログラムが正常動作中は定期的に WDT をリセット(キック)して番犬をなだめ続ける。プログラムが暴走して餌やりを忘れると、番犬がタイムアウトしてシステムをリセット(吠え立てる)。

なぜ イ が正解か

ウォッチドッグタイマの仕組み: ①WDT はカウントダウンを開始する。②正常動作中のソフトウェアは定期的に WDT カウンタをリセット(ペットウォッチドッグ/キック)する。③プログラムが無限ループ・ハング・暴走状態に陥ると WDT のリセット処理が実行されなくなる。④WDT のカウントダウンがゼロになるとタイムアウト割り込みが発生し、システムリセットやセーフシャットダウンを実行する。組込みシステムの信頼性確保に不可欠な機構。

なぜ ア は間違いか

ステップ実行を支援するのは JTAG やデバッガのブレークポイント機能。ウォッチドッグタイマとは全く異なる用途。

なぜ ウ は間違いか

イベント応答時間の計測はプロファイラやパフォーマンスカウンタの機能。WDT は暴走検出が目的であり、応答時間測定ではない。

なぜ エ は間違いか

リアルタイム時刻を保持し、システム停止中もバッテリでカウントを続けるのは RTC(Real-Time Clock: リアルタイムクロック)の説明。WDT とは全く別のデバイスであり、混同しないよう注意。

出典: AI生成問題(学習用)