(57)【要約】【課題】所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることのできるデータ処理装置を提供する。【解決手段】データ処理装置は、所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶する記憶手段と、電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め手段と、前記オフ時間求め手段が求めたオフ時間が予め設定される所定の時間以下の場合は、前記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する進行履歴が異常であると判定する判定手段と、を備える。【選択図】図２
2010049407.tif 000002
【特許請求の範囲】
【請求項１】
所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶する記憶手段と、
電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め手段と、
前記オフ時間求め手段が求めたオフ時間が予め設定される所定の時間以下の場合は、前記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する進行履歴が異常であると判定する判定手段と、
を有することを特徴とするデータ処理装置。
【請求項２】
前記記憶手段は、
一定期間内の前記プログラムカウンタの値に関する進行履歴を示す履歴情報を記憶する、
ことを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
所定の処理が実行されるときに参照されるプログラムカウンタに関し一定期間内の当該プログラムカウンタの値に関する現在の進行履歴を示す履歴情報を記憶する第１の記憶手段と、
異常であると判定された前記プログラムカウンタの値に関する過去の進行履歴を示す履歴情報を記憶する第２の記憶手段と、
前記第１の記憶手段に記憶されている履歴情報と前記第２の記憶手段に記憶されている履歴情報とのパターンマッチングを行い、当該２つのパターンが一致した場合は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する判定手段と、
を有することを特徴とするデータ処理装置。
【請求項４】
前記所定の処理にかかわる情報を記憶する処理情報記憶手段、を更に備え、
前記判定手段は、
前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定したときは、前記第２の記憶手段に対し、前記処理情報記憶手段に記憶されている情報を当該第２の記憶手段内の履歴情報に対応して記憶させる、
ことを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
所定の処理が実行されるときに参照されるプログラムカウンタに関し一定期間内の当該プログラムカウンタの値に関する現在の進行履歴を示す履歴情報を記憶する第１の記憶手段と、
電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め手段と、
前記オフ時間求め手段が求めたオフ時間が予め設定される所定の時間以下の場合は、前記第１の記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する第１の判定手段と、
異常であると判定された前記プログラムカウンタの値に関する過去の進行履歴を示す履歴情報を記憶する第２の記憶手段と、
前記一定期間ごとに、前記第１の記憶手段に記憶されている履歴情報と前記第２の記憶手段に記憶されている履歴情報とのパターンマッチングを行い、当該２つのパターンが一致した場合は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する第２の判定手段と、
を有することを特徴とするデータ処理装置。
【請求項６】
前記所定の処理にかかわる情報を記憶する処理情報記憶手段、を更に備え、
前記第２の判定手段は、
前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定したときは、前記第２の記憶手段に対し、前記処理情報記憶手段に記憶されている情報を当該第２の記憶手段内の履歴情報に対応して記憶させる、
ことを特徴とする請求項５に記載のデータ処理装置。
【請求項７】
請求項１〜６の何れか一項に記載のデータ処理装置を有することを特徴とする情報処理装置。
【請求項８】
請求項１〜６の何れか一項に記載のデータ処理装置を有することを特徴とする画像形成装置。
【請求項９】
所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶手段に記憶させる記憶処理過程と、
電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め処理過程と、
前記オフ時間求め処理過程により求められたオフ時間が予め設定される所定の時間以下の場合は、前記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する進行履歴が異常であると判定する判定処理過程と、
をコンピュータに実行させることを特徴とするデータ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置、情報処理装置、画像形成装置、およびデータ処理プログラムに関する。
【背景技術】
【０００２】
従来、画像データの処理ジョブを実行する画像処理装置としては、例えばコピー機能、スキャナ機能、プリンタ機能、ＦＡＸ機能等といった複数の機能を１台の装置で提供する、いわゆる複合機、プリンタ機能に特化したプリンタ装置などがある。
【０００３】
このような画像処理装置では、電源オン時に当該画像処理装置の正常状態を判断するために、ＣＰＵ（中央演算処理装置）やＲＡＭ（随時書き込み読み出しメモリ）などのハードウェアチェック、プログラム領域のサムチェックなどを実施する。
【０００４】
また、上述したような画像処理装置には、電源断エラーにより消失する可能性のある実行途中のジョブのジョブ履歴情報を保存する構成とするものもある（例えば、特許文献１参照。）。
【０００５】
なお、上述した画像処理装置においては、エラーの状態情報が表示されない、意図しない不正な状態情報は保存されない。この不正な状態情報としては、例えば、ＣＰＵ内のプログラムカウンタの値が異常な状態で進行した場合の当該プログラムカウンタの値に関する進行履歴の情報が挙げられる。
【特許文献１】特開２００２−１４９３８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることのできるデータ処理装置、情報処理装置、画像形成装置、およびデータ処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、請求項１に記載の本発明のデータ処理装置は、所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶する記憶手段と、電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め手段と、前記オフ時間求め手段が求めたオフ時間が予め設定される所定の時間以下の場合は、前記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する進行履歴が異常であると判定する判定手段と、を有することを特徴とする。
【０００８】
請求項２に記載の発明は、上記請求項１に記載の発明において、前記記憶手段は、一定期間内の前記プログラムカウンタの値に関する進行履歴を示す履歴情報を記憶する、ことを特徴とする。
【０００９】
上記課題を解決するため、請求項３に記載の本発明のデータ処理装置は、所定の処理が実行されるときに参照されるプログラムカウンタに関し一定期間内の当該プログラムカウンタの値に関する現在の進行履歴を示す履歴情報を記憶する第１の記憶手段と、異常であると判定された前記プログラムカウンタの値に関する過去の進行履歴を示す履歴情報を記憶する第２の記憶手段と、前記第１の記憶手段に記憶されている履歴情報と前記第２の記憶手段に記憶されている履歴情報とのパターンマッチングを行い、当該２つのパターンが一致した場合は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する判定手段と、を有することを特徴とする。
【００１０】
請求項４に記載の発明は、上記請求項３に記載の発明において、前記所定の処理にかかわる情報を記憶する処理情報記憶手段、を更に備え、前記判定手段は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定したときは、前記第２の記憶手段に対し、前記処理情報記憶手段に記憶されている情報を当該第２の記憶手段内の履歴情報に対応して記憶させる、ことを特徴とする。
【００１１】
上記課題を解決するため、請求項５記載の本発明のデータ処理装置は、所定の処理が実行されるときに参照されるプログラムカウンタに関し一定期間内の当該プログラムカウンタの値に関する現在の進行履歴を示す履歴情報を記憶する第１の記憶手段と、電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め手段と、前記オフ時間求め手段が求めたオフ時間が予め設定される所定の時間以下の場合は、前記第１の記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する第１の判定手段と、異常であると判定された前記プログラムカウンタの値に関する過去の進行履歴を示す履歴情報を記憶する第２の記憶手段と、前記一定期間ごとに、前記第１の記憶手段に記憶されている履歴情報と前記第２の記憶手段に記憶されている履歴情報とのパターンマッチングを行い、当該２つのパターンが一致した場合は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定する第２の判定手段と、を有することを特徴とする。
【００１２】
請求項６に記載の発明は、上記請求項５に記載の発明において、前記所定の処理にかかわる情報を記憶する処理情報記憶手段、を更に備え、前記第２の判定手段は、前記プログラムカウンタの値に関する現在の進行履歴が異常であると判定したときは、前記第２の記憶手段に対し、前記処理情報記憶手段に記憶されている情報を当該第２の記憶手段内の履歴情報に対応して記憶させる、ことを特徴とする。
【００１３】
上記課題を解決するため、請求項７に記載の本発明の情報処理装置は、請求項１〜６の何れか一項に記載のデータ処理装置を有することを特徴とする。
【００１４】
上記課題を解決するため、請求項８に記載の本発明の画像形成装置は、請求項１〜６の何れか一項に記載のデータ処理装置を有することを特徴とする。
【００１５】
上記課題を解決するため、請求項９記載の本発明のデータ処理プログラムは、所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶手段に記憶させる記憶処理過程と、電源がオンの状態からオフに変化しその後オンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め処理過程と、前記オフ時間求め処理過程により求められたオフ時間が予め設定される所定の時間以下の場合は、前記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、前記プログラムカウンタの値に関する進行履歴が異常であると判定する判定処理過程と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１６】
請求項１記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００１７】
請求項２記載の発明によれば、本構成を有しない場合に比較して、一定期間内のプログラムカウンタの値に関する進行履歴を示す履歴情報が異常判定基準に適合するときは、当該プログラムカウンタの値に関する進行履歴が異常であると判定することができるので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００１８】
請求項３記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００１９】
請求項４記載の発明によれば、本構成を有しない場合に比較して、パターンマッチングによりプログラムカウンタの値に関する現在の進行履歴が異常であると判定されたときは、プログラムカウンタの値に関する過去の進行履歴を示す履歴情報と処理情報記憶手段に記憶されている情報とを対応付けして第２の記憶手段に記憶することができるので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００２０】
請求項５記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００２１】
請求項６記載の発明によれば、本構成を有しない場合に比較して、パターンマッチングによりプログラムカウンタの値に関する現在の進行履歴が異常であると判定されたときは、プログラムカウンタの値に関する過去の進行履歴を示す履歴情報と処理情報記憶手段に記憶されている情報とを対応付けして第２の記憶手段に記憶することができるので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００２２】
請求項７記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００２３】
請求項８記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【００２４】
請求項９記載の発明によれば、本構成を有しない場合に比較して、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報が得られるソフトウェアを提供することができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための図面において同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００２６】
（実施の形態１）
【００２７】
図１は、実施の形態１に係るデータ処理装置の機能構成を示している。
【００２８】
データ処理装置１は、図１に示すように、処理装置１０、記憶部２０、記憶部３０、主電源４０、および異常判定処理部５０を有している。
【００２９】
処理装置１０は、例えばＣＰＵ（中央演算処理装置）で構成され、制御装置１１０と演算装置１２０とを有している。記憶部２０は例えば不揮発性のメモリであり、所定の処理に対応する命令語を記憶している。記憶部３０は例えば揮発性のメモリであり、処理装置１０によって実行された所定の処理にかかわる情報、例えば処理の途中結果や処理の最終結果など処理情報やワークデータなどを記憶する。
【００３０】
処理装置１０において、制御装置１１０は、記憶部２０に対するアクセスにより命令の読み込みを行い、その命令の解読、復号化を実行するものであり、次に実行すべき命令語が格納されている記憶部２０のアドレスを記憶するプログラムカウンタ（命令アドレスレジスタ）１１１と、プログラムカウンタの値（アドレス）に基づき記憶部２０から読み出された命令語を記憶する命令レジスタ１１２と、命令レジスタ１１２に記憶された命令語の解読、復号化を行う命令デコーダ１１３とを有している。
【００３１】
演算装置１２０は、制御装置１１０の制御に従って、命令デコーダ１１３によって復号化された命令に従って処理（算術演算、論理演算）を実行し、この実行した結果を記憶部３０に記憶する。
【００３２】
主電源４０は、当該データ処理装置１に対し所定の電力を供給するためのものであり、例えば処理装置１０、記憶部２０、記憶部３０、および異常判定処理部５０のそれぞれに対し所定の電力（電源電圧）を供給する。
【００３３】
異常判定処理部５０は、図１および図２に示すように、プログラムカウンタ記憶処理部５１０、電源ＯＦＦ−ＯＮ判定部５２０、プログラムカウンタ異常判定部５３０、状態表示部５４０、不揮発性記憶部５５０、および外部記憶装置５６０を有している。なお、図２は、図１に示す異常判定処理部５０の詳細な機能構成を示している。そこで、異常判定処理部５０については、図２を参照して説明する。
【００３４】
図２において、プログラムカウンタ記憶処理部５１０は、処理中のプログラムカウンタ１１１の値（アドレス）を不揮発性記憶部５５０に格納するものであり、一定時間分のプログラムカウンタ１１１の値に関する履歴（進行履歴）を不揮発性記憶部５５０に格納する。
【００３５】
不揮発性記憶部５５０は、一定時間分のプログラムカウンタ１１１の値に関する履歴（進行履歴）を示す履歴情報を記憶する。
【００３６】
電源ＯＦＦ−ＯＮ判定部５２０は、時計部５２１、電源ＯＦＦ／ＯＮ計測部５２２、電源ＯＦＦ時間算出部５２３、および電源ＯＦＦ時間比較部５２４を有している。
【００３７】
このような電源ＯＦＦ−ＯＮ判定部５２０は、主電源４０がオン（ＯＮ）状態からオフ（ＯＦＦ）状態に変化しその後オン（ＯＮ）状態に変化した場合の当該主電源４０のオフになっている時間（以下「オフ時間」という）と予め設定される基準値（比較値）とを基に、オフ時間が基準値（比較値）以内であるか否かを判定する手段である。
【００３８】
時計部５２１は、主電源４０がＯＦＦした場合であっても計時する手段（時刻を保持する手段）である。この時計部５２１は例えば内部電源によって作動するようになっている。
【００３９】
電源ＯＦＦ／ＯＮ計測部５２２は、主電源４０のＯＦＦまたはＯＮの状態を認識し、そのＯＦＦまたはＯＮの状態に遷移したと認識した時点で、時計部５２１による計時の結果（時刻）を取得し保持する手段である。また、電源ＯＦＦ／ＯＮ計測部５２２は、ＯＮからＯＦＦの状態に変化した時の時刻（以下「電源ＯＦＦ時刻」という。）およびＯＦＦからＯＮの状態に変化した時の時刻（以下「電源ＯＮ時刻」という。）を電源ＯＦＦ時間算出部１３へ出力する。
【００４０】
電源ＯＦＦ時間算出部５２３は、電源ＯＦＦ／ＯＮ計測部５２２からの電源ＯＦＦ時刻および電源ＯＮ時刻を基に主電源４０がＯＦＦとなっている時間（以下「電源ＯＦＦ時間」という。）つまり上記オフ時間を算出する手段である。
【００４１】
電源ＯＦＦ時間比較部５２４は、電源ＯＦＦ時間算出部５２３が算出した電源ＯＦＦ時間と予め設定される基準値つまり比較値（時間）とを比較し、この比較した結果を基に、「ＯＮ状態の電源４０がＯＦＦ状態に変化しその後ＯＮ状態に変化するまでの時間（オフ時間）が基準値（比較値）以内」であるか否かを判定する手段である。
【００４２】
電源ＯＦＦ時間比較部５２４は、上記オフ時間が上記基準値（比較値）以内の場合、主電源４０がＯＮ状態から短時間で「ＯＦＦ状態に変化しその後ＯＮ状態に変化」したと判定する。
【００４３】
ここで、電源４０がＯＮ状態から短時間で「ＯＦＦ状態に変化しその後ＯＮ状態に変化」したことを「短時間の電源ＯＦＦ−ＯＮ」と定義する。
【００４４】
そして、電源ＯＦＦ時間比較部５２４は、上記オフ時間が上記基準値（比較値）以内の場合、「短時間の電源ＯＦＦ−ＯＮ」である旨をプログラムカウンタ異常判定部５３０へ出力する。
【００４５】
実施の形態１では、「短時間の電源ＯＦＦ−ＯＮ」であると判定されることを条件に、「所定の処理の実行中に何らかの異常状態（意図しない異常状態）」が発生したか否かが判断されるようになっている。
【００４６】
すなわち、通常の主電源４０のＯＦＦとは異なり、ユーザが継続して当該データ処理装置１を使用したい状況にありながら、ＯＮ状態の主電源４０を一旦ＯＦＦ状態にすることを必要とした状態を、「所定の処理の実行中に何らかの異常状態（意図しない異常状態）が発生」とする条件の一つとしている。
【００４７】
プログラムカウンタ異常判定部５３０は、電源ＯＦＦ−ＯＮ判定部５２０（の電源ＯＦＦ時間比較部５２４）からの「短時間で電源ＯＦＦ−ＯＮである旨」を受け取った場合に、不揮発性記憶部５５０に記憶されている履歴情報（プログラムカウンタの値に関する進行履歴）と、予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するか否かを判断する。
【００４８】
また、プログラムカウンタ異常判定部５３０は、上記判断した結果、履歴情報が異常判定基準に適合するときは、プログラムカウンタの値に関する進行履歴が異常であると判定するとともに、不揮発性記憶部５５０に記憶されている履歴情報（プログラムカウンタの値に関する進行履歴）を異常状態の履歴情報として外部記憶装置５６０へ転送（出力）する。
【００４９】
状態表示部５４０は、当該データ処理装置１の各種の状態を表示するものであり、例えばプログラムカウンタの値に関する進行履歴が異常であった旨を表示する。
【００５０】
外部記憶装置５６０は、異常状態であった履歴情報（プログラムカウンタの値に関する進行履歴）を記憶する。
【００５１】
また、外部記憶装置５６０は、保守員が回収でき、且つ回収までに転送されたプログラムカウンタの値に関する進行履歴（を示す履歴情報）を全て保存する必要があるので、ある程度の容量を有し取り外し可能な記憶装置である。その一例としは、例えば、ＵＳＢフラッシュメモリ、ＳＤメモリカードなどメモリカード、ハードディスクドライブなどが挙げられる。なお、各々におけるアクセス方法、接続インタフェースについては、ここでは言及しない。
【００５２】
なお、実施の形態１では、不揮発性記憶部５５０は上記記憶手段の機能を果たし、電源ＯＦＦ−ＯＮ判定部５２０は上記オフ時間求め手段の機能を果たし、プログラムカウンタ異常判定部５３０は上記判定手段の機能（異常判定基準に従って異常判定処理を実施する判定手段の機能）を果たすようになっている。
【００５３】
次に、異常判定処理部５０による異常判定処理について、図３を参照して説明する。
【００５４】
図３は、その異常判定処理の処理手順を示すフローチャートである。
【００５５】
ユーザが主電源４０をＯＮ状態にする（電源投入する）ことでデータ処理装置１（システム）が起動し、さらにデータ処理装置１内の処理装置１０が所定の処理を実現するためのプログラムを実行すると、異常判定部５０では、プログラムカウンタ記憶処理部５１０は、処理装置１０によるプログラムの実行中、一定期間内のプログラムカウンタ１１１の値（アドレス）に関する進行履歴を、不揮発性記憶部５５０に記憶する（ステップＳ１０１）。
【００５６】
この場合、不揮発性記憶部５５０は、一定期間毎に、当該一定期間内の上記進行履歴を記憶する。
【００５７】
ＯＮ状態の主電源４０から所定の電力（電源電圧）を供給されているプログラムカウンタ記憶処理部５１０は、供給される所定の電力（電源電圧）の値に応じて主電源４０がＯＦＦされたか否かを判断し（ステップＳ１０２）、主電源４０がＯＦＦされていない場合は、主電源４０がＯＦＦされるまで、プログラムカウンタ１１１の値に関する進行履歴（を示す履歴情報）を不揮発性記憶部５５０に記憶する。
【００５８】
一方、ユーザによってＯＮ状態の主電源４０がＯＦＦ状態にされた場合、上述したようなプログラムカウンタ１１１の値に関する進行履歴（を示す履歴情報）の記憶は行われない。また、電源ＯＦＦ−ＯＮ判定部５２０では、電源ＯＦＦ／ＯＮ計測部５２２は、主電源４０のＯＦＦの状態を認識し、そのＯＦＦの状態に遷移したと認識した時点で、時計部５２１による計時の結果（時刻）つまりＯＮからＯＦＦの状態に変化した時の時刻（電源ＯＦＦ時刻）を取得し保持する。
【００５９】
次にユーザによってＯＦＦ状態の主電源４０がＯＮ状態にされると（ステップＳ１０３）、当該データ処理装置１（システム）が起動する。
【００６０】
このとき、電源ＯＦＦ−ＯＮ判定部５２０において、電源ＯＦＦ／ＯＮ計測部５２２は、主電源４０のＯＮの状態を認識し、そのＯＮの状態に遷移したと認識した時点で、時計部５２１による計時の結果（時刻）つまりＯＦＦからＯＮの状態に変化した時の時刻（電源ＯＮ時刻）を取得し保持する。
【００６１】
そして、電源ＯＦＦ／ＯＮ計測部５２２が、上述したようにして保持した電源ＯＮ時刻と既に保持している電源ＯＦＦ時刻とを電源ＯＦＦ時間算出部５２３へ出力すると、電源ＯＦＦ時間算出部５２３は、これらの電源ＯＦＦ時刻および電源ＯＮ時刻を基に主電源４０がＯＦＦとなっている電源ＯＦＦ時間（電源ＯＮ時刻―電源ＯＦＦ時刻）を算出し、この算出した結果（電源ＯＦＦ時間）を電源ＯＦＦ時間比較部５２４へ出力する。
【００６２】
電源ＯＦＦ時間比較部５２４は、電源ＯＦＦ時間算出部５２３からの電源ＯＦＦ時間と予め設定される基準値つまり比較値（時間）とを比較し、この比較した結果を基に、「ＯＮ状態の主電源４０がＯＦＦ状態に変化しその後ＯＮ状態に変化するまでの時間（オフ時間）が基準値（比較値＝時間）以内」であるか否か、すなわち「短時間の電源ＯＦＦ−ＯＮ」であるか否かを判断する（ステップＳ１０４）。
【００６３】
ここで、電源ＯＦＦ時間が基準値（比較値＝時間）以内である場合には「短時間の電源ＯＦＦ−ＯＮ」であると判断され、一方、電源ＯＦＦ時間が基準値（比較値＝時間）を超えている場合は「短時間の電源ＯＦＦ−ＯＮ」ではない（例えば通常の主電源４０のＯＮである）と判断されようになっている。
【００６４】
さて、電源ＯＦＦ時間比較部５２４は、電源ＯＦＦ時間が基準値（比較値＝時間）以内であるので「短時間の電源ＯＦＦ−ＯＮ」であると判断した場合は（ステップＳ１０４「ＹＥＳ」の場合）、「短時間の電源ＯＦＦ−ＯＮ」である旨をプログラムカウンタ異常判定部５３０へ出力する。
【００６５】
プログラムカウンタ異常判定部５３０は、電源ＯＦＦ−ＯＮ判定部５２０（の電源ＯＦＦ時間比較部５２４）からの「短時間の電源ＯＦＦ−ＯＮ」である旨を受け取ると、不揮発性記憶部５５０から履歴情報（プログラムカウンタ１１１の値に関する進行履歴）を読み出すとともに（ステップＳ１０５）、この読み出した履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するか否かの異常判定処理を実施する（ステップＳ１０６）。
【００６６】
ここで、異常判定基準には次の基準１〜３の３つの基準が含まれている。
【００６７】
基準１は、図４（ａ）に示すように、プログラムカウンタの値（アドレス）が進行しないこと（ストールの発生）。
【００６８】
基準２は、図４（ｂ）に示すように、プログラムカウンタの値（アドレス）が所定の範囲（狭い範囲）を周期的に繰り返すこと（無限ループの発生）。
【００６９】
基準３は、図４（ｃ）に示すように、プログラムカウンタの値（アドレス）がプログラム領域外のアドレスを示していること（不正ブランチ命令の発生）。
【００７０】
これら３つの基準の何れか１つの基準に、不揮発性記憶部５５０から読み出された履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が適合する場合は、プログラムカウンタ１１１の値に関する進行履歴は異常であると判定されるようになっている。
【００７１】
ここで、プログラムカウンタ１１１の値に関する進行履歴が異常であるということは、上記所定の処理が異常であるということを意味する。
【００７２】
ステップＳ１０６を終了したプログラムカウンタ異常判定部５３０は、不揮発性記憶部５５０から読み出した履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が、上述した異常判定基準つまり３つの基準の何れか１つの基準に適合するか否かに応じて、プログラムカウンタ１１１の値に関する進行履歴が異常であるか否かを判断する（ステップＳ１０７）。
【００７３】
プログラムカウンタ異常判定部５３０は、ステップＳ１０７において、上記履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が、上述した異常判定基準つまり３つの基準の何れか１つの基準に適合するので、プログラムカウンタ１１１の値に関する進行履歴が異常であると判断した場合（主電源４０のＯＦＦされる前（電源ＯＦＦ前）の所定の処理が異常であると判断した場合）は、不揮発性記憶部５５０に記憶されている当該履歴情報（プログラムカウンタ１１１の値に関する進行履歴）を外部記憶装置５６０へ転送する（ステップＳ１０８）。
【００７４】
また、プログラムカウンタ異常判定部５３０は、上記履歴情報（プログラムカウンタ１１１の値に関する進行履歴）を外部記憶装置５６０へ転送した後、プログラムカウンタ１１１の値に関する進行履歴が異常であった旨を状態表示部５４０へ出力する。
【００７５】
プログラムカウンタ異常判定部５３０からの上記異常であった旨を受け取った状態表示部５４０は、ユーザに対し、「前回の電源ＯＦＦ時に、プログラムカウンタ１１１の値に関する進行履歴が異常状態であった旨」を通知する（ステップＳ１０９）。
【００７６】
ユーザに対し通知される上記異常状態であった旨は、現時点の状態ではないが、直近の過去にユーザが認識できなった障害が発生した旨を意味する。
【００７７】
ここで、状態表示部５４０での上記異常状態であった旨の表示内容の一例を図５（ａ），（ｂ）に示す。図５（ａ）は状態表示部５４０がダイアログを表示可能な表示手段の場合の表示例を示し、図５（ｂ）は状態表示部５４０が文字を表示可能な表示手段の場合の表示例を示している。
【００７８】
上述したようにして状態表示部５４０が上述した異常状態であった旨を表示すると（ステップＳ１０９が終了した場合）、データ処理装置１（システム）は初期化処理を実行した後（ステップＳ１１０）、ステップＳ１０１へ戻る。この場合、通常処理が実施され、一定期間内のプログラムカウンタ１１１の値（アドレス）に関する進行履歴が不揮発性記憶部５５０に記憶される。
【００７９】
ステップＳ１０４において、電源ＯＦＦ時間比較部５２４によって、電源ＯＦＦ時間が基準値（比較値＝時間）を超えているので、「短時間の電源ＯＦＦ−ＯＮ」ではないと判断（通常の電源ＯＮであると判断）された場合（ステップＳ１０４「ＮＯ」の場合）、ステップＳ１１０へ進む。
【００８０】
また、ステップＳ１０７において、プログラムカウンタ異常判定部５３０によって、上記履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が、上述した異常判定基準つまり３つの基準の何れか１つの基準に適合しないので、プログラムカウンタ１１１の値に関する進行履歴が異常ではないと判断（正常であると判断）された場合（ステップＳ１０７「ＮＯ」の場合）、ステップＳ１１０へ進む。
【００８１】
なお、実施の形態１において、プログラムカウンタ１１１の値に関する進行履歴の記憶処理の動作について、保守員がその動作の可否を設定するようにする構成としてもよい。
【００８２】
この場合、保守員がその記憶処理の動作を禁止する旨（動作否）を設定した場合は、プログラムカウンタ記憶処理部５１０によるプログラムカウンタ１１１の値に関する進行履歴の保存処理（ステップＳ１０１参照）、およびプログラムカウンタ異常判定部５３０によるプログラムカウンタ１１１の値に関する進行履歴の異常判定処理（ステップＳ１０５〜Ｓ１０９参照）は、それぞれ実行されない。
【００８３】
また、保守員がその記憶処理の動作を禁止する旨（動作否）を設定した場合は、電源ＯＦＦ−ＯＮ判定部５２０（の電源ＯＦＦ時間比較部５２４）によって「短時間の電源ＯＦＦ−ＯＮ」であると判定された場合であっても、プログラムカウンタ異常判定部５３０によるプログラムカウンタ１１１の値に関する進行履歴の異常判定処理（ステップＳ１０５〜Ｓ１０９参照）は実行されない。
【００８４】
以上説明したように、実施の形態１によれば、所定の処理の実行中に意図しない異常が発生した事象を解決するために、ユーザがＯＮ状態の主電源を「短時間の電源ＯＦＦ−ＯＮ」させる操作を実施した場合に、プログラムカウンタ異常判定部５３０がプログラムカウンタの値に関する進行履歴が異常であると判定したときは、当該異常状態になっているプログラムカウンタの値に関する進行履歴を外部記憶装置５６０に記憶するようにしているので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報（異常状態になっているプログラムカウンタの値に関する進行履歴）を得ることができる。
【００８５】
（実施の形態２）
【００８６】
実施の形態２では、上記実施の形態１でのプログラムカウンタ異常判定部５３０による異常判定処理の実行により、異常状態であった履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が外部記憶装置５６０に記憶されていることを前提とし、またＯＮ状態の主電源４０が「短時間の電源ＯＦＦ−ＯＮ」とならない場合すなわち主電源４０がＯＮ状態のままの場合であってもプログラムカウンタ異常判定部５３０が異常判定処理を実施する、データ処理装置を想定している。
【００８７】
図６は実施の形態２に係るデータ処理装置の機能構成を示し、図７は実施の形態２に係るデータ処理装置に設けられる異常判定処理部の機能構成を示している。
【００８８】
図６に示すデータ処理装置１は、図１に示した実施の形態１のデータ処理装置１とは、基本的にはその構成および機能と同様になっているものの、異常判定処理部５０の機能が多少異なっている。
【００８９】
そのため、図７に示す異常判定処理部５０も、図１に示した実施の形態１の異常判定処理部５０とはその機能が多少異なっている。
【００９０】
なお、図６および図７において、それぞれ図１および図２に示した構成要素と同様の機能を果たす部分には同一の符号を付している。
【００９１】
実施の形態２において、プログラムカウンタ記憶処理部５１０は、プログラムカウンタ１１１の値に関する進行履歴が異常か否かを判定するためのタイミングを示す判定周期（以下「プログラムカウンタの判定周期」という。）毎に、当該プログラムカウンタの判定周期に到達するまで、プログラムカウンタ１１１の値に関する進行履歴（を示す履歴情報）を不揮発性記憶部５５０に記憶する。
【００９２】
また、プログラムカウンタ記憶処理部５１０は、プログラムカウンタの判定周期に到達した場合、当該プログラムカウンタの判定周期に到達した旨をプログラムカウンタ異常判定部５３０へ通知する。
【００９３】
外部記憶装置５６０には、異常状態の履歴情報（プログラムカウンタ１１１の値に関する進行履歴）が記憶されている。
【００９４】
プログラムカウンタ異常判定部５３０は、不揮発性記憶部５５０に記憶されている履歴情報すなわちプログラムカウンタの値に関する現在の進行履歴と、外部記憶装置５６０に記憶され履歴情報すなわち異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴（過去に発生した異常状態におけるプログラムカウンタの値に関する進行履歴）とのパターンマッチングを周期的に実行する。
【００９５】
また、プログラムカウンタ異常判定部５３０は、上記パターンマッチングの結果、プログラムカウンタの値に関する現在の進行履歴が異常であると判定した場合、外部記憶装置５６０に対し、記憶部（揮発性メモリ例えばＲＡＭ）３０に記憶されている情報（ＲＡＭ情報）を転送して、このＲＡＭ情報と、外部記憶装置５６０に記憶され履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）とを対応付けて記憶させる。
【００９６】
ところで、プログラムカウンタ異常判定部５３０は、プログラムカウンタ記憶処理部５１０からのプログラムカウンタの判定周期に到達した旨を受け付けたタイミングで、かつ異常状態の履歴情報（プログラムカウンタ１１１の値に関する過去の進行履歴）が外部記憶装置５６０に記憶されていることを条件に、上記パターンマッチングを実施するようになっている。すなわち、上記パターンマッチングの周期は、プログラムカウンタの判定周期であると言える。
【００９７】
なお、実施の形態２では、不揮発性記憶部５５０は上記第１の記憶手段の機能を果たし、外部記憶装置５６０は上記第２の記憶手段の機能を果たし、プログラムカウンタ異常判定部５３０は上記判定手段の機能（パターンマッチングにより異常判定処理を実施する判定手段の機能）を果たし、記憶部３０は上記処理情報記憶手段の機能を果たすようになっている。
【００９８】
次に、異常判定処理部５０による異常判定処理について、図８を参照して説明する。
【００９９】
図８は、その異常判定処理の処理手順を示すフローチャートである。
【０１００】
ユーザが主電源４０をＯＮ状態にする（電源投入する）ことでデータ処理装置１（システム）が起動し、さらにデータ処理装置１内の処理装置１０が所定の処理を実現するためのプログラムを実行すると、異常判定部５０では、プログラムカウンタ記憶処理部５１０は、処理装置１０によるプログラムの実行中、一定期間内のプログラムカウンタ１１１の値（アドレス）に関する進行履歴（現在の進行履歴）を、不揮発性記憶部５５０に記憶する（ステップＳ２０１）。
【０１０１】
この場合、不揮発性記憶部５５０は、一定期間毎に、当該一定期間内の上記進行履歴を記憶する。
【０１０２】
また、プログラムカウンタ記憶処理部５１０は、プログラムカウンタの判定周期であるか否かを判断し（ステップＳ２０２）、この判断した結果、プログラムカウンタの判定周期に到達していない場合には、その判定周期に到達するまで、プログラムカウンタ１１１の値に関する進行履歴（を示す履歴情報）を不揮発性記憶部５５０に記憶するべく、ステップＳ２０１に戻る。
【０１０３】
一方、ステップＳ２０２においてプログラムカウンタの判定周期に到達したと判断したプログラムカウンタ記憶処理部５１０は、プログラムカウンタの判定周期に到達した旨をプログラムカウンタ異常判定部５３０へ通知する。
【０１０４】
なお、実施の形態２では、上記一定期間および上記プログラムカウンタの判定周期は、「一定期間＝プログラムカウンタの判定周期」の関係が成立する値に設定されるものとする。
【０１０５】
プログラムカウンタの判定周期に到達した旨の通知を受け取ったプログラムカウンタ異常判定部５３０は、外部記憶装置５６０にアクセスして履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）が記憶されているか否かを判断し（ステップＳ２０３）、この判断した結果、当該履歴情報が記憶されている場合は、外部記憶装置５６０から当該履歴情報を読み出す（ステップＳ２０４）。
【０１０６】
また、プログラムカウンタ異常判定部５３０は、不揮発性記憶部から履歴情報（プログラムカウンタの値に関する現在の進行履歴）を読み出すとともに（ステップＳ２０５）、このステップＳ２０５で読み出した履歴情報および上記ステップＳ２０４で読み出した履歴情報を基にパターンマッチング処理を実行（当該２つの履歴情報のパターンマッチングを実行）する（ステップＳ２０６）。
【０１０７】
パターンマッチング処理を実行（上記２つの履歴情報のパターンマッチングを実行）するということは、プログラムカウンタの値に関する現在の進行履歴が異常であるか否かの異常判定処理を実行することを意味する。
【０１０８】
ここで、プログラムカウンタ１１１の値に関する現在の進行履歴が異常であるということは、上記所定の処理が異常であるということを意味する。
【０１０９】
さらに、プログラムカウンタ異常判定部５３０は、上述したパターンマッチング処理（異常判定処理）の実行の結果に基づき、プログラムカウンタの値に関する現在の進行履歴が異常であるか否かを判断する（ステップＳ２０７）。
【０１１０】
ここで、不揮発性記憶部から読み出された履歴情報（プログラムカウンタの値に関する現在の進行履歴）が例えば図９（ａ）に示す内容であり、一方、外部記憶装置５６０から読み出された履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）が例えば、図９（ｂ）に示す内容（図４（ｂ）に示す基準２の異常判定基準に適合した過去の進行履歴に相当）であるとする。
【０１１１】
そして、不揮発性記憶部から読み出された履歴情報と外部記憶装置５６０から読み出された履歴情報とのパターンマッチング処理により、２つのパターンが一致するときは不揮発性記憶部から読み出された履歴情報つまりプログラムカウンタの値に関する現在の進行履歴が異常であると判断されるようになっている。
【０１１２】
また、プログラムカウンタ異常判定部５３０は、ステップＳ２０７において、プログラムカウンタ１１１の値に関する現在の進行履歴が異常であると判断した場合（所定の処理が異常であると判断した場合）は、外部記憶装置５６０に記憶されている履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）に付随するように、記憶部３０の現在の記憶状態（ＲＡＭ状態）を表わすＲＡＭダンプを外部記憶装置５６０へ転送する（ステップＳ２０８）。
【０１１３】
すなわち、このステップＳ２０８においては、プログラムカウンタ異常判定部５３０は、外部記憶装置５６０に対し、記憶部３０に記憶されている記憶情報（ＲＡＭ情報）を転送して、このＲＡＭ情報（＝ＲＡＭダンプ）と、外部記憶装置５６０に記憶され履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）とを対応付けて記憶させる処理を実施していることになる。
【０１１４】
ステップＳ２０８でのＲＡＭダンプを外部記憶装置５６０へ転送したプログラムカウンタ異常判定部５３０は、プログラムカウンタ１１１の値に関する現在の進行履歴が異常である旨（現在の処理が異常である旨）を状態表示部５４０へ出力する。
【０１１５】
その異常である旨を受け取った状態表示部５４０は、ユーザに対し、「プログラムカウンタ１１１の値に関する進行履歴が異常状態であった旨」を通知し（ステップＳ２０９）、その後、この処理を終了する。
【０１１６】
上記異常状態であった旨は、現時点で電源ＯＦＦに回避方法がない障害が発生した旨を意味する。
【０１１７】
ここで、状態表示部５４０での上記異常状態であった旨の表示内容の一例を図１０（ａ），（ｂ）に示す。図１０（ａ）は状態表示部５４０がダイアログを表示可能な表示手段の場合の表示例を示し、図１０（ｂ）は状態表示部５４０が文字を表示可能な表示手段の場合の表示例を示している。
【０１１８】
上述したようにして状態表示部５４０によって上述した異常状態であった旨が表示された場合において、プログラムカウンタ１１１の値に関する現在の進行履歴の異常状態（現在の処理の異常状態）を回避する手段としては、ユーザによって、ＯＮ状態の主電源４０をＯＦＦに変化させその後ＯＮに変化させることである。すなわち主電源４０に対し「短時間の電源ＯＦＦ−ＯＮ」を実施することである。
【０１１９】
ステップＳ２０７においてプログラムカウンタ１１１の値に関する現在の進行履歴が異常ではないと判断された場合、すなわち（プログラムカウンタ１１１の値に関する現在の進行履歴は正常であると判断された場合（所定の処理は正常であると判断された場合）は、ステップＳ２０１へ戻る。
【０１２０】
ステップＳ２０３において、外部記憶装置５６０に履歴情報（異常状態であると判定されたプログラムカウンタの値に関する過去の進行履歴）が記憶されていないと判断された場合は、パターンマッチング処理を実施することができないので、この処理を終了する。
【０１２１】
なお、実施の形態２において、プログラムカウンタ１１１の値に関する進行履歴の記憶処理の動作について、保守員がその動作の可否を設定するようにする構成としてもよい。
【０１２２】
この場合、保守員がその記憶処理の動作を禁止する旨（動作否）を設定した場合は、プログラムカウンタ記憶処理部５１０によるプログラムカウンタ１１１の値に関する進行履歴の保存処理（ステップＳ２０１参照）、およびプログラムカウンタ異常判定部５３０によるプログラムカウンタ１１１の値に関する進行履歴の異常判定処理（ステップＳ２０３〜Ｓ２０９参照）は、それぞれ実行されない。
【０１２３】
また、プログラムカウンタの判定周期に到達した場合（プログラムカウンタ記憶処理部５１０によってプログラムカウンタの判定周期に到達したと判断された場合）であっても、プログラムカウンタ異常判定部５３０によるプログラムカウンタ１１１の値に関する進行履歴の異常判定処理（ステップＳ２０３〜Ｓ２０９参照）は実行されない。
【０１２４】
以上説明したように、実施の形態２によれば、プログラムカウンタ異常判定部５３０がプログラムカウンタの判定周期ごとに実施する、プログラムカウンタの値に関する現在の進行履歴と異常状態であったプログラムカウンタの値に関する過去の進行履歴とのパターンマッチングにより、当該プログラムカウンタの値に関する現在の進行履歴が異常であると判定したときは、外部記憶装置５６０には、異常状態であったプログラムカウンタの値に関する過去の進行履歴と、所定の処理にかかわる情報であるＲＡＭダンプとが対応付けられて記憶されるので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報（異常状態になっているプログラムカウンタの値に関する過去の進行履歴、およびＲＡＭダンプ）を得ることができる。
【０１２５】
（実施の形態３）
【０１２６】
実施の形態３に係るデータ処理装置は、図６に示した実施の形態２のデータ処理装置１の機能構成と同様になっている。また、データ処理装置内の異常判定処理部も、図７に示した実施の形態２の異常判定処理部５０の機能構成と同様になっている。
【０１２７】
実施の形態３では、実施の形態２とは、異常判定処理部５０による異常判定処理が相違している。
【０１２８】
なお、実施の形態３では、不揮発性記憶部５５０は上記第１の記憶手段の機能を果たし、電源ＯＦＦ−ＯＮ判定部５２０は上記オフ時間求め手段の機能を果たし、外部記憶装置５６０は上記第２の記憶手段の機能を果たし、プログラムカウンタ異常判定部５３０は上記第１の判定手段および上記第２の判定手段の各機能を果たし、記憶部３０は上記処理情報記憶手段の機能を果たすようになっている。
【０１２９】
次に、異常判定処理部５０による異常判定処理について、図１１および図１２を参照して説明する。
【０１３０】
図１１および図１２は、その異常判定処理の処理手順を示すフローチャートである。
【０１３１】
この異常判定処理は、図１１および図１２に示すように、実施の形態１の異常判定処理部５０による異常判定処理のステップＳ１０１〜Ｓ１１０と、実施の形態２の異常判定処理部５０による異常判定処理のステップＳ２０２〜Ｓ２０９とを組み合わせたものになっている。
【０１３２】
なお、実施の形態３では、上記一定期間および上記プログラムカウンタの判定周期は、「一定期間＝プログラムカウンタの判定周期」の関係が成立する値に設定されるものとする。
【０１３３】
ユーザが主電源４０をＯＮ状態にする（電源投入する）ことでデータ処理装置１（システム）が起動し、さらにデータ処理装置１内の処理装置１０が所定の処理を実現するためのプログラムを実行すると、異常判定部５０では、プログラムカウンタ記憶処理部５１０は、図１１に示すように、処理装置１０によるプログラムの実行中、一定期間内のプログラムカウンタ１１１の値（アドレス）に関する進行履歴（現在の進行履歴）を、不揮発性記憶部５５０に記憶する（ステップＳ１０１）。
【０１３４】
この場合、不揮発性記憶部５５０は、一定期間毎に、当該一定期間内の上記進行履歴を記憶する。
【０１３５】
ＯＮ状態の主電源４０から所定の電力（電源電圧）を供給されているプログラムカウンタ記憶処理部５１０は、供給される所定の電力（電源電圧）の値に応じて主電源４０がＯＦＦされたか否かを判断する（ステップＳ１０２）。
【０１３６】
ユーザによってＯＮ状態の主電源４０がＯＦＦ状態にされた場合（ステップＳ１０２「ＹＥＳ」の場合は、図１１に示すように、図３に示した実施の形態１のステップＳ１０３〜Ｓ１１０と同様の処理が実施される。
【０１３７】
ステップＳ１０２において主電源４０がＯＦＦされていないと判断したプログラムカウンタ記憶処理部５１０は、プログラムカウンタの判定周期であるか否かを判断し（ステップＳ２０２）、このステップＳ２０２において、プログラムカウンタの判定周期に到達していないと判断した場合には、その判定周期に到達するまで、プログラムカウンタ１１１の値に関する進行履歴（を示す履歴情報）を不揮発性記憶部５５０に記憶するべく、ステップＳ１０１に戻る。
【０１３８】
一方、ステップＳ２０２においてプログラムカウンタの判定周期に到達したと判断したプログラムカウンタ記憶処理部５１０は、プログラムカウンタの判定周期に到達した旨をプログラムカウンタ異常判定部５３０へ通知する。
【０１３９】
これ以降は、プログラムカウンタ異常判定部５３０による異常判定処理が実施されることとなり、図１２に示すように、図８に示した実施の形態２のステップＳ２０３〜Ｓ２０９と同様の処理が実施される。
【０１４０】
なお、図１２のステップＳ２０７においてプログラムカウンタ１１１の値に関する現在の進行履歴が異常ではないと判断された場合、すなわちプログラムカウンタ１１１の値に関する現在の進行履歴は正常であると判断された場合（所定の処理は正常であると判断された場合）は、図１１のステップＳ１０１へ戻る。
【０１４１】
以上説明したように、実施の形態３によれば、上記実施の形態１および上記実施の形態２の場合と同様の作用効果を奏することができる。
【０１４２】
また、実施の形態３によれば、異常状態になっているプログラムカウンタの値に関する過去の進行履歴が外部記憶装置５６０に記憶されているときは、当該過去の進行履歴にかかわる異常状態と同じ内容の異常状態になっているプログラムカウンタの値に関する現在の進行履歴については、プログラムカウンタ異常判定部５３０は、ＯＮ状態の主電源を「短時間の電源ＯＦＦ−ＯＮ」させるユーザによる操作が実施されなくとも、上記過去の進行履歴と上記現在の進行履歴とのパターンマッチングにより、プログラムカウンタの値に関する現在の進行履歴が異常であるか否かを判断することができる。
【０１４３】
そして、このパターンマッチングにより、プログラムカウンタの値に関する現在の進行履歴が異常であると判定されたときは、外部記憶装置には、異常状態であったプログラムカウンタの値に関する過去の進行履歴と、所定の処理にかかわる情報であるＲＡＭダンプとが対応付けられて記憶されるので、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報（異常状態になっているプログラムカウンタの値に関する過去の進行履歴、およびＲＡＭダンプ）を得ることができる。
【０１４４】
ところで、上述した実施の形態１〜３のデータ処理装置１は、コンピュータなど情報処理装置またはプリンタなど画像形成装置の構成要素となるものである。すなわち、情報処理装置３００は、図１３（ａ）に示すように、上述した実施の形態１〜３の何れかの実施の形態のデータ処理装置１を有する。画像形成装置４００は、図１３（ｂ）に示すように、上述した実施の形態１〜３の何れかの実施の形態のデータ処理装置１と、画像データを印刷処理して出力する画像出力装置４２０とを有している。
【０１４５】
次に、情報処理装置（コンピュータ）３００のハードウェア構成について、図１４を参照して説明する。
【０１４６】
情報処理装置３００は、図１４に示すように、ＣＰＵ３１０、ＲＯＭ３２０、ＲＡＭ３３０、プログラムＲＯＭ３４０、ＡＳＩＣ３５０、時計部３６０、不揮発性メモリ３７０、外部記憶装置３８０、インタフェース３８１、通信インタフェース（以下「通信Ｉ／Ｆ」という。）３８２、表示装置３９０、入力装置３９１、および主電源４０を有している。
【０１４７】
情報処理装置３００を構成する複数（１３）の構成要素４０，３１０〜３９１は上述したデータ処理装置１の機能を果たすものであり、そのため、図１４の情報処理装置３００はデータ処理装置１であると言える。
【０１４８】
ＣＰＵ３１０は、「Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央演算処理装置」であり、ＲＯＭ３２０から命令（命令語）を読み出し解読し復号化しその復号化した命令に従った所定の処理を実行するとともに、この所定の処理の実行結果をＲＡＭ３３０に格納する。この場合、所定の処理としては、例えば印刷データの生成処理などが挙げられる。
【０１４９】
ＲＯＭ３２０は、「Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ：読み出し専用メモリ」であり、上記記憶部２０（図１および図６参照）の機能を果たすものである。
【０１５０】
ＲＡＭ３３０は、「Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ：随時書き込み読み出しメモリ」であり、上記記憶部３０（図１および図６参照）の機能を果たすものである。
【０１５１】
プログラムＲＯＭ３４０は、プログラムを記憶しているＲＯＭ（読み出し専用メモリ）であり、上述したプログラムカウンタ記憶処理部５１０（図２および図７参照）、上述した時計部５２１を除く電源ＯＦＦ−ＯＮ判定部５２０（図２および図７参照）、プログラムカウンタ異常判定部５３０（図２および図７参照）の各機能を実現するためのプログラム、上述した処理手順（図３、図８、図１１および図１２参照）に対応するプログラムなど、所定のプログラムを記憶している。
【０１５２】
ここで、上述したプログラムカウンタ記憶処理部５１０、上述した時計部５２１を除く電源ＯＦＦ−ＯＮ判定部５２０、プログラムカウンタ異常判定部５３０の各機能を実現するためのプログラム、および上述した処理手順に対応するプログラムを、データ処理プログラムと定義する。
【０１５３】
なお、このデータ処理プログラム３４０Ａには、少なくとも次の（１）〜（３）の処理過程が含まれている。
【０１５４】
（１）所定の処理が実行されるときに参照されるプログラムカウンタの値に関する進行履歴を示す履歴情報を記憶手段に記憶させる記憶処理過程。この処理過程は、プログラムカウンタ記憶処理部５１０（ＡＳＩＣ３５０）によって実行される。
【０１５５】
（２）電源がオンの状態からオフに変化し、さらにオンに変化した場合の当該電源がオフになっているオフ時間を求めるオフ時間求め処理過程。この処理過程は、上述した時計部５２１を除く電源ＯＦＦ−ＯＮ判定部５２０（ＡＳＩＣ３５０）によって実行される。
【０１５６】
（３）上記オフ時間求め処理過程により求められたオフ時間が予め設定される所定の時間以下の場合は、上記記憶手段に記憶されている履歴情報と予め設定される異常判定基準とを比較し、当該履歴情報が当該異常判定基準に適合するときは、上記プログラムカウンタの値に関する進行履歴が異常であると判定する判定処理過程。この処理過程は、プログラムカウンタ異常判定部５３０（ＡＳＩＣ３５０）によって実行される。
【０１５７】
ＡＳＩＣ３５０は、「Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ：特定用途向けＩＣ」であり、プログラムＲＯＭ３４０に記憶されているデータ処理プログラムを読み込んで実行することにより、上述したプログラムカウンタ記憶処理部５１０、上述した時計部５２１を除く電源ＯＦＦ−ＯＮ判定部５２０、プログラムカウンタ異常判定部５３０の各機能を実現し、上述した処理手順に対応する異常判定処理を実行する。
【０１５８】
また、ＡＳＩＣ３５０は、異常判定処理の実行に際し、不揮発性メモリ３７０にアクセスするとともに、インタフェース３８１を介して外部記憶装置３８０にアクセスする。
【０１５９】
時計部３６０は、上述した時計部５２１（図２および図７参照）の機能を果たすものである。この時計部３６０は例えば内部電源によって作動するようになっている。
【０１６０】
不揮発性メモリ３７０は上述した不揮発性記憶部５５０（図２および図７参照）の機能を果たし、外部記憶装置３８０は上述した外部記憶装置５６０（図２および図７参照）の機能を果たすものである。
【０１６１】
インタフェース３８１は、外部記憶装置５６０とのデータの授受を行うためのインタフェースである。
【０１６２】
通信Ｉ／Ｆ３８２は、画像形成装置など外部装置との通信を行うためのインタフェースである。
【０１６３】
表示装置３９０は上述した状態表示部５４０（図２および図７参照）の機能を果たすものであり、ダイアログ表示可能な例えば液晶ディスプレイ装置で構成される。
【０１６４】
入力装置３９１は、ユーザによる所定の処理の実行指示、保守員によるプログラムカウンタ１１１の値に関する進行履歴の記憶処理の動作を禁止する旨（動作否）の設定など、所定の入力情報を入力するためのものであり、例えばキーボードやマウスで構成される。
【０１６５】
主電源４０は、当該情報処理装置３００つまり上述した構成要素３１０〜３９１に対し所定の電力（電源電圧）を供給するためのものである。
【０１６６】
次に、画像形成装置４００のハードウェア構成について、図１５を参照して説明する。
【０１６７】
図１５に示す画像形成装置４００は、図１４に示した情報処理装置３００において、入力装置３９１および表示装置３９０を削除し、操作パネル４１０および画像出力装置４２０を追加した構成になっている。なお、図１５において、図１４に示した構成要素と同様の機能を果たす部分には同一の符号を付している。
【０１６８】
画像形成装置４００を構成する複数（１３）の構成要素４０，３１０〜３８２，４１０，４２０のうち、画像出力装置４２０を除く複数（１２）の構成要素４０，３１０〜３８２，４１０は上述したデータ処理装置１の機能を果たすものである。
【０１６９】
操作パネル４１０は、上述した状態表示部５４０（図２および図７参照）の機能を果たし例えば文字表示可能な表示手段の機能と、保守員によるプログラムカウンタ１１１の値に関する進行履歴の記憶処理の動作を禁止する旨（動作否）の設定など、所定の入力情報を入力する入力手段の機能とを有している。
【０１７０】
なお、通信Ｉ／Ｆ３８２は、情報処理装置など外部装置との通信を行うためのインタフェースである。
【０１７１】
この通信Ｉ／Ｆ３８２および操作パネル４１０以外のデータ処理装置１の機能を果たす部分（構成要素）は、図１４の情報処理装置３００の場合と同様なので、ここではその説明については省略する。
【０１７２】
画像形成装置４００のＣＰＵ３１０により実行される所定の処理としては、例えば印刷データの展開処理（ラスタライズ処理）、色変換や階調補正などの画像処理などが挙げられる。
【０１７３】
ところで、図１５に示す画像形成装置４００と図１４に示した情報処理装置３００とが通信回線を介して接続されるようにすることで、画像形成システムを構築することができる。この場合、画像形成システムの情報処理装置３００および画像形成装置４００のそれぞれにおいて、所定の処理の実行中に意図しない異常が発生した場合に当該異常の発生原因の究明に寄与する情報を得ることができる。
【０１７４】
本願明細書において、データ処理プログラムを含む上記所定のプログラムを記録媒体としてのＲＯＭ（プログラムＲＯＭ）に記録する実施形態として説明したが、当該所定のプログラムを次のようにして提供することも可能である。
【０１７５】
すなわち、上記所定のプログラムをハードディスク等の記憶装置に格納しておき、ＡＳＩＣ（あるいはＣＰＵ）が、この所定のプログラムをこの記憶装置から主記憶装置へローディングして実行するようにしてもよい。
【０１７６】
また、上記所定のプログラムを、ＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭ、ＭＯ（光磁気ディスク）、フレキシブルディスク、などのコンピュータ読み取り可能な記録媒体に格納して配布するようにしてもよい。この場合、その記録媒体に記録された所定のプログラムを情報処理装置（または画像形成装置）がインストールした後、この所定のプログラムをＡＳＩＣ（あるいはＣＰＵ）が実行するようにする。この所定のプログラムのインストール先としては、ＲＡＭ等のメモリやハードディスクなどの記憶装置がある。そして、情報処理装置（または画像形成装置）は、必要に応じてこの記憶装置に記憶した所定のプログラムを主記憶装置にローディングして実行する。
【０１７７】
さらには、情報処理装置（または画像形成装置）を通信回線（例えばインターネット）を介してサーバ装置あるいはホストコンピュータと接続するようにし、当該情報処理装置（または画像形成装置）が、サーバ装置あるいはホストコンピュータから上記所定のプログラムをダウンロードした後、この所定のプログラムを実行するようにしてもよい。この場合、この所定のプログラムのダウンロード先としては、ＲＡＭ等のメモリやハードディスクなどの記憶装置（記録媒体）がある。そして、当該情報処理装置（または画像形成装置）が、必要に応じてこの記憶装置に記憶された上記所定のプログラムを主記憶装置にローディングして実行するようにする。
【産業上の利用可能性】
【０１７８】
本発明は、データ処理装置を有する情報処理装置とデータ処理装置を有する画像形成装置とが通信回線を介して接続される画像形成システムに適用することができる。
【図面の簡単な説明】
【０１７９】
【図１】実施の形態１に係るデータ処理装置の機能構成を示すブロック図である。
【図２】実施の形態１に係る異常判定処理部の詳細な機能構成を示すブロック図である。
【図３】実施の形態１に係る異常判定処理部による異常判定処理の処理手順を示すフローチャートである。
【図４】実施の形態１に係る異常判定処理において適用される異常判定基準を説明する図である。
【図５】実施の形態１に係る状態表示部に表示される異常状態の表示内容の一例を示す図である。
【図６】実施の形態２に係るデータ処理装置の機能構成を示すブロック図である。
【図７】実施の形態２に係る異常判定処理部の詳細な機能構成を示すブロック図である。
【図８】実施の形態２に係る異常判定処理部による異常判定処理の処理手順を示すフローチャートである。
【図９】実施の形態２に係る異常判定処理において適用される異常判定基準を説明する図である。
【図１０】実施の形態２に係る状態表示部に表示される異常状態の表示内容の一例を示す図である。
【図１１】実施の形態３に係るデータ処理装置の異常判定処理部による異常判定処理の処理手順を示すフローチャートである。
【図１２】実施の形態３に係るデータ処理装置の異常判定処理部による異常判定処理の処理手順を示すフローチャートである。
【図１３】実施の形態１〜３の何れかの実施の形態のデータ処理装置を有する情報処理装置の構成および実施の形態１〜３の何れかの実施の形態のデータ処理装置を有する画像形成装置の構成をそれぞれ示す構成図である。
【図１４】実施の形態１〜３の何れかの実施の形態のデータ処理装置を有する情報処理装置のハードウェア構成を示す構成図である。
【図１５】実施の形態１〜３の何れかの実施の形態のデータ処理装置を有する画像形成装置のハードウェア構成を示す構成図である。
【符号の説明】
【０１８０】
１  データ処理装置
１０  処理装置
２０  記憶部（不揮発性）
３０  記憶部（揮発性）
４０  主電源
５０  異常判定処理部
１１１  プログラムカウンタ
３００  情報処理装置
３１０  ＣＰＵ
３２０  ＲＯＭ
３３０  ＲＡＭ
３４０  プログラムＲＯＭ
３４０Ａ  データ処理プログラム
３５０  ＡＳＩＣ
３６０，５２１  時計部
３７０  不揮発性メモリ
３８０，５６０  外部記憶装置
３８１  インタフェース
３８２  通信インタフェース
３９０  表示装置
３９１  入力装置
４００  画像形成装置
４１０  操作パネル
４２０  画像出力装置
５１０  プログラムカウンタ記憶処理部
５２０  電源ＯＦＦ−ＯＮ判定部
５２２  電源ＯＦＦ／ＯＮ計測部
５２３  電源ＯＦＦ時間算出部
５２４  電源ＯＦＦ時間比較部
５３０  プログラムカウンタ異常判定部
５４０  状態表示部
５５０  不揮発性記憶部
【図１】
2010049407.tif 000003
【図２】
2010049407.tif 000004
【図３】
2010049407.tif 000005
【図４】
2010049407.tif 000006
【図５】
2010049407.tif 000007
【図６】
2010049407.tif 000008
【図７】
2010049407.tif 000009
【図８】
2010049407.tif 000010
【図９】
2010049407.tif 000011
【図１０】
2010049407.tif 000012
【図１１】
2010049407.tif 000013
【図１２】
2010049407.tif 000014
【図１３】
2010049407.tif 000015
【図１４】
2010049407.tif 000016
【図１５】
2010049407.tif 000017