JP2007079839A - 電子機器、監視装置、監視方法およびコンピュータプログラム - Google Patents
電子機器、監視装置、監視方法およびコンピュータプログラム Download PDFInfo
- Publication number
- JP2007079839A JP2007079839A JP2005265806A JP2005265806A JP2007079839A JP 2007079839 A JP2007079839 A JP 2007079839A JP 2005265806 A JP2005265806 A JP 2005265806A JP 2005265806 A JP2005265806 A JP 2005265806A JP 2007079839 A JP2007079839 A JP 2007079839A
- Authority
- JP
- Japan
- Prior art keywords
- limit value
- value
- stack pointer
- stack
- lower limit
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】 中央処理装置(CPU)が暴走したときに、機器の異常状態を検出し、機器に対する致命的な影響を抑える電子機器を提供する。
【解決手段】 CPU11内に、スタック領域103のアドレスの上限値と下限値とを予め記憶しておく。ループ処理内の適当なタイミングで、スタックポインタ102のその時点での値が上限値と下限値との間に位置しているか否かを判別し、位置していなければ、異常であると判別する。
【選択図】図1
【解決手段】 CPU11内に、スタック領域103のアドレスの上限値と下限値とを予め記憶しておく。ループ処理内の適当なタイミングで、スタックポインタ102のその時点での値が上限値と下限値との間に位置しているか否かを判別し、位置していなければ、異常であると判別する。
【選択図】図1
Description
本発明は、中央処理装置(CPU;Central Processing Unit)が正常に動作しているか否かを判別することができる電子機器、監視装置、監視方法およびコンピュータプログラムに関する。
静電気、電気ノイズ、熱などの原因で、電子機器に組み込まれたCPUが暴走することがあることが知られている。CPUが暴走状態で処理を続けると、電子機器の設定状態が破壊されたり、過電流が流れることで機器が壊れたりするなどの致命的な状態が発生することがある。
そこで、ウォッチドッグタイマを用意し、ウォッチドッグタイマがCPUの暴走を検出するとCPUをリセットする動作を行うことで、CPUが暴走している状態を中止させる技術が知られている(たとえば、特許文献1参照)。
平05−002654公報
そこで、ウォッチドッグタイマを用意し、ウォッチドッグタイマがCPUの暴走を検出するとCPUをリセットする動作を行うことで、CPUが暴走している状態を中止させる技術が知られている(たとえば、特許文献1参照)。
ウォッチドッグタイマがCPUの暴走状態を検知して、CPUをリセットするまでに、通常は、数十ミリ秒〜数百ミリ秒かかる。この間に、電子機器の設定状態が破壊されたり、過電流が流れることで電子機器が壊れたりすることなどの致命的な状態が発生することがある。
本発明は、上記問題に鑑みてなされたもので、機器の異常を短時間で検出することを可能とすることを目的とする。
上記課題を解決するため、本発明の第1の観点に係る電子機器は、
ループした処理を実行する中央処理装置を有する処理装置であって、
前記中央処理装置は、
スタック及びスタックポインタを備え、当該スタック及び当該スタックポインタを用いてループした処理を実行し、
さらに、
前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する第1の異常判別手段と、
を備える、ことを特徴とする。
ループした処理を実行する中央処理装置を有する処理装置であって、
前記中央処理装置は、
スタック及びスタックポインタを備え、当該スタック及び当該スタックポインタを用いてループした処理を実行し、
さらに、
前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する第1の異常判別手段と、
を備える、ことを特徴とする。
前記中央処理装置は、
前記ループした処理の所定の位置における前記スタックポインタの基準値を記憶する記憶手段と、
前記ループした処理の実行中に前記所定の位置において前記スタックポインタの値を取得し、当該スタックポインタの値が前記記憶手段に記憶した前記基準値と異なることを検出すると、前記中央処理装置が異常動作をしていることを判別する第2の異常判別手段と、
を備えるようにしてもよい。
前記ループした処理の所定の位置における前記スタックポインタの基準値を記憶する記憶手段と、
前記ループした処理の実行中に前記所定の位置において前記スタックポインタの値を取得し、当該スタックポインタの値が前記記憶手段に記憶した前記基準値と異なることを検出すると、前記中央処理装置が異常動作をしていることを判別する第2の異常判別手段と、
を備えるようにしてもよい。
前記第1の異常判別手段は、定期的に、前記スタックポインタの値が前記上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別するようにしてもよい。
前記第1の異常判別手段及び前記第2の異常判別手段の少なくとも一の手段が、前記中央処理装置が異常動作をしていることを判別すると、所定のエラー信号の発生及び前記中央処理装置のリセットの少なくとも一の動作を実行するようにしてもよい。
また、この発明の第2の観点に係る監視装置は、
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視装置であって、
前記中央処理装置の前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記中央処理装置の前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する異常判別手段と、
を備える、ことを特徴とする。
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視装置であって、
前記中央処理装置の前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記中央処理装置の前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する異常判別手段と、
を備える、ことを特徴とする。
また、この発明の第3の観点に係る監視方法は、
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視方法であって、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
ことを特徴とする。
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視方法であって、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
ことを特徴とする。
また、この発明の第4の観点に係るコンピュータプログラムは、
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置に、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
処理を実行させることを特徴とする。
スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置に、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
処理を実行させることを特徴とする。
本発明によれば、スタックポインタの値が本来取るはずのない値にあることを検出すると、中央処理装置の異常を判別する。従って、電子機器の異常を短時間で迅速に検出することができる。
本発明の実施形態に係る電子機器1について、図1を参照して説明する。
図1に示すように、電子機器1は、制御部2と制御部2の制御に従って動作することにより全体として所期の機能を実現する被制御部3とから構成される。被制御部3の構成及び機能は任意である。
制御部2は、CPU(中央処理装置;Central Processing Unit)11、ROM12、RAM13、I/O装置14、タイマ15、バス16、等を備える。
CPU11は、ROM12に格納されている動作プログラムを実行し、様々な制御処理を行うと共に自己チェックを行う。CPU11の動作の詳細については後述する。
ROM12は、CPU11の動作を制御するための動作プログラム及び固定データを記憶する。動作プログラムは、この電子機器の所期の機能を実現するためのプログラムと、CPU11の動作を監視し、異常動作を検出するプログラムを含む。プログラムの詳細については、後述する。また、ROM12には、図2を参照して後述するように、スタック領域103のアドレスの最大値と最小値とが格納されている。
RAM13は、CPU11のワークエリア等として機能する。
I/O装置14は、CPU11と被制御部3との間で情報の交換を可能とする。
I/O装置14は、CPU11と被制御部3との間で情報の交換を可能とする。
タイマ15は、動作クロックをはじめとする種々のクロック信号をCPU11に供給する。また、タイマ15は、予め設定されている種々の周期でタイマ割込信号をCPU11に出力する。CPU11は、タイマ15からのタイマ割込信号に応答して、対応する割込処理を実行する。
バス16は、各部を接続し、データ通信を可能とする。
バス16は、各部を接続し、データ通信を可能とする。
制御部2の主要部を構成するCPU11は、処理部101と、スタックポインタ102と、スタック領域103と、ウォッチドッグタイマ104を備える。
処理部101は、スタックポインタ102,スタック領域103,等を用いて、RAM13を主メモリ及びワークエリアとして、ROM12に記憶されている動作プログラムに従った動作を実行することにより、この電子機器1全体の所期の機能を実現すると共に自己監視機能を実現する。
スタック領域103は、通常知られているように、処理部101がプログラムを実行する際などに利用するFirst In Last Out(FILO)型の記憶領域又は記憶素子である。
スタックポインタ102は、スタック領域103のどの記憶エリアをアクセスするかを指示するポインタである。スタックポインタ102の指定するアドレス値(記憶値)は、スタック領域103の先頭(一番浅い)記憶エリアのアドレス値(下限値)と、最終(一番深い)記憶エリアのアドレス値(上限値)との間の値をとる。従って、スタックポインタ102の指示するアドレス値が上限値と下限値との間の範囲に無い場合は、スタックポインタ102又はスタック領域103が壊れており、CPU11、制御部2,さらに、電子機器1に何らかの問題が生じている可能性が高いことを意味する。ROM12には、図2に示すように、スタック領域103のアドレスの上限値と下限値とが格納されている。
ウォッチドッグタイマ104は、カウンタから構成され、タイマ15からのクロック信号が供給され、このクロックをカウントし続け、カウント値が所定値に達すると、処理部101に対し内部割込を発生し、異常を通知する。通常動作状態では、処理部101が周期的にウォッチドッグタイマ104をリフレッシュ(リセット)し、そのカウンタ値が所定値に達することはない。しかし、処理部101の動作に異常が発生し、ウォッチドッグタイマ104をリフレッシュできなくなると、カウント値が所定値に達し、処理部101に内部割込が発生する。処理部101はこの内部割込に応答して、所定の異常対応処理を実行する。
次に、上記構成を有する電子機器1の動作を、CPU11の動作を中心に説明する。
電子機器1の電源が投入されると、CPU11にも電力が供給され、CPU11は、ROM12に格納されている動作プログラムに従って図3のフローチャートに示す動作(メイン動作)を開始する。
電子機器1の電源が投入されると、CPU11にも電力が供給され、CPU11は、ROM12に格納されている動作プログラムに従って図3のフローチャートに示す動作(メイン動作)を開始する。
まず、CPU11(より詳細には、処理部101)は、初期化処理を行い、スタックポインタ102やスタック領域103を含む各部を初期化する(ステップS11)。
処理部101は、初期化処理を完了すると、スタックポインタ102の記憶値をRAM13に基準値として記憶する(ステップS12)。
続いて、処理部101は、ループ処理の実行状態に入り、まず、ウォッチドッグタイマ104をリフレッシュする(ステップS13)。
続いて、処理部101は、スタックポインタ102の内容(記憶しているアドレス値)を読み出し(ステップS14)、今回読み出した値がステップS12で記憶した基準値と一致するか否かを判別する(ステップS15)。ループ処理の開始点でのスタックポインタ102の値は、正常に動作している限りは、毎回一致するはずである。そこで、一致していなければ(ステップS15;No)、何らかの問題が発生しているものとして、異常対応処理を実行する(ステップS16)。
この異常対応処理において、処理部101は、例えば、I/O装置14を介して被制御部3に異常検出信号を送信し、異常を報知するための警報をユーザに発生させる。或いは、CPU11自身をリセットして初期化する。
一方、ステップS15で、スタックポインタ102の今回の値が基準値に一致すると判別されれば(ステップS15;Yes)、電子機器1の所期の機能を実現するための処理1〜処理Nの処理(ステップS17〜S19)を実行する。
処理1〜処理N(ステップS17〜S19)は、それぞれ、電子機器1に要求される様々な機能を実現するための処理であり、各処理はサブルーチン化されている。
図4に示すように、CPU11は、各サブルーチンを開始すると、まず、スタックポインタ102の値を読み出し(ステップS21)、これが、ROM12に格納されている上限値と下限値との間にあるか否かを判別する(ステップS22)。
スタックポインタ102の指示する位置が、スタック領域103のアドレスの上限値と下限値との間の範囲に無い場合(ステップS22;No)、スタックポインタ102がスタック領域103以外のエリアを指定しており、何らかの異常が発生している。そこで、処理部101は、異常対応処理を行う(ステップS23)。この異常処理の内容は、図3のステップS16の処理と同様でよく、例えば、例えば、異常検出信号を出力して被制御部3から警報を発したり、CPU11をリセットしたりする、等の処理を行う。
一方、ステップS22で、スタックポインタ102の値がROM12に格納されている上限値と下限値との間の範囲(正常)であると判断された場合には(ステップS22;Yes)、そのサブルーチンで行いたい本来の処理を実行する(ステップS24)。
処理1〜Nの処理を実行して、電子機器1の機能を実現すると、処理はステップS13にリターンする。即ち、ループ処理の先頭に戻り、上述した処理を繰り返す。
このようにして、CPU11は、電子機器1の所期の機能を実現するための処理1〜N(ステップS17〜S19)だけでなく、ウォッチドッグタイマ104による異常監視とスタックポインタ102の値に基づく異常監視とを二重に行う。従って、異常監視の信頼性が高い。
しかも、スタックポインタ102の値に基づく異常監視として、i)ループ処理の所定位置において、毎ループでのスタックポインタ102の値が一致するか否かの監視処理(ステップS15)と、ii)全てのサブルーチンの先頭で実行され、スタックポインタ102の値がROM12に格納されている上限値と下限値との間の範囲にあるか否か(スタック領域103を指示しているか否か)の監視処理(ステップS22)と、を二重に実行する。スタックポインタ102の異常に基づく異常の検出は、1ループ処理内で複数回検出が可能であり、異常の検出までに数ループ分の処理が必要なウォッチドッグタイマ104による異常検出に比較して、短時間で迅速に異常を検出することができる。
図3及び図4に示す処理では、スタックポインタ102の値が、ROM12に格納されている上限値と下限値との間の範囲に無いという異常検出を各サブルーチンの先頭部分で実行したが、この異常検出処理を実行するタイミングは任意である。例えば、定期的な割込処理でチェックを行ってもよい。
この割込処理は、例えば、タイマ15から短い周期、例えば1ミリ秒周期で供給される割込信号に応答して実行される。この割込処理において、処理部101は、まず、その時点でのスタックポインタ102の値を読み(図5、ステップS31)、その値がROM12に格納されている上限値と下限値との間の範囲にあるか否かを判別する(ステップS32)。
スタックポインタ102の指示する位置が、スタック領域103のアドレスの下限値未満或いは上限値を超える場合、すなわちROM12に格納されている上限値と下限値との間の範囲に無い場合(ステップS32;No)、処理部101は、異常対応処理を行う(ステップS33)。この異常処理の内容は、図4のステップS23の処理と同様でよい。例えば、I/O装置14を介して、異常検出信号を出力したり、CPU11をリセットしたりする、等の処理を行う。
一方、ステップS32で、スタックポインタ102の値が正常であると判断された場合、すなわちスタックポインタ102の値がROM12に格納されている上限値と下限値との間の範囲にある場合には(ステップS32;Yes)、今回の割込処理を終了する。
このような構成とすれば、異常を検出したい任意の周期に割込周期を設定して、迅速にCPU11の異常を検出することができる。
また、通常のタイマ割込処理内でスタックポインタ102の指示値に基づく監視処理を行ってもよい。図6に示す例では、タイマ15からの割込信号に応答して、タイマ割込処理を開始すると、まず、スタックポインタ102の指示値が正常か否かの判別、すなわちスタックポインタ102の指示値がROM12に格納されている上限値と下限値との間の範囲にあるか否かの判別を行う(ステップS31,32)。スタックポインタ102の指示値が正常である、すなわちスタックポインタ102の指示値がROM12に格納されている上限値と下限値との範囲にあると判別されれば(ステップS32;Yes)、割込処理で本来行いたい処理を実行する(ステップS41)。一方、スタックポインタ102の指示値が異常である、すなわちスタックポインタ102の指示値がROM12に格納されている上限値と下限値との間の範囲に無いと判別されれば(ステップS32;No)、ステップS33と同様の異常対応処理を行う。なお、割込周期は、その割込処理が本来予定している処理(ステップS41)の必要に応じてタイマ15に適宜設定される。
上記実施の形態においては、自己監視機能を備える電子機器1を例にこの発明を説明したが、他の電子機器の動作を監視する監視装置にもこの発明を適用可能である。
例えば、図7に示すように、CPU21を備え、CPU21の制御で動作している監視対象電子機器6の異常を検出するための監視装置5にこの発明を適用することが可能である。
図7に示すように、監視装置5は、監視対象電子機器6が内蔵するCPU21のスタック領域203のアドレスの上限値と下限値とを予め記憶し、スタックポインタ202の内容(値)を適当なタイミングで読み出し、予め記憶している上限値と下限値との間にあるか否かを判別し、上限値と下限値との間になければ、異常状態であると判別する。
このような構成とすれば、他の電子機器の異常動作を監視する監視装置にも、本願発明を適用可能である。
なお、本発明は、上述の実施形態に限らず、種々の態様をとることができる。
例えば、ウォッチドッグタイマ104のリセット動作を行うタイミングは任意であり、1つのループ処理内で複数回リセットするようにしてもよい。
例えば、ウォッチドッグタイマ104のリセット動作を行うタイミングは任意であり、1つのループ処理内で複数回リセットするようにしてもよい。
また、スタックポインタ102の値がROM12に格納されている上限値と下限値との間の範囲にあるか否かの判別をループ処理の先頭部分(ステップS14、S15)で実行したが、ループ処理内でスタックポインタ102の値が毎回同じ値になる部分が存在するならば、その部分で適宜実行すればよい。また、1ループ処理内で、複数回、それぞれ、今回のループ処理でのスタックポインタ102の値と前回のループ処理での対応する値とが一致するか否かを判別するようにしてもよい。
上記実施の形態では、スタックポインタ102の上限値及び下限値として、スタック領域103の全記憶領域のアドレスの上限値と下限値を用いた。この発明は、これに限定されない。例えば、スタック領域103のうちで、正常な動作状態で最大限使用される可能性がある記憶領域の上限値と下限値を予めプログラムを実行・シミュレートすること等により求め、求めた値或いは、それらに基づいて一定の余裕度を持って決定された所定の値を監視用の上限値と下限値として用いてもよい。
また、上述の動作を実行するためのプログラム(割込プログラム等)を、コンピュータが読みとり可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納して配布し、当該プログラムをコンピュータにインストールすることにより、上述の処理を実行する電子機器等を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有するストレージに当該プログラムを格納しておき、通常のコンピュータシステムがダウンロード等することで電子機器等を構成してもよい。
また、上述の機能を、オペレーティングシステム(OS;Operating System)とアプリケーションの分担、またはOSとアプリケーションとの協働により実現する場合などには、アプリケーション部分のみを記録媒体やストレージに格納してもよい。
1 自己監視機能を備える電子機器
2 制御部
3 被制御部
5 監視装置
6 監視対象電子機器
11 CPU
12 ROM
13 RAM
14 I/O装置
15 タイマ
16 バス
21 CPU
101 処理部
102 スタックポインタ
103 スタック領域
104 ウォッチドッグタイマ
202 スタックポインタ
203 スタック領域
2 制御部
3 被制御部
5 監視装置
6 監視対象電子機器
11 CPU
12 ROM
13 RAM
14 I/O装置
15 タイマ
16 バス
21 CPU
101 処理部
102 スタックポインタ
103 スタック領域
104 ウォッチドッグタイマ
202 スタックポインタ
203 スタック領域
Claims (7)
- ループした処理を実行する中央処理装置を有する処理装置であって、
前記中央処理装置が、
スタック及びスタックポインタを備え、当該スタック及び当該スタックポインタを用いてループした処理を実行し、
さらに、
前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する第1の異常判別手段と、
を備える、ことを特徴とする電子機器。 - 前記中央処理装置が、
前記ループした処理の所定の位置における前記スタックポインタの基準値を記憶する記憶手段と、
前記ループした処理の実行中に前記所定の位置において前記スタックポインタの値を取得し、当該スタックポインタの値が前記記憶手段に記憶した前記基準値と異なることを検出すると、前記中央処理装置が異常動作をしていることを判別する第2の異常判別手段と、
を備える、ことを特徴とする請求項1に記載の電子機器。 - 前記第1の異常判別手段が、定期的に、前記スタックポインタの値が前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別する、ことを特徴とする請求項1又は2に記載の電子機器。
- 前記第1の異常判別手段及び前記第2の異常判別手段の少なくとも一の手段が、前記中央処理装置が異常動作をしていることを判別すると、所定のエラー信号の発生及び前記中央処理装置のリセットの少なくとも一の動作を実行する、ことを特徴とする請求項1乃至3のいずれか1項に記載の電子機器。
- スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視装置であって、
前記中央処理装置の前記スタックのアドレスの上限値と下限値とを記憶するアドレス上・下限値記憶手段と、
所定のタイミングにおける前記中央処理装置の前記スタックポインタの値が、前記アドレス上・下限値記憶手段に記憶されている前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記スタックポインタの値が前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていることを判別する異常判別手段と、
を備える、ことを特徴とする監視装置。 - スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置を有する機器の動作を監視する監視方法であって、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
ことを特徴とする監視方法。 - スタック及びスタックポインタを備え当該スタック及び当該スタックポインタを用いてループした処理を実行する中央処理装置に、
前記スタックのアドレスの上限値と下限値とを記憶し、
前記処理を実行中の前記スタックポインタの値を取得し、
取得した前記スタックポインタの値が、前記上限値と前記下限値との間の範囲にあるか否かを判別し、前記上限値と前記下限値との間の範囲に無いときに、前記中央処理装置が異常動作をしていると判別する、
処理を実行させるコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005265806A JP2007079839A (ja) | 2005-09-13 | 2005-09-13 | 電子機器、監視装置、監視方法およびコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005265806A JP2007079839A (ja) | 2005-09-13 | 2005-09-13 | 電子機器、監視装置、監視方法およびコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007079839A true JP2007079839A (ja) | 2007-03-29 |
Family
ID=37940093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005265806A Pending JP2007079839A (ja) | 2005-09-13 | 2005-09-13 | 電子機器、監視装置、監視方法およびコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007079839A (ja) |
-
2005
- 2005-09-13 JP JP2005265806A patent/JP2007079839A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109783262B (zh) | 故障数据处理方法、装置、服务器及计算机可读存储介质 | |
KR101673303B1 (ko) | 와치독 제어 방법 및 장치 | |
CN107003915B (zh) | 驱动控制装置 | |
TWI261748B (en) | Policy-based response to system errors occurring during OS runtime | |
US20120265471A1 (en) | Method for reliably operating a sensor | |
JP2010086364A (ja) | 情報処理装置、動作状態監視装置および方法 | |
JP2006157482A (ja) | プログラマブル・ロジック・デバイス、情報処理装置、プログラマブル・ロジック・デバイスの制御方法 | |
CN108897646B (zh) | 一种bios芯片的切换方法及基板管理控制器 | |
US20050033952A1 (en) | Dynamic scheduling of diagnostic tests to be performed during a system boot process | |
JP2008084275A (ja) | ソフトウェアの改ざん監視装置および改ざん監視方法 | |
KR101626967B1 (ko) | 해킹 방지를 위한 어플리케이션의 동작 방법 및 장치 | |
JP6504610B2 (ja) | 処理装置、方法及びプログラム | |
JP2007079839A (ja) | 電子機器、監視装置、監視方法およびコンピュータプログラム | |
JP2009205208A (ja) | 運用管理装置、運用管理方法ならびにプログラム | |
JP2010009258A (ja) | ソフトウエアの異常検出装置 | |
CN106130815B (zh) | 板级测试方法及装置 | |
JP2009003663A (ja) | 電源制御装置 | |
JP2006227962A (ja) | アプリケーションタスク監視システムおよび方法 | |
JP2010003132A (ja) | 情報処理装置、その入出力装置の故障検出方法及びプログラム | |
JP4983806B2 (ja) | 二重化タイマを用いたシステム監視装置、および監視方法 | |
CN116340957B (zh) | 程序启动方法、装置、服务器及非易失性存储介质 | |
CN108415788B (zh) | 用于对无响应处理电路作出响应的数据处理设备和方法 | |
KR100459225B1 (ko) | 프레임 구조 프로세서 | |
JPH0962534A (ja) | 電子計算機の自己診断方法 | |
JP2003044324A (ja) | 異常検出確認方法及び異常検出確認装置並びに異常検出確認プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070416 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090626 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090728 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091124 |