(57)【要約】【課題】異常動作が発生するまでにＣＰＵがどのように動作してきたのか、どのような異常が発生したのかを時系列的に保存した履歴情報を、保護する仕組みを実現すること。【解決手段】情報処理端末１は、バス接続手段１００により接続された制御部１０、２０とから構成される。制御部１０において、時刻取得手段１０６、履歴保存手段１０１によりＣＰＵ１１がどのように動作してきたのかを時系列的に履歴情報バッファ３０に格納する。異常検出手段１０２により異常発生を検知した場合、異常通知手段１０３によりその旨を制御部２０に通知すると共に、バス接続手段１００によりバス１４とバス２５とを接続する。制御部２０において、履歴情報取得手段１０４によりメモリ１２に格納された履歴情報を取得し、履歴情報退避手段１０５により取得した履歴情報をメモリ２２に転送する。【選択図】      図１
2004310514.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上のＣＰＵを備えた情報処理端末において、
ＣＰＵが通常動作時にはその管理下においたメモリに、該ＣＰＵが処理する動作を履歴情報として記録する手段と、
ＣＰＵの処理に異常が発生した場合、この異常発生を異常が発生していないＣＰＵに通知する手段と、
異常の発生したＣＰＵ側が記録していた履歴情報を、異常の発生していないＣＰＵ側で読み出し、該読み出した履歴情報を、異常の発生していないＣＰＵが管理するメモリに記録させる手段とを、
備えたことを特徴とする情報処理端末。
【請求項２】
２つ以上のＣＰＵを備えた情報処理端末において、
ＣＰＵが通常動作時にはその管理下においたメモリに、該ＣＰＵが処理する動作を履歴情報として記録する履歴情報保存手段と、
ＣＰＵの異常処理を検出する異常検出手段と、
異常が発生した旨を異常が発生していないＣＰＵに通知する異常通知手段と、
異常の発生したＣＰＵ側が記録していた履歴情報を、異常の発生していないＣＰＵ側に読み出す履歴情報取得手段と、
異常の発生していないＣＰＵ側で読み出した、異常の発生したＣＰＵ側が記録していた履歴情報を、該履歴情報を破壊されないように、異常の発生していないＣＰＵが管理するメモリに記録させる履歴情報退避手段とを備え、
異常発生時に、履歴情報を退避させるようにしたことを特徴とする情報処理端末。
【請求項３】
請求項２記載の情報処理端末において、
前記メモリは、複数のＣＰＵからアクセス可能な共用メモリと、単一のＣＰＵからしかアクセスできない専有メモリとを含み、前記履歴情報保存手段は履歴情報を共用メモリに保存し、前記履歴情報退避手段は、前記履歴情報取得手段により取得した履歴情報を、異常の発生していないＣＰＵが管理する専用メモリに退避させるようにしたことを特徴とする情報処理端末。
【請求項４】
請求項３記載の情報端末装置において、
前記共用メモリとバスＡにより接続したＣＰＵの内部には、このＣＰＵと他のＣＰＵとを接続するバスＢを、前記バスＡと接続／切断させる機能をもつバス接続手段が設けられたことを特徴とする情報処理端末。
【請求項５】
請求項３記載の情報端末装置において、
前記共有メモリにおける履歴情報の記録は、前記共有メモリに設けたリングバッファに行なわれることを特徴とする情報処理端末。
【請求項６】
請求項２ないし５の何れか１項に記載の情報処理端末において、
前記履歴情報保存手段は、前記異常検出手段により検出した異常の内容を履歴情報に変換して保存させる機能を具備し、異常発生の直接要因を保存するようにしたことを特徴とする情報処理端末。
【請求項７】
請求項２ないし５の何れか１項に記載の情報処理端末において、
前記履歴情報保存手段は、タスク間通信の内容を履歴情報としてメモリに記録する機能を具備したことを特徴とする情報処理端末。
【請求項８】
請求項２ないし７の何れか１項に記載の情報処理端末において、
現在時刻情報を取得する時刻取得手段を備え、前記履歴情報保存手段の記録する履歴情報に現在時刻情報を含めるようにしたことを特徴とする情報処理端末。
【請求項９】
２つ以上のＣＰＵを備えた情報処理端末における履歴情報保存方法であって、
ＣＰＵが通常動作時にはその管理下においたメモリに、該ＣＰＵが処理する動作を履歴情報として記録し、
ＣＰＵの処理に異常が発生した場合、この異常発生を異常が発生していないＣＰＵに通知し、
異常の発生したＣＰＵ側が記録していた履歴情報を、異常の発生していないＣＰＵ側で読み出し、該読み出した履歴情報を、異常の発生していないＣＰＵが管理するメモリに記録させる、
ようにしたことを特徴とする履歴情報保存方法。
【請求項１０】
請求項９記載の履歴情報保存方法において、
複数のＣＰＵからアクセス可能な共用メモリと、単一のＣＰＵからしかアクセスできない専有メモリとをもち、前記履歴情報を共用メモリに保存し、異常発生時には、履歴情報を異常の発生していないＣＰＵが管理する専用メモリに退避させるようにしたことを特徴とする履歴情報保存方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理端末および履歴情報保存方法に係り、特に、２つ以上のＣＰＵを備えた情報処理端末における、異常発生時の履歴情報保持を実現するための技術に関する。
【０００２】
【従来の技術】
近年、携帯電話などの情報処理端末の多機能化が進み、インターネットやＥメール、ＪＡＶＡ（登録商標）などの機能が利用可能となるなど、パソコン等と同様の操作性、高機能が実現されつつあり、日常生活に欠かせないものとなりつつある。
【０００３】
ところが、上記のように高機能な情報処理端末においては、ソフトウェアおよびハードウェアが複雑であるため、予期しない不備により異常動作が発生する場合がある。情報処理端末において異常動作が発生すると、あらかじめ登録しておいた重要な情報が消失するなどの重大な問題が発生するため、できるだけ異常動作が起きないように、ソフトウェアおよびハードウェアの改善をなしておく必要がある。異常動作が発生した際に使用者に通知するための仕組みとして、メインＣＰＵとサブＣＰＵで相互の動作を監視し、異常発生の場合、リセット信号を出力し初期状態に戻すようにした技術が知られている（特許文献１参照）。
【０００４】
【特許文献１】
特開２００２−１１７４７４号公報
【０００５】
【発明が解決しようとする課題】
しかしながら、上記特許文献１に記載された技術においては、異常発生の場合、リセット信号を出力し初期状態に戻すようにしているので、時系列的にどのような動作を実行しているときに、どのような異常が発生したのかを、捉えることはできない。また、異常が発生したときに、せっかく保存した履歴情報が、ＣＰＵの誤動作により誤って破壊される虞もある。
【０００６】
本発明の目的は、異常動作が発生するまでにＣＰＵがどのように動作してきたのか、および、どのような異常が発生したのかを、メモリに履歴情報として時系列的に保存しておき、異常発生のタイミングで、履歴情報を異常とは無関係な個所に設けられた別のメモリに退避させ、履歴情報を安全に保護する仕組みを提供することにある。
【０００７】
【課題を解決するための手段】
上記した目的を達成するため、本発明による情報処理端末は、複数の制御部を含んで構成され、各制御部は、演算・制御を実施するＣＰＵと、演算・制御結果を保存するメモリと、それらを接続するバスとを含んで構成される。いま、説明の便宜上、主たる機能を実行する制御部を制御部Ａ、従たる機能を実行する制御部を制御部Ｂとする。バス接続手段により、制御部Ａと制御部ＢのバスはＣＰＵ内部で接続制御され、制御部ＢのＣＰＵが、制御部Ａのメモリをアクセスすることが可能となっている。つまり、制御部Ａのメモリは、共用メモリとして使用することが可能となっている。
【０００８】
制御部Ａ側においては、時刻取得手段により現在時刻を取得し、履歴情報保存手段により、タスク間通信の内容と現在時刻とから履歴情報を作成し、メモリに記録する。異常検出手段は、制御部Ａの動作に異常がないかどうかを監視し、制御部Ａの動作に異常が発生した場合には、これを検出する。このとき、履歴情報保存手段は、異常検出手段が検出した異常の内容に現在時刻を付加して履歴情報を作成し、メモリに記録する。異常通知手段は、異常検出手段が異常を検出した時に、制御部Ａで異常が発生したことを、異常の発生していない制御部Ｂに対して通知する。
【０００９】
これを受けて、制御部Ｂ側においては、バス接続手段によって接続制御された制御部Ａのバスと制御部Ｂのバスとを通じて、履歴情報取得手段により、制御部Ａのメモリに記録されている前記履歴情報を、制御部Ｂ側に読み出す。そして、履歴情報退避手段により、制御部Ａのメモリから読み出した履歴情報を、制御部Ｂのメモリに保存する。
【００１０】
以上のような作用により、異常動作が発生するまでにＣＰＵがどのように動作してきたのか、および、どのような異常が発生したかのを、履歴情報として時系列的に保存することが可能となる。また、異常発生のタイミングで、履歴情報を異常の発生していないＣＰＵの管轄するメモリに退避させ、履歴情報を安全に保護することが可能となる。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を参照して説明する。
【００１２】
図１〜図５は、本発明の一実施形態（以下、本実施形態と記す）による、例えば携帯電話機などの情報処理端末に係り、図１は、本実施形態の情報処理端末のハードウェア構成を示す図である。本実施形態の情報処理端末は、２組のＣＰＵ・メモリ・バス等を含んで構成される情報処理端末への適用例である。
【００１３】
図１に示すように、本実施形態の情報処理端末１は、２つの制御部１０、２０を含んで構成されている。各制御部１０、２０は、ＣＰＵ、メモリ、入出力デバイス、バスを含んで構成され、互いに独立して情報処理を行うことが可能となっている。２つの制御部１０、２０は、バス２５により互いに接続されており、本実施形態では、制御部１０が主たる機能を実行する制御部となっており、制御部２０が従たる機能を実行する制御部となっているが（例えば、制御部１０が各種アプリケーションプログラムを実行する機能をもち、制御部２０が通信制御を実行する機能をもつものとなっているが）、本発明の適用はこれに限られるものではない。
【００１４】
制御部１０は、バス接続手段１００を備えるＣＰＵ１１と、メモリ１２と、入／出力デバイス１３と、それらを接続するバス１４とを含んで構成されている。バス接続手段１００は、ＣＰＵ１１に実装された機能であり、制御部１０と制御部２０とを接続するバス２５と、バス１４との接続を、ソフトウェア的に制御する機能である。ＣＰＵ１１は、バス接続手段１００を持つＣＰＵであり、メモリ１２に記録されたプログラム・データを読み出し、そのプログラムにしたがって、メモリ１２、入／出力デバイス１３の制御や、タスク処理を実施する。メモリ１２は、情報を記憶するデバイスであり、バス１４を介してＣＰＵ１１と接続されている。入／出力デバイス１３は、情報処理端末１に対し使用者とのインターフェースとなり、情報を入出力可能とする装置であり、バス１４を介してＣＰＵ１１と接続されている。
【００１５】
制御部２０は、ＣＰＵ２１と、メモリ２２と、入／出力デバイス２３と、それらを接続するバス２４とを含んで構成されている。ＣＰＵ２１は、メモリ２２に記録されたプログラム・データを読み出し、そのプログラムにしたがって、メモリ２２、入／出力デバイス２３の制御や、タスク処理を実施する。メモリ２２は、情報を記憶するデバイスであり、バス２４を介してＣＰＵ２１と接続されている。入／出力デバイス２３は、情報処理端末１に対し使用者とのインターフェースとなり、情報を入出力可能とする装置であり、バス２４を介してＣＰＵ２１と接続されている。
【００１６】
メモリ１２には、時刻取得手段１０６、履歴情報保存手段１０１、異常検出手段１０２、異常通知手段１０３を、それぞれソフトウェア的に具現化ために、これらの機能を記述したプログラムが格納されている。
【００１７】
また、メモリ２２には、履歴情報取得手段１０４、履歴情報退避手段１０５を、それぞれソフトウェア的に具現化するために、これらの機能を記述したプログラムが格納されている。
【００１８】
次に、本実施形態における履歴情報について、図２、図３を用いて説明する。
【００１９】
図２に示すように、履歴情報３１〜３５は、情報処理端末１が動作中に、後述する履歴情報保存処理１１００により、メモリ１２に設けた履歴情報バッファ３０に格納される情報である。この履歴情報バッファ３０は、履歴情報バッファ３０の先頭から順次保存されるリングバッファとなっており、履歴情報３５の箇所に格納された後、次の履歴情報は、履歴情報３１の箇所に記録される。したがって、このリングバッファ（履歴情報バッファ３０）には、履歴情報３１〜３５は一定数以上は保存することができないが、もっとも最近保存された履歴情報３１〜３５が、メモリ１２上に残される。また、どんなに保存しても、履歴情報バッファ３０で必要なメモリ量を超えることはない。
【００２０】
履歴情報バッファ３０に格納される各履歴情報３１〜３５は、履歴情報４０のような構造をもつ。すなわち、履歴情報４０は、履歴情報の種別を表す種別５１と、履歴情報が保存された時刻を表す時刻５２と、履歴情報の内容を表す履歴情報本体５３とから構成される。
【００２１】
種別５１は、後述の図３における種別６１、７１、８１、９１であり、履歴情報本体５３に格納されている情報の種類を表すユニークな値を持つ。具体的には、処理情報の内容の場合は種別（ＪＯＢ）６１、タスク間メッセージの送信履歴の場合は種別（ＭＳＧ）７１、システムが異常状態になったときの異常情報の場合は種別（ＤＷＮ）８１、履歴情報の終端の場合は種別（ＥＮＤ）９１といったようなものであり、別途処理によって別の種別を用いてもよい。
【００２２】
時刻５２は、履歴情報４０が履歴情報バッファ３０に保存された瞬間の時刻を表す情報であり、ある時刻からの経過時間を表す値や、標準時を表す値など、時刻を特定できる情報であればよい。
【００２３】
履歴情報本体５３は、履歴情報４０がどのような情報であるかを区別する情報である。これを、図３を用いて説明する。
【００２４】
図３は、履歴情報４０のバリエーションを具体的に模式化したものである。履歴情報４１は、処理情報の内容を表す履歴情報であり、種別（ＪＯＢ）６１と、時刻６２と、処理情報６３とからなる。種別（ＪＯＢ）６１は、該履歴情報４１が処理の内容であることを識別する数値あるいは文字列であり、履歴情報４０の履歴情報本体５３が、処理情報６３であることを示す識別子である。時刻６２は、履歴情報４１が履歴情報バッファ３０に保存された瞬間の時刻を表す情報であり、ある時刻からの経過時間を表す値や、標準時を表す値など時刻を特定できる情報であればよい。処理情報６３は、情報処理端末１に実装されたプログラムやタスクの動作がどのように実施されたかを表す情報であり、たとえば処理内容を細かく識別する数値であったり、文字列により処理内容を記述した情報であってもよい。
【００２５】
履歴情報４２は、タスク間メッセージの送信履歴を表す履歴情報であり、種別（ＭＳＧ）７１と、時刻７２と、送信元タスクＩＤ７３と、送信先タスクＩＤ７４と、メッセージＩＤ７５とから構成される。種別（ＭＳＧ）７１は、該履歴情報４２がタスク間メッセージの送信履歴を表す情報であることを識別する数値あるいは文字列であり、履歴情報４０の履歴情報本体５３が、送信元タスクＩＤ７３、送信先タスクＩＤ７４、メッセージＩＤ７５から構成されることを示す識別子である。時刻７２は、履歴情報４２が履歴情報バッファ３０に保存された瞬間の時刻を表す情報であり、ある時刻からの経過時間を表す値や、標準時を表す値など時刻を特定できる情報であればよい。送信元タスクＩＤ７３、送信先タスクＩＤ７４は、共に制御部１０で実行される処理の１単位であるタスクを識別する識別子であり、ユニークな数値あるいは文字列などタスクを識別できるものであればなんでもよい。要するに、メッセージが特定のタスクから特定のタスクに対し送られたことを識別できる情報である。メッセージＩＤ７５は、該履歴情報４２の示すタスク間メッセージの種別を表す識別子であり、ユニークな数字あるいは文字列など、タスク間でどのようなメッセージが送信されたかを識別できる情報であればよい。
【００２６】
履歴情報４３は、制御部１０でなんらかの異常が発生した場合の履歴を表す履歴情報であり、種別（ＤＷＮ）８１と、時刻８２と、ダウン要因８３と、ダウン情報８４とから構成される。種別（ＤＷＮ）８１は、該履歴情報４３が制御部１０でのなんらかの異常発生を表す情報であることを識別する数値あるいは文字列であり、履歴情報４０の履歴情報本体５３が、ダウン要因８３とダウン情報８４とから構成されることを示す識別子である。時刻８２は、履歴情報４３が履歴情報バッファ３０に保存された瞬間の時刻、すなわち異常発生の時刻を表す情報であり、ある時刻からの経過時間を表す値や、標準時を表す値など時刻を特定できる情報であればよい。ダウン要因８３は、制御部１０で発生した異常が、どのようなものであるかを識別する情報であり、ユニークな数値あるいは文字列などタスクを識別できるものであればなんでもよい。要するに、異常が何であるか、あるいは異常の原因がどこであるかを識別できる情報である。ダウン情報８４は、ダウン要因８３に依存し、制御部１０で発生した異常の詳しい情報を表す識別子であり、異常の内容をより詳細に特定できる情報であればよい。
【００２７】
履歴情報４４は、履歴情報４１、履歴情報４２、履歴情報４３を履歴情報バッファ３０に書き込んだ際に、どこまで書き込んだかを表すために保存される冗長情報であり、種別（ＥＮＤ）９１と、時刻９２と、Ｒｅｓｅｒｖｅ９３とから構成される。リングバッファは、情報を順次保存していってリングバッファの最大サイズまで保存した後は、先に書き込んだ情報に上書きするようにした情報保存方式である。この履歴情報４４を、その他の履歴情報を書き込んだ次の個所に同時に保存しておくことにより、リングバッファの中に格納された情報が、どれが最新でどれが最古であるかを識別することが可能となる。種別（ＥＮＤ）９１は、この終端を表す冗長な履歴情報であることを表す識別子であり、ユニークな数値あるいは文字列で表現される。時刻９２は、履歴情報４４が履歴情報バッファ３０に保存された瞬間の時刻を表す情報であり、ある時刻からの経過時間を表す値や、標準時を表す値など時刻を特定できる情報であればよい。Ｒｅｓｅｒｖｅ９３は、履歴情報本体５３の場所を表す冗長情報であり、特にどのような情報が格納されるか特定しない。要するに、履歴情報４０と履歴情報４４とのサイズを等しくするものであればよい。
【００２８】
次に、本実施形態の情報処理端末１において、異常発生のタイミングで、履歴情報を異常の発生していないＣＰＵの管轄するメモリに退避させ、履歴情報を安全に保護するようにした動作を、図４を用いて説明する。
【００２９】
まず、制御部１０、制御部２０を起動開始して、システムを起動開始させる（ステップ１０００）。システムの起動処理において、制御部１０、制御部２０の初期化を行い、タスクを制御したり、異常検出する仕組みを提供するＯＳ（オペレーティングシステム）を、制御部１０、制御部２０でそれぞれ起動する（ステップ１００１）。このＯＳは、タスクとよばれる処理単位を制御し、起動・終了・停止などをマルチタスクで処理する能力や、また、なんらかの異常、たとえば０除算や不正なメモリアクセスなどを検出し、異常処理を回復する処理を自動的に実行する能力を持つプログラムである。なお、本実施形態では、制御部１０、制御部２０とで、別々のＯＳを同時に立ち上げるようにしているが、別個に立ち上げるようにしてもよい。
【００３０】
ＯＳは、各種タスクを生成、起動し（ステップ１００２）、該タスクの実行を開始する（ステップ１００３）。これらタスクは、互いにメッセージにより通信を行い、マルチタスク処理に必要な同期処理や情報伝達を行う。このＯＳによる処理動作は、制御部１０および制御部２０でそれぞれ行なわれるが、ここでは、説明の簡単化のために、履歴情報の逐次生成と逐次記録とは、制御部１０でのみで行なわれるものとする。制御部１０側では、上記のタスク間のメッセージ通信の内容を取得し（ステップ１００５）、履歴情報４２の送信元タスクＩＤ７３、送信先タスクＩＤ７４、メッセージＩＤ７５を保存し、履歴情報４０の履歴情報本体５３を引数として後述の履歴情報保存処理１１００を呼び出し（ステップ１１００）、タスク処理実行を継続する（ステップ１００３）。また、同時に、タスクによる処理の内容を取得し（ステップ１００４）、履歴情報４１の処理情報６３を保存し、履歴情報４０の履歴情報本体５３を引数として後述の履歴情報保存処理１１００を呼び出し（ステップ１１００）、タスク処理実行を継続する（ステップ１００３）。
【００３１】
また、制御部１０で異常が発生しているか否かを監視し（例えば、例外処理があったタイミングで異常が発生しているか否かを監視し；ステップ１０１０）、異常発生が検知されなければ（ステップ１０１１でｎｏなら）、異常発生の監視を継続する（ステップ１０１０）。もし、異常発生を検知したならば（ステップ１０１１でｙｅｓなら）、その異常の内容を取得し（ステップ１０１２）、履歴情報４３のダウン要因８３、ダウン情報８４を保存し、履歴情報４０の履歴情報本体５３を引数として後述の履歴情報保存処理１１００を呼び出す（ステップ１１００）。異常発生を検知した場合には、異常が発生したことを、制御部１０が制御部２０に通知し（ステップ１０１３）、いままでの動作で保存した履歴情報を退避させるように、制御部２０側に指示をする。
【００３２】
これを受けて、制御部２０は、制御部１０のＣＰＵ１１に内蔵されたバス接続手段１００により、バス２５とバス１４とを接続する（２００１）。バス接続手段１００は、バス１４とバス２５とを論理的に接続する手段であり、制御部２０のＣＰＵ２１がバス１４の制御権を得て、メモリ１２をアクセスすることができればよい。次に、制御部１０のメモリ１２に格納されている履歴情報バッファ３０の全領域を、ＣＰＵ２１側から読み出し（ステップ２００２）、この読み出したデータをメモリ２２上に設けた履歴情報バッファ３０と同じ大きさの領域にコピーし（ステップ２００３）、これによって、退避処理が終了する。履歴情報の退避処理が済むと、システムは制御部１０の異常回復の処理を処理を行なったり、制御部２０が制御部１の一部処理の代行を行なったりする。
【００３３】
なお、メモリ２２の履歴情報バッファ領域にコピーされた履歴情報は、入／出力デバイス２３によって後で読み出すことが可能となっている。
【００３４】
以上のような機能の動作により、情報処理端末１において、異常発生のタイミングで、履歴情報を異常の発生していないＣＰＵの管轄するメモリに退避させ、履歴情報を安全に保護する機能を実現することができる。
【００３５】
次に、制御部１０において異常が発生するまでに、ＣＰＵ１１がどのように動作してきたか、および、どのような異常が発生したかを、履歴情報として時系列的に保存する動作（すなわち、図４の履歴情報保存処理１１００の詳細動作）を、図５を用いて説明する。
【００３６】
まず、履歴情報保存処理１１００を開始すると、メモリ１２上に一時的に履歴情報を格納するための一時保存領域４０’（図示せず）を取得する（ステップ１１０１）。この一時保存領域４０’は、前述の履歴情報４０と同じ構造をもつ。この履歴情報保存処理１１００を呼び出したステップが、前記ステップ１００４である場合、一時保存領域４０’の種別５１に種別（ＪＯＢ）を保存し、また、呼び出したステップが前記ステップ１００５である場合、種別５１に種別（ＭＳＧ）を保存し、また、呼び出したステップが前記ステップ１０１２である場合、種別５１に種別（ＥＲＲ）を保存する（ステップ１１０２）。
【００３７】
次に、時刻取得手段１０６から現在の時刻を取得し、一時保存領域４０’の時刻５２に保存する（ステップ１１０３）。また、ステップ１００４、ステップ１００５、ステップ１０１２から渡された履歴情報本体５３を引数として受け取り（ステップ１１０４）、保存する履歴情報を生成する。次に、履歴情報バッファ３０の、現在の格納場所を取得し（ステップ１１０５）、その箇所が履歴情報バッファ３０（リングバッファ）の一番下であるか否かを判断して（ステップ１１０６）、もし一番したであれば、リングバッファの先頭を現在の格納場所として（ステップＳ１１０８）、ステップ１１０５を実施する。もし一番下でなければ、一時保存領域４０’の内容を現在の格納場所に転送して、履歴情報を履歴情報バッファ３０に格納し、現在の格納場所を、履歴情報バッファ３０の１つ下の領域とする（ステップＳ１１０９）。
【００３８】
次に、格納した一時保存領域４０’の種別５１が種別（ＥＮＤ）でなければ（ステップＳ１１１０でｎｏなら）、一時保存領域４０’の種別５１に登録する種別を種別（ＥＮＤ）として（ステップ１１１１）、ステップ１１０２を呼び出し、処理を継続する。もしステップ１１１０で種別（ＥＮＤ）であった場合（ステップ１１１０でｙｅｓなら）、履歴情報保存処理１１００を終了する。
【００３９】
以上のような処理により、制御部１０において異常動作が発生するまでにＣＰＵ１１がどのように動作してきたか、および、どのような異常が発生したかを、履歴情報として時系列的に保存する動作を実現することができる。
【００４０】
なお、上述してきた実施形態では、制御部１０を主たる機能を実行する制御部とし、制御部２０を従たる機能を実行する制御部として、制御部１０側のメモリ１２を、制御部１０のＣＰＵ１１と制御部２０のＣＰＵ２１とがアクセス可能な共用メモリとし、制御部２０側のメモリ２２は、制御部２０のＣＰＵ２１のみがアクセス可能なＣＰＵ２１の専有メモリとした例を示した。しかしながら、本発明の適用はこれに限られるものではなく、２つの制御部１０、２０の機能をほぼ対等なものにし、それぞれの制御部１０、２０に、メモリ１２と同様な共用メモリとメモリ２２と同様な専有メモリとをそれぞれ具備させ、かつ、それぞれの制御部１０、２０のＣＰＵに、他のＣＰＵから自身側の共用メモリへのアクセスを許可できるバス接続手段を設けて、何れか一方側の制御部で異常が発生すると、その異常が発生した制御部側の共用メモリに記憶されている履歴情報を、他方側の制御部の専有メモリに退避させるようにしてもよい（この場合、前記した手段１０１〜１０６は、両方の制御部に具備される）。さらに、このような同等の機能をもつ制御部を３つ以上有するものとし、何れか１つの制御部で異常が発生すると、その異常が発生した制御部の共用メモリに記憶されている履歴情報を、他の何れかの制御部の専有メモリに退避させるようにしてもよい。
【００４１】
【発明の効果】
以上のように本発明によれば、情報処理端末において、異常動作が発生するまでにＣＰＵがどのように動作してきたのか、どのような異常が発生したのかを履歴情報として時系列的に保存すると共に、該履歴情報を確実に保護する仕組みを実現することができ、以って、できるだけ異常動作が起きないようにソフトウェアやハードウェアの改善をなすための履歴情報を、安全に退避させることが可能となる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る情報処理端末のハードウェア構成を示すブロック図である。
【図２】本発明の一実施形態に係る情報処理端末における、履歴情報バッファおよび履歴情報の例を示す説明図である。
【図３】本発明の一実施形態に係る情報処理端末における、履歴情報の詳細構成の例を示す説明図である。
【図４】本発明の一実施形態に係る情報処理端末における、履歴情報を保存し、退避させる処理フロー例を示すフローチャートである。
【図５】図４中のステップ１１００の処理の詳細例を示すフローチャートである。
【符号の説明】
１  情報処理端末
１０  制御部
１１  ＣＰＵ
１２  メモリ
１３  入／出力デバイス
１４  バス
２０  制御部
２１  ＣＰＵ
２２  メモリ
２３  入／出力デバイス
１０１  履歴情報保存手段
１０２  異常検出手段
１０３  異常通知手段
１０４  履歴情報取得手段
１０５  履歴情報退避手段
１０６  時刻取得手段
３０  履歴情報バッファ
３１〜３５  履歴情報
４０  履歴情報
５１  種別
５２  時刻
５３  履歴情報本体
【図１】
2004310514.tif 000003
【図２】
2004310514.tif 000004
【図３】
2004310514.tif 000005
【図４】
2004310514.tif 000006
【図５】
2004310514.tif 000007