JP2002351700A - コンピュータシステム、プログラム - Google Patents

コンピュータシステム、プログラム

Info

Publication number
JP2002351700A
JP2002351700A JP2001155701A JP2001155701A JP2002351700A JP 2002351700 A JP2002351700 A JP 2002351700A JP 2001155701 A JP2001155701 A JP 2001155701A JP 2001155701 A JP2001155701 A JP 2001155701A JP 2002351700 A JP2002351700 A JP 2002351700A
Authority
JP
Japan
Prior art keywords
processing
application
program
watchdog timer
runaway monitoring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001155701A
Other languages
English (en)
Inventor
Shinichi Senoo
伸一 妹尾
Jiro Sato
二郎 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Original Assignee
Denso Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP2001155701A priority Critical patent/JP2002351700A/ja
Publication of JP2002351700A publication Critical patent/JP2002351700A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】アプリの実行状態を加味してシステム全体の暴
走監視を行うことのできるコンピュータシステムを提供
する。 【解決手段】各アプリ毎の暴走監視タイマを設け、メイ
ン処理から呼び出したそれぞれのアプリにおいてアプリ
の処理が正常に行われた場合にそのアプリ用の暴走監視
タイマをクリアする。一方アプリの処理が異常の場合に
はクリアしない。全アプリの実行終了後、システム全体
の暴走監視処理において、全アプリの暴走監視タイマが
それぞれのアプリ毎に設けた所定の設定値未満であるか
を判定し、設定値未満であれば、システムのウォッチド
ッグタイマをクリアする。一方、暴走監視タイマの値が
設定値以上のものがある場合には、ウォッチドッグタイ
マをクリアしない。したがって、システムがリセットさ
れる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】コンピュータシステム等に関
する。
【0002】
【従来の技術及び発明が解決しようとする課題】従来よ
り、コンピュータシステムにウォッチドッグタイマを備
え、所定の時間内にウォッチドッグタイマがクリアされ
ない場合にシステムが暴走状態であるとして、システム
リセット等の所定の処理を行う暴走監視システムがあ
る。
【0003】例えば、図5に示すように、所定時間毎に
メイン処理が起動され、メイン処理においてアプリ処理
(APL0〜4)を順次呼び出して、各アプリ処理によ
って所定の機能を実現するコンピュータシステムにおい
て、メイン処理における各アプリの呼び出し時点をチェ
ックポイントとして、各アプリの呼び出しが正常に行わ
れたか否かを記録しておき、すべてのアプリの呼び出し
が正常に行われた場合にのみシステム全体の暴走監視処
理においてウォッチドッグタイマをクリアするシステム
がある。このシステムではいずれか1のアプリの呼び出
しが正常に行われなかった場合には、ウォッチドッグタ
イマはクリアされず、システムがリセットされる。な
お、ウォッチドッグタイマは、図5に記載の一連の処理
を実行する時間に設定されている。
【0004】この方法では、アプリの呼び出しが正常に
行われた場合には、全体の処理が正常であると判定され
る。すなわち、アプリ内部での処理が正常に行われたか
否かは保証できず、アプリでの処理に異常があっても、
その異常を検出できない。そこで本発明は、アプリの実
行状態を加味してシステム全体の暴走監視を行うことの
できるコンピュータシステムを提供することを目的とす
る。
【0005】
【課題を解決するための手段及び発明の効果】上述した
問題点を解決するためになされた請求項1に記載のコン
ピュータシステムによれば、いずれか1のアプリケーシ
ョンプログラムの実行時に異常がある場合、そのアプリ
ケーションプログラム用の暴走監視タイマがクリアされ
ないため、ウォッチドッグタイマがクリアされない。し
たがって、その後、監視時間に達した際にウォッチドッ
グタイマはコンピュータシステムが暴走状態であると判
定する。そしてウォッチドッグタイマは、例えばコンピ
ュータシステムのリセットを行う。
【0006】すなわち、従来のように単に各アプリの呼
び出しが正常に行われたかだけでなく、各アプリの実行
内容やそれぞれのアプリ要件、処理が正常に終了したか
等の処理結果に基づいて、システム全体として正常か異
常かを判定することができる。
【0007】なお、ウォッチドッグタイマの監視時間
は、例えば全てのアプリケーションプログラム及び実行
監視プログラムの実行時間を越える程度の時間にシステ
ムの初期化時に設定することで、いずれか1のアプリケ
ーションプログラム用の暴走監視タイマが前記所定値に
達した場合に、すぐにシステムにリセットがかかるよう
にすることができる。また、例えばウォッチドッグタイ
マの監視時間を全てのアプリケーションプログラム及び
実行監視プログラムの実行時間のn倍の時間にシステム
の初期化時に設定し、アプリケーションプログラムをn
回実行した上で、いずれか1のアプリケーションプログ
ラム用の暴走監視タイマが前記所定値に達している場合
には、システムの異常としてシステムにリセットをかけ
るなどのようにすることもできる。すなわち、ウォッチ
ドッグタイマの監視時間をシステム全体としての異常と
みなすべき時間に合わせて設定することで、適切な時間
でかつ適切なアプリケーションプログラムの実行回数
(再試行回数)でシステム全体として異常があると判定
させることができる。
【0008】また、ウォッチドッグタイマ及びアプリケ
ーションプログラム毎の暴走監視タイマは、ハードウェ
アでもソフトウェアでも構成することができる。特にウ
ォッチドッグタイマはハードウェアで構成するとよい。
例えばコンピュータシステムとしてのマイコンに内蔵さ
れたハードリソースであるウォッチドッグタイマや、電
源IC等のその他の周辺装置に内蔵されたウォッチドッ
グタイマを用いるとよい。このようにすればソフトウェ
アが暴走してしまった場合等にも、確実にコンピュータ
システムのリセット(再起動)等を行うことができる。
【0009】そしてこのようなコンピュータシステムの
実行するプログラムの構成はどのような構成でも構わな
い。例えばリアルタイムOSを用い、アプリケーション
プログラムをイベントドリブンあるいはタイムスライス
で実行する場合にも適用できる。また例えば、請求項2
に示すようにアプリケーションプログラムを順次実行
し、全てのアプリケーションプログラムの実行後にシス
テム全体の暴走監視処理を行う構成についても適用する
ことができる。
【0010】さらに、請求項3に示すように、アプリケ
ーションプログラムに割込み処理プログラムを含み、そ
の割込み処理プログラムの処理結果を加味して、処理結
果が正常であるか否かを判定しそのアプリケーションプ
ログラム用の暴走監視タイマについての操作を行うよう
にするとよい。このようにすれば、アプリケーションプ
ログラム内の割込み処理の結果も加味して、システム全
体として動作が正常か否かを判定することができ、異常
の場合にはウォッチドッグタイマによってシステムの復
帰を行うことができる。
【0011】なお、請求項2及び請求項3の構成は、リ
アルタイムOSを用いない比較的単純な構成の組込シス
テム等に特に有効である。そして、請求項4に示すよう
に、請求項1〜3のいずれかに記載の処理をコンピュー
タシステムに実現させる場合、例えば、コンピュータシ
ステム側で起動するプログラムとして備えることができ
る。このようなプログラムの場合、例えば、フロッピー
(登録商標)ディスク、光磁気ディスク、CD−RO
M、ハードディスク、ROM、RAM等のコンピュータ
読み取り可能な記録媒体に記録し、必要に応じてコンピ
ュータシステムにロードして起動することにより用いる
ことができ、また、ネットワークを介してロードして起
動することにより用いることもできる。
【0012】
【発明の実施の形態】以下、本発明が適用された実施例
について図面を用いて説明する。なお、本発明の実施の
形態は、下記の実施例に何ら限定されることなく、本発
明の技術的範囲に属する限り種々の形態を採りうること
は言うまでもない。
【0013】図1は、実施例のコンピュータシステムと
してのマイコン1の構成を示すブロック図である。マイ
コン1は、演算処理部10、入出力部20、ウォッチド
ッグタイマ30を備える。演算処理部10は、CPU1
2、ROM14、RAM16を備え、CPU12はRO
M14に記憶されたプログラムを実行し、入出力部20
を制御する。
【0014】ウォッチドッグタイマ30は、CPU12
によって指定されたカウント値になるまで、時間経過に
応じてカウントを行い、CPU12によって指定された
カウント値に達した場合にはリセット信号を演算処理部
10へ出力して、演算処理部10をリセットする。RO
M14に記憶されたプログラムには、指定されたカウン
ト値に至る前にウォッチドッグタイマ30へのクリア信
号をCPU12に出力させるプログラムを含み、動作が
正常な間はこのプログラムを実行する。したがって、ウ
ォッチドッグタイマ30のカウント値は指定されたカウ
ント値に達することなくリセットはされない。しかし処
理に異常が発生しこのプログラムが実行されず、クリア
信号がウォッチドッグタイマ30へ出力されなかった場
合には、指定されたカウント値に達した時点で演算処理
部10にリセットがかかり、異常な動作状態から復帰す
ることができる。ウォッチドッグタイマの設定時間(監
視時間に相当する)は、後述するメイン処理の実行開始
からシステム全体の暴走監視処理が終了するまでの時間
より長い時間に設定している。
【0015】このようなマイコン1におけるCPU12
の処理について図2〜図4を参照して説明する。図2
は、CPU12によって5ms毎に実行され、5msよ
り短い時間で完了する処理である。5ms毎に起動され
るメイン処理は、アプリケーションプログラム(以下、
APLとも称する)を順次起動する。すなわち、APL
0を実行し、APL0の完了後に、APL1を実行し、
といった具合にAPL4まで同様に実行する。なお各A
PLは、所定の機能をマイコン1に実現させるためのプ
ログラムとして構成され、ROM14に格納されてお
り、例えば、このマイコン1が自動車のボデー系システ
ムの制御に適用されるのであれば、APL0がドアロッ
ク制御、APL1がライト制御、APL2がワイヤレス
制御、APL3がセキュリティ制御などに割り当てられ
る。
【0016】そして、各APLの中には、割込みが発生
した際に処理を行うプログラム(割込み処理プログラ
ム)を含むものがある。例えば、APL1は、割込み1
〜nまでを受け付け、各割込みに応じた処理を行うプロ
グラムを含んでいる。APL1がライト制御の機能を実
現するためのプログラムであれば、この割込み処理に
は、照度センサからの情報を読み取る割込み処理や、ユ
ーザが操作したスイッチの情報を読み取る割込み処理な
どがある。この割込み処理の結果は、RAM16に記憶
され(実行履歴の記憶)、メイン処理から呼び出された
APL1の処理の中で、このRAM16に記憶された情
報に基づいてライトの制御内容を確定してライトの点灯
または消灯を行うなどの制御をする。
【0017】各APLは、図3に示すように、メイン処
理からの呼び出しがあると、そのAPLの機能を実現さ
せるための処理(S100)を実行した後、そのAPL
の処理結果に異常があるか否かを判定する(S11
0)。S100の処理として、例えばドアロック制御の
APL内では、セキュリティ状態のロック/アンロック
を管理する状態とドアロック/アンロックの要求に対し
応答を待つ状態のパラレルで動作する2つの状態に基づ
いて制御を行う処理がある。この場合パラレルで動作す
る2つの状態を記憶しておく。そしてS110でその記
憶した状態の正常/異常を判定する。このようにAPL
の機能によって、またAPLの要求仕様に基づいて異常
であるか正常であるか判定する。なお、APLが割込み
処理プログラムを含むAPLの場合には、S110にお
いて、割込み処理の結果についても異常があるか否かを
判定する。すなわち、S110の判定は例えばS100
のAPLの通常処理中で記憶した実行履歴、及び、割込
み処理のあるAPLの場合にはその割込み処理中で記憶
した実行履歴に基づいて判定する。なお、この異常は、
決められた時間で応答がない場合(タイムアウト)や、
ハードウェアの異常検出、仕様で定義されている異常状
態の発生などを含む。
【0018】これら処理結果に異常がない場合には(S
110:YES)、S120へ移行し、異常がある場合
には(S110:NO)、APL処理を終了して、メイ
ン処理に戻る。S120では、そのAPLの暴走監視タ
イマをクリアする。このタイマは各APL毎に設けられ
たタイマ変数であり、このタイマ変数の値は、後述する
図4のS220の処理でカウントアップされている。
【0019】このように各APLの処理において、AP
L処理の処理結果が正常のときのみ各APL毎の暴走監
視タイマをクリアする。したがって、処理結果に異常が
ある場合には、そのAPLの暴走監視タイマはクリアさ
れずそのAPL処理が終了する。
【0020】そしてすべてのAPL(図2ではAPL0
〜APL4)の処理が終了すると、メイン処理はシステ
ム全体の暴走監視プログラムによるシステム全体の暴走
監視処理を呼び出す。このシステム全体の暴走監視処理
のフローを図4に示して説明する。
【0021】S210〜S250は、全APLについ
て、各アプリ毎の暴走監視タイマのカウントアップと、
各APL毎の暴走監視タイマが設定値以上か否かを判定
する暴走監視結果確認処理であり、S210では、全A
PLについて暴走監視結果確認処理を実施したか否かを
判定する。全アプリについて暴走監視結果確認処理を行
った場合(S210:YES)にはS260へ移行す
る。一方、まだ確認していないAPLがある場合には
(S210:NO)そのAPLを確認対象のAPLとし
てS220へ移行する。
【0022】S220では、確認対象のAPLの暴走監
視タイマをカウントアップする(例えば+1)。続くS
230では、そのAPLの暴走監視タイマが予め記憶さ
れた設定値以上であるか否かを判定する。設定値より小
さい場合には(S230:NO)、S240へ移行し
て、確認対象のAPLが正常であることを記憶して(S
240)、S210へ移行する。一方、設定値以上の場
合には(S240:YES)、確認対象のAPLが異常
であることを図示しない不揮発メモリに記憶して(S2
50)、S210へ移行する。なお、設定値は各APL
毎に処理異常と見なすべき時間に設定している。
【0023】そしてS260では、S250で異常と記
憶されたAPLがあるか否かを判定し、異常と記憶され
たAPLがない場合には(S260:NO)、ウォッチ
ドッグタイマ30へクリア信号を出力して、ウォッチド
ッグタイマ30のカウンタをクリアする(S270)。
一方、異常と記憶されたAPLがある場合には(S26
0:YES)、この処理を終了し、メイン処理に戻る。
【0024】このようにして、実行結果に異常のあるA
PLが存在する場合にはウォッチドッグタイマ30のカ
ウンタのクリアを行わない。したがって、ウォッチドッ
グタイマは設定時間に達し、演算処理部10がリセット
される。よって、各APLの処理に異常がある場合に、
即再起動することができる。また異常の内容は不揮発メ
モリに記憶されるのでこれを解析することで異常の発生
したAPLを知ることができる。
【0025】なお、上記実施例においてウォッチドッグ
タイマの設定時間は、メイン処理の実行開始からシステ
ム全体の暴走監視処理が終了するまでの時間より長い時
間に設定することとしたが、例えば図2の一連の処理が
1回実行される時間に設定してもよいし、数回実行され
る時間に設定してもよい。この設定時間は、例えば仕様
に従ってシステムが異常とみなすべき時間に設定すれば
よい。
【図面の簡単な説明】
【図1】実施例のコンピュータシステムの構成を示すブ
ロック図である。
【図2】実施例のコンピュータシステムで実行する処理
を説明する図である。
【図3】アプリケーション毎の暴走監視処理のフローチ
ャートである。
【図4】システム全体の暴走監視監視処理のフローチャ
ートである。
【図5】従来のコンピュータシステムにおける暴走監視
処理を説明する図である。
【符号の説明】
1…マイコン 10…演算処理部 12…CPU 14…ROM 16…RAM 20…入出力部 30…ウォッチドッグタイマ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】ウォッチドッグタイマを備え、 複数のアプリケーションプログラムと、 前記ウォッチドッグタイマの監視時間より短い間隔で実
    行され、処理に異常がない場合に前記ウォッチドックタ
    イマのクリアを行うためのシステム全体の暴走監視プロ
    グラムとを実行するコンピュータシステムにおいて、 前記アプリケーションプログラム毎の暴走監視タイマを
    備え、 前記アプリケーションプログラムにおける処理におい
    て、当該アプリケーションプログラムによる処理結果が
    正常であるか否かを判定し、正常の場合には当該アプリ
    ケーションプログラム用の暴走監視タイマのクリアを行
    い、異常がある場合には当該アプリケーションプログラ
    ム用の暴走監視タイマをクリアを行わず、 前記システム全体の暴走監視プログラムによる処理にお
    いて、全てのアプリケーションプログラム用の暴走監視
    タイマが所定値に達しない場合には、前記ウォッチドッ
    グタイマのクリアを行い、いずれか1の前記アプリケー
    ションプログラム用の暴走監視タイマが前記所定値に達
    した場合には、前記ウォッチドッグタイマのクリアを行
    わないことを特徴とするコンピュータシステム。
  2. 【請求項2】請求項1に記載のコンピュータシステムに
    おいて、 全てのアプリケーションプログラムは順次実行し、 前記システム全体の暴走監視プログラムの実行は、前記
    全てのアプリケーションプログラムの実行後に行うこと
    を特徴とするコンピュータシステム。
  3. 【請求項3】請求項1または2に記載のコンピュータシ
    ステムにおいて、 前記複数のアプリケーションプログラムのうち少なくと
    もいずれか1のアプリケーションプログラムには、割込
    み処理プログラムが含まれており、 前記アプリケーションプログラムによる処理結果が正常
    であるか否かの判定は、前記割込み処理の処理結果を加
    味して行うことを特徴とするコンピュータシステム。
  4. 【請求項4】請求項1〜3のいずれかに記載のコンピュ
    ータシステムに、当該請求項に記載の処理を実行させる
    ためのプログラム。
JP2001155701A 2001-05-24 2001-05-24 コンピュータシステム、プログラム Pending JP2002351700A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001155701A JP2002351700A (ja) 2001-05-24 2001-05-24 コンピュータシステム、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001155701A JP2002351700A (ja) 2001-05-24 2001-05-24 コンピュータシステム、プログラム

Publications (1)

Publication Number Publication Date
JP2002351700A true JP2002351700A (ja) 2002-12-06

Family

ID=18999837

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001155701A Pending JP2002351700A (ja) 2001-05-24 2001-05-24 コンピュータシステム、プログラム

Country Status (1)

Country Link
JP (1) JP2002351700A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014507034A (ja) * 2011-02-18 2014-03-20 コンティ テミック ミクロエレクトロニック ゲーエムベーハー 車両内で使用するための安全コンセプト用の半導体回路と方法
JP2016001414A (ja) * 2014-06-12 2016-01-07 株式会社日立産機システム 監視通報装置、及びそれに用いる再起動制御方法
US9436627B2 (en) 2011-08-25 2016-09-06 International Business Machines Corporation Detection of abnormal operation caused by interrupt processing
KR20190091854A (ko) * 2018-01-29 2019-08-07 주식회사 만도 프로그램 감시 장치 및 방법과 전자 제어 시스템

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014507034A (ja) * 2011-02-18 2014-03-20 コンティ テミック ミクロエレクトロニック ゲーエムベーハー 車両内で使用するための安全コンセプト用の半導体回路と方法
US9434379B2 (en) 2011-02-18 2016-09-06 Conti Temic Microelectronic Gmbh Semiconductor circuit and method in a safety concept for use in a motor vehicle
US9436627B2 (en) 2011-08-25 2016-09-06 International Business Machines Corporation Detection of abnormal operation caused by interrupt processing
JP2016001414A (ja) * 2014-06-12 2016-01-07 株式会社日立産機システム 監視通報装置、及びそれに用いる再起動制御方法
KR20190091854A (ko) * 2018-01-29 2019-08-07 주식회사 만도 프로그램 감시 장치 및 방법과 전자 제어 시스템
KR102488980B1 (ko) * 2018-01-29 2023-01-17 주식회사 에이치엘클레무브 프로그램 감시 장치 및 방법과 전자 제어 시스템

Similar Documents

Publication Publication Date Title
US6438709B2 (en) Method for recovering from computer system lockup condition
JP4903149B2 (ja) コンピュータシステム上でコンピュータプログラムを処理する方法
US20030051190A1 (en) Rendezvous of processors with os coordination
US7089450B2 (en) Apparatus and method for process recovery in an embedded processor system
US20020116670A1 (en) Failure supervising method and apparatus
US7721083B2 (en) CPU runaway determination circuit and CPU runaway determination method
JP2008513899A (ja) コンピュータシステム上でコンピュータプログラムを処理する方法
JP2002351700A (ja) コンピュータシステム、プログラム
JPH07113898B2 (ja) 障害検出方式
JP2965075B2 (ja) プログラム実行状態監視方法
EP1001341A1 (en) Method and apparatus for controlling rewrite of a flash EEPROM in a microcomputer
JP2000099372A (ja) コンピュータシステム
JP2009520290A (ja) 耐故障性があるプロセッサシステム
JP2000076081A (ja) タスクマネージャー及びプログラム記録媒体
JP2000020352A (ja) スタックオーバーフロー検出方法及びスタックアンダーフロー検出方法
JP4647276B2 (ja) 半導体回路装置
JPH064417A (ja) メモリのバッテリバックアップ制御方式
US20220129339A1 (en) Anomaly detection method, anomaly detection recording medium, anomaly detection device, rewriting method, and rewriting device
JPH05165652A (ja) タスク切替え制御方法
JPH11282725A (ja) 計算機
JPH06223047A (ja) 排他制御方式
JP2002215427A (ja) システム暴走検出方法および装置
JPH03138753A (ja) マルチプロセッサシステムのブートロード装置
CN117234848A (zh) 一种进程监控方法、装置、电子设备及可读存储介质
CN115390884A (zh) 一种程序更新执行方法、装置、设备及介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090818

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091215