(57)【要約】【課題】  障害の状態に到るまでの処理経過情報をオーバヘッド少なく収集することのできる障害解析用情報収集方式を提供する。【解決手段】  演算処理装置１０１上で稼働する複数のデータ処理タスク１１０−１、１１０−２で主記憶装置１０２上の１つの履歴記録部２２０を共用する。各データ処理タスク１１０−１、１１０−２で異常が検出されない期間中、データ処理タスク１１０−１、１１０−２の処理経過情報は、履歴記録部２２０にラップアラウンド方式で記録される。何れかのデータ処理タスク１１０−１、１１０−２で異常が検出されると、履歴記録部２２０に記録された処理経過情報が外部記憶装置１０３に出力される。【選択図】  図３
2006079485.tif 000002
【特許請求の範囲】
【請求項１】
データ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、
前記データ処理タスクで異常が検出されない期間中、前記データ処理タスクの処理経過情報を主記憶装置上のラップアラウンド方式の履歴記録部に記録する手段と、異常が検出された際に前記履歴記録部に記録された処理経過情報を外部記憶装置へ出力する手段とを前記データ処理タスクが有することを特徴とする電子計算機における障害解析用情報収集方式。
【請求項２】
複数の前記データ処理タスクで同じ前記履歴記録部を共用することを特徴とする請求項１記載の電子計算機における障害解析用情報収集方式。
【請求項３】
演算処理装置と主記憶装置と外部記憶装置とを備え、前記演算処理装置上で複数のデータ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、
ラップアラウンド方式の履歴記録部を前記主記憶装置に前記データ処理タスク対応に備え、
前記データ処理タスクは、入力データを入力して業務処理を実行し結果を出力するデータ処理モジュールと、自タスクに対応する前記履歴記録部への処理経過情報の記録および前記履歴記録部に記録された処理経過情報の前記外部記憶装置への出力を行う情報収集モジュールとを備え、
前記データ処理モジュールに、処理経過情報の記録要求を自タスクの前記情報収集モジュールに出力する記録要求部と、自タスクにおける異常検出時に処理経過情報の出力要求を自タスクの前記情報収集モジュールに出力する掃出し要求部とを備え、
前記情報収集モジュールに、自タスクの前記データ処理モジュールから出力された記録要求に従って処理経過情報を自タスクに対応する前記履歴記録部に記録する記録部と、自タスクの前記データ処理モジュールから出力された出力要求に従って自タスクに対応する前記履歴記録部に記録された処理経過情報を前記外部記憶装置に出力する出力部とを備えることを特徴とする電子計算機における障害解析用情報収集方式。
【請求項４】
演算処理装置と主記憶装置と外部記憶装置とを備え、前記演算処理装置上で複数のデータ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、
ラップアラウンド方式の履歴記録部を、前記複数のデータ処理タスクで共有される前記主記憶装置上の共有領域に前記複数のデータ処理タスク対応に備え、
前記データ処理タスクは、入力データを入力して業務処理を実行し結果を出力するデータ処理モジュールと、自タスクに対応する前記履歴記録部への処理経過情報の記録および前記履歴記録部に記録された処理経過情報の前記外部記憶装置への出力を行う情報収集モジュールとを備え、
前記データ処理モジュールに、処理経過情報の記録要求を自タスクの前記情報収集モジュールに出力する記録要求部と、自タスクにおける異常検出時に処理経過情報の出力要求を自タスクの前記情報収集モジュールに出力する掃出し要求部とを備え、
前記情報収集モジュールに、自タスクの前記データ処理モジュールから出力された記録要求に従って、排他制御を行って、処理経過情報を自タスクに対応する前記履歴記録部に記録する記録部と、自タスクの前記データ処理モジュールから出力された出力要求に従って、排他制御を行って、自タスクに対応する前記履歴記録部に記録された処理経過情報を前記外部記憶装置に出力する出力部とを備えることを特徴とする電子計算機における障害解析用情報収集方式。
【請求項５】
前記処理経過情報は、データ処理タスクの入力データ、時刻データおよびタスクＩＤを含むことを特徴とする請求項１乃至４の何れか１項に記載の電子計算機における障害解析用情報収集方式。
【請求項６】
前記データ処理タスクはユーザタスクであることを特徴とする請求項１乃至４の何れか１項に記載の電子計算機における障害解析用情報収集方式。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータ処理タスクが稼働する電子計算機における障害解析用情報収集方式に関する。
【背景技術】
【０００２】
電子計算機に何らかの障害が発生した場合、障害の解析に役立つ情報を残すために、障害が検出された時の情報を外部記憶装置に出力することが行われている。
【０００３】
例えば特許文献１では、セグメンテーション・ページングによる仮想記憶機能を有する電子計算機システムにおいて、実行命令トレース手段が命令実行部で実行される命令を時系列に記録し、プログラム例外検出手段が実行命令の処理が正常に実行できないことを検出すると、障害情報格納手段が実行命令トレース手段に記録されている最新の実行命令情報から順に分析して、参照／更新されたセグメント情報を抽出し、そのセグメント情報をメモリから取り込んで二次記憶装置上の障害情報格納領域に格納し、さらにセグメント情報がメモリに存在せず二次記憶装置の仮想メモリ空間上に存在する場合には仮想メモリ空間から読み込んで二次記憶装置上の障害情報格納領域に格納する。
【０００４】
また特許文献２では、ＣＰＵ、メモリおよびＩ／Ｏ制御回路のそれぞれに、障害発生原因となったエラー要因を保持するエラーレジスタと各装置の動作状態を設定するためのモードレジスタなどから構成される障害情報レジスタを設け、電源がオフされたことを電源異常検出回路が検出すると、クロック発生回路がクロックを生成し、シフトモード設定回路が障害情報レジスタをシフトモードに設定することにより各障害情報レジスタに格納されている障害情報データを障害パスを介して不揮発性メモリ制御回路に転送し、不揮発性メモリ制御回路が転送されてきた障害情報データを不揮発性メモリに記憶する。
【０００５】
特許文献１および２と同様に障害発生時のメモリ内容を外部記録装置に出力する技術は特許文献３、４および５にも記載されている。
【特許文献１】特開平５−１５８７５３号公報
【特許文献２】特開平１１−１４９３９２号公報
【特許文献３】特開平４−２７８７４７号公報
【特許文献４】特開平５−１９７５８１号公報
【特許文献５】特開平８−３０５６５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来は上述したようにして障害の解析に役立つ情報を外部記憶装置に残すようにしているが、以下のような課題があった。
【０００７】
障害が検出された時の情報しか残らず、その状態に到るまでの処理経過情報が残らないため、障害の原因究明が困難になる場合がある。特に、多重処理環境でオンライン処理を行う場合、再現性に乏しいため障害に到るまでの処理経過情報が残っていないと障害の解析が困難になる。
【０００８】
障害に到るまでの処理経過情報を従来技術によって収集しようとすると、外部記憶装置への頻繁なアクセスが発生する。これは本来の業務処理にとってオーバヘッドになるため、即時性が要求されるオンラインシステムでは、業務処理能力が大幅に低下するという課題がある。
【０００９】
また特許文献１および２に見られるような障害情報収集では、複数のデータ処理タスクが稼働する電子計算機の場合、個々のデータ処理タスク単位あるいは複数のデータ処理タスク単位で障害情報を収集できないため、データ処理タスクで検出された障害の解析を容易に行うことができないという課題がある。
【００１０】
本発明はこのような事情に鑑みて提案されたものであり、その目的は、障害の状態に到るまでの処理経過情報をオーバヘッド少なく収集することのできる障害解析用情報収集方式を提供することにある。
【００１１】
本発明の別の目的は、複数のデータ処理タスクが稼働する電子計算機において、個々のデータ処理タスク単位あるいは複数のデータ処理タスク単位で、障害の状態に到るまでの処理経過情報をオーバヘッド少なく収集することのできる障害解析用情報収集方式を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の第１の電子計算機における障害解析用情報収集方式は、データ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、前記データ処理タスクで異常が検出されない期間中、前記データ処理タスクの処理経過情報を主記憶装置上のラップアラウンド方式の履歴記録部に記録する手段と、異常が検出された際に前記履歴記録部に記録された処理経過情報を外部記憶装置へ出力する手段とを前記データ処理タスクが有することを特徴とする。より具体的には、演算処理装置と主記憶装置と外部記憶装置とを備え、前記演算処理装置上で複数のデータ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、ラップアラウンド方式の履歴記録部を前記主記憶装置に前記データ処理タスク対応に備え、前記データ処理タスクは、入力データを入力して業務処理を実行し結果を出力するデータ処理モジュールと、自タスクに対応する前記履歴記録部への処理経過情報の記録および前記履歴記録部に記録された処理経過情報の前記外部記憶装置への出力を行う情報収集モジュールとを備え、前記データ処理モジュールに、処理経過情報の記録要求を自タスクの前記情報収集モジュールに出力する記録要求部と、自タスクにおける異常検出時に処理経過情報の出力要求を自タスクの前記情報収集モジュールに出力する掃出し要求部とを備え、前記情報収集モジュールに、自タスクの前記データ処理モジュールから出力された記録要求に従って処理経過情報を自タスクに対応する前記履歴記録部に記録する記録部と、自タスクの前記データ処理モジュールから出力された出力要求に従って自タスクに対応する前記履歴記録部に記録された処理経過情報を前記外部記憶装置に出力する出力部とを備えることを特徴とする。
【００１３】
本発明の第２の電子計算機における障害解析用情報収集方式は、第１の電子計算機における障害解析用情報収集方式において、複数の前記データ処理タスクで同じ前記履歴記録部を共用することを特徴とする。より具体的には、演算処理装置と主記憶装置と外部記憶装置とを備え、前記演算処理装置上で複数のデータ処理タスクが稼働する電子計算機における障害解析用情報収集方式において、ラップアラウンド方式の履歴記録部を、前記複数のデータ処理タスクで共有される前記主記憶装置上の共有領域に前記複数のデータ処理タスク対応に備え、前記データ処理タスクは、入力データを入力して業務処理を実行し結果を出力するデータ処理モジュールと、自タスクに対応する前記履歴記録部への処理経過情報の記録および前記履歴記録部に記録された処理経過情報の前記外部記憶装置への出力を行う情報収集モジュールとを備え、前記データ処理モジュールに、処理経過情報の記録要求を自タスクの前記情報収集モジュールに出力する記録要求部と、自タスクにおける異常検出時に処理経過情報の出力要求を自タスクの前記情報収集モジュールに出力する掃出し要求部とを備え、前記情報収集モジュールに、自タスクの前記データ処理モジュールから出力された記録要求に従って、排他制御を行って、処理経過情報を自タスクに対応する前記履歴記録部に記録する記録部と、自タスクの前記データ処理モジュールから出力された出力要求に従って、排他制御を行って、自タスクに対応する前記履歴記録部に記録された処理経過情報を前記外部記憶装置に出力する出力部とを備えることを特徴とする。
【００１４】
『作用』
本発明の第１の電子計算機における障害解析用情報収集方式にあっては、データ処理タスクで異常が検出されない期間中、データ処理タスクの処理経過情報は、主記憶装置上のラップアラウンド方式の履歴記録部に記録され、異常が検出された際、履歴記録部に記録された処理経過情報が外部記憶装置に出力される。
【００１５】
本発明の第２の電子計算機における障害解析用情報収集方式にあっては、各データ処理タスクで異常が検出されない期間中、データ処理タスクの処理経過情報は、主記憶装置上のラップアラウンド方式の履歴記録部に記録され、履歴記録部を共用する何れかのデータ処理タスクで異常が検出された際、履歴記録部に記録された処理経過情報が外部記憶装置に出力される。
【発明の効果】
【００１６】
本発明の第１の電子計算機における障害解析用情報収集方式によれば、個々のデータ処理タスク単位で、障害の状態に到るまでの処理経過情報をオーバヘッド少なく収集することができる。その理由は、データ処理タスクと履歴記録部とを１対１に対応付け、データ処理タスクで異常が検出されない期間中は、データ処理タスクの処理経過情報を高速アクセス可能な主記憶装置上の履歴記録部に記録し、異常が検出された際、履歴記録部に記録された処理経過情報を外部記憶装置に出力するようにしているためである。
【００１７】
本発明の第２の電子計算機における障害解析用情報収集方式によれば、複数のデータ処理タスク単位で、障害の状態に到るまでの処理経過情報をオーバヘッド少なく収集することができ、かつ、直接障害が発生していないデータ処理タスクの処理経過情報も別タスクの障害発生を契機に外部記憶装置に収集することができる。その理由は、複数のデータ処理タスクで１つの履歴記録部を共用し、各データ処理タスクで異常が検出されない期間中は、各データ処理タスクの処理経過情報を高速アクセス可能な主記憶装置上の履歴記録部に記録し、何れかのデータ処理タスクで異常が検出された際、履歴記録部に記録された処理経過情報を外部記憶装置に出力するようにしているためである。
【発明を実施するための最良の形態】
【００１８】
『第１の実施の形態』
図１を参照すると、本発明の第１の実施の形態にかかる電子計算機１００は、演算処理装置１０１と、主記憶装置１０２と、ハードディスク装置（ＨＤＤ）などの外部記憶装置１０３と、外部のネットワークを通じて端末と通信するための通信装置やコンソール装置などのその他装置１０４とから構成されている。
【００１９】
本実施の形態の電子計算機１００は、オンライン処理を行う計算機であり、演算処理装置１０１上でユーザタスクである１以上のデータ処理タスク１１０が稼働する。ここで、タスクとはマルチプログラミングによって資源が配分され与えられる対象であり、多くの場合、タスクとプログラムは１対１に対応する。従って、本明細書における「データ処理タスク」は「データ処理プログラム」と読み替えることができる。また主記憶装置１０２には、データ処理タスク１１０に１対１に対応する履歴記録部１２０が設けられている。
【００２０】
履歴記録部１２０は、それぞれ１つの処理経過情報を記録するエントリがＥ１〜ＥｎのＮ個設けられており、最大Ｎ個の処理経過情報を記録する。先頭のエントリＥ１から順に最後のエントリＥｎまで処理経過情報を順番に記録すると、また先頭のエントリＥ１に戻って古い情報を新しい情報で上書きしていく、いわゆるラップアラウンド方式であり、常に最新Ｎ個の処理経過情報が残るようになっている。
【００２１】
図２に履歴記録部１２０の構成例を示す。管理部１２１とデータ部１２２とから構成され、データ部１２２にＮ個のエントリＥ１〜Ｅｎが設けられ、管理部１２１には、次に書き込みを行うエントリを指し示す書込ポインタＷＰが設けられる。
【００２２】
データ処理タスク１１０は、ユーザタスクであり、データ処理モジュール１３０と情報収集モジュール１４０とで構成される。
【００２３】
データ処理モジュール１３０は、その他装置１０４を構成する通信装置において受信された端末からの入力データやコンソール装置からの入力データを入力する入力部Ｓ１と、この入力された入力データの記録を情報収集モジュール１４０に対して要求する記録要求部Ｓ２と、前記入力された入力データが予め定められた範囲の値であるかどうかを調べるチェック部Ｓ３と、異常のなかった入力データを用いて所定の業務処理を実行し結果を要求元に返却する業務処理部Ｓ４と、入力データに異常があった場合に履歴記録部１２０に記録されている処理経過情報の出力を情報収集モジュール１４０に要求する掃出し要求部Ｓ５とで構成される。
【００２４】
情報収集モジュール１４０は、データ処理モジュール１３０の記録要求部Ｓ２から出力された記録要求に従って、記録を要求された入力データに必要に応じて所定の付加データを付加したものを処理経過情報とし、履歴記録部１２０に記録する記録部Ｓ１１と、データ処理モジュール１３０の掃出し要求部Ｓ５から出力された出力要求に従って、履歴記録部１２０に記録された処理経過情報を外部記憶装置１０３に出力する出力部Ｓ１２とを有する。前記所定の付加データとしては、現在時刻データ、データ処理タスク１１０を一意に識別するタスクＩＤがある。
【００２５】
次に本実施の形態の動作を説明する。
【００２６】
その他装置１０４を構成する通信装置において端末からの入力データが受信されると、その入力データを処理するデータ処理タスク１１０に渡され、処理される。データ処理タスク１１０のデータ処理モジュール１３０は、入力部Ｓ１により入力データを入力し、記録要求部Ｓ２により、入力データの記録を情報収集モジュール１４０に対して要求する。情報収集モジュール１４０の記録部Ｓ１１は、記録を要求された入力データに現在時刻データとタスクＩＤを付加したものを処理経過情報とし、履歴記録部１２０に記録する。具体的には、図２の書込ポインタＷＰが指し示すエントリＥｉ（ｉ＝１〜ｎ）に処理経過情報を書き込み、書込ポインタＷＰの値を１エントリ分だけインクリメントする。ただし、最後のエントリＥｎに書き込んだときは書込ポインタＷＰの値を先頭のエントリＥ１を指し示すように初期化する。
【００２７】
記録要求部Ｓ２により入力データの記録を情報収集モジュール１４０に対して要求したデータ処理モジュール１３０は、引き続いて、チェック部Ｓ３により、入力データが予め定められた範囲の値であるかどうかを調べ、異常がなければ、業務処理部Ｓ４により、入力データを用いて所定の業務処理を実行し結果を要求元に返却する。
【００２８】
他方、入力データに異常があった場合、データ処理モジュール１３０は、掃出し要求部Ｓ５により、処理経過情報の出力を情報収集モジュール１４０に対して要求し、データ処理モジュール１３０の処理を終える。情報収集モジュール１４０は、この要求を受けると、出力部Ｓ１２により、履歴記録部１２０に記録された全ての処理経過情報を外部記憶装置１０３に出力する。
【００２９】
次に本実施の形態の効果を説明する。
【００３０】
本実施の形態によれば、データ処理タスク１１０で異常が検出されるまでの処理経過情報をオーバヘッド少なく収集することができる。その理由は、異常が検出されるまでは外部記憶装置１０３に比べて高速アクセス可能な主記憶装置１０２上の履歴記録部１２０に処理経過情報を記録するためである。また、履歴記録部１２０への処理経過情報の書き込みは、データ処理タスク１１０自身が行うため、オペレーティングシステム（ＯＳ）の介在によるオーバヘッドがないからである。
【００３１】
また本実施の形態によれば、データ処理タスク１１０で異常が検出されるまでの処理経過情報をデータ処理タスク単位で収集することができる。その理由は、データ処理タスク１１０に１対１に対応する履歴記録部１２０を使用するからである。
【００３２】
以上の実施の形態では、データ処理タスク１１０の入力データを処理経過情報として残すようにした。入力データを履歴として残す利点として「再現性」が挙げられる。障害情報から障害箇所そのものは特定できても、なぜそこに至ったかは記録として残らないことが少なからずある。そのような場合にも、データ処理タスク１１０の入力データが残っていれば、障害解析用の別システムにおいて同じことを実施することにより、同じ障害を引き起こすことが可能となる。障害解析用の別システムで同じ事象を起こすことができれば、追加で様々な情報を収集することも可能であり、障害の解明に大きく役立つ。しかし、本発明は入力データ以外のデータを処理経過情報として残すようにしてもよいことは勿論のことである。
【００３３】
また以上の実施の形態では、データ処理タスク１１０で入力データの異常を検出した際に履歴記録部１２０の処理経過情報を外部記憶装置１０３へ出力したが、データ処理タスク１１０が検出する異常は入力データの異常に限られず、他の任意の異常を検出したときに履歴記録部１２０の処理経過情報を外部記憶装置１０３へ出力するようにしてもよい。
【００３４】
『第２の実施の形態』
図３を参照すると、本発明の第２の実施の形態にかかる電子計算機２００は、演算処理装置１０１上でユーザタスクであるデータ処理タスク１１０−１、１１０−２が稼働し、このデータ処理タスク１１０−１とデータ処理タスク１１０−２間で共有される主記憶装置１０２上のメモリ領域に、これら２つのデータ処理タスク１１０−１、１１０−２で共用する履歴記録部２２０が設けられている点で、図１に示した第１の実施の形態にかかる電子計算機１００と相違する。システムのオペレーティングシステム（ＯＳ）がタスク間における共有メモリ機能を具備している場合、その機能によって提供される共有メモリ上に履歴記録部２２０が生成される。
【００３５】
図４に履歴記録部２２０の構成例を示す。図２の履歴記録部１２０と同様に、管理部２２１とデータ部２２２とから構成され、データ部２２２にＮ個のエントリＥ１〜Ｅｎが設けられているが、管理部２２１には、次に書き込みを行うエントリを指し示す書込ポインタＷＰに加えて、ロックフラグＬＦが設けられている。ロックフラグＬＦは、データ処理タスク１１０−１とデータ処理タスク１１０−２とが履歴記録部２２０を同時にアクセスしないよう排他制御するために使用される。
【００３６】
データ処理タスク１１０−１、１１０−２は、ユーザタスクであり、データ処理モジュール１３０−１、１３０−２と、情報収集モジュール１４０−１、１４０−２とで構成される。
【００３７】
データ処理モジュール１３０−１、１３０−２は、図１のデータ処理モジュール１３０と同様の構成を有している。
【００３８】
情報収集モジュール１４０−１、１４０−２は、自タスク内のデータ処理モジュール１３０−１、１３０−２の記録要求部Ｓ２から出力された記録要求に従って、記録を要求された入力データに必要に応じて現在時刻データおよびタスクＩＤなど所定の付加データを付加したものを処理経過情報とし、排他制御を行って履歴記録部２２０に記録する記録部Ｓ２１と、自タスク内のデータ処理モジュール１３０−１、１３０−２の掃出し要求部Ｓ５から出力された出力要求に従って、履歴記録部２２０に記録された処理経過情報を排他制御を行って外部記憶装置１０３に出力する出力部Ｓ２２とを有する。
【００３９】
次に本実施の形態の動作を説明する。
【００４０】
その他装置１０４を構成する通信装置において端末からの入力データが受信されると、その入力データを処理するデータ処理タスクに渡され、処理される。ここでは、データ処理タスク１１０−１で処理される場合を例に動作を説明する。データ処理タスク１１０−１のデータ処理モジュール１３０−１は、入力部Ｓ１により入力データを入力し、記録要求部Ｓ２により、入力データの記録を情報収集モジュール１４０−１に対して要求する。情報収集モジュール１４０−１の記録部Ｓ２１は、記録を要求された入力データに現在時刻データとタスクＩＤを付加したものを処理経過情報とし、排他制御を行って履歴記録部２２０に記録する。具体的には、図４のロックフラグＬＦが非ロック状態を示す値（例えば論理値０とする）かどうかを調べて、若し非ロック状態であればロック状態を示す値（例えば論理値１とする）に書き換える操作を、テスト・アンド・セット命令などを用いて実行する。若し、ロックフラグＬＦをロック状態にする操作に失敗すれば、つまりロックフラグＬＦが既にロック状態ならば、一定時間経過後に再試行する。他方、ロックフラグＬＦをロック状態にする操作に成功すれば、書込ポインタＷＰが指し示すエントリＥｉ（ｉ＝１〜ｎ）に処理経過情報を書き込み、書込ポインタＷＰの値を１エントリ分だけインクリメントする。ただし、最後のエントリＥｎに書き込んだときは書込ポインタＷＰの値を先頭のエントリＥ１を指し示すように初期化する。そして、ロックフラグＬＦを非ロック状態を示す値に書き換える。
【００４１】
記録要求部Ｓ２により入力データの記録を情報収集モジュール１４０−１に対して要求したデータ処理モジュール１３０−１は、引き続いて、チェック部Ｓ３により、入力データが予め定められた範囲の値であるかどうかを調べ、異常がなければ、業務処理部Ｓ４により、入力データを用いて所定の業務処理を実行し結果を要求元に返却する。
【００４２】
他方、入力データに異常があった場合、データ処理モジュール１３０−１は、掃出し要求部Ｓ５により、処理経過情報の出力を情報収集モジュール１４０−１に対して要求し、データ処理モジュール１３０−１の処理を終える。情報収集モジュール１４０−１は、この要求を受けると、出力部Ｓ２２により、履歴記録部２２０に記録された全ての処理経過情報を外部記憶装置１０３に出力する。具体的には、図４のロックフラグＬＦが非ロック状態を示す値かどうかを調べて、若し非ロック状態であればロック状態を示す値に書き換える操作を、テスト・アンド・セット命令などを用いて実行する。若し、ロックフラグＬＦをロック状態にする操作に失敗すれば、一定時間経過後に再試行する。そして、ロックフラグＬＦをロック状態にする操作に成功すれば、履歴記録部２２０に記録された全ての処理経過情報を外部記憶装置１０３に出力し、その完了後にロックフラグＬＦを非ロック状態を示す値に書き換える。
【００４３】
他のデータ処理タスク１１０−２もデータ処理タスク１１０−１と同様に、処理経過情報の履歴記録部２２０への記録、異常検出による履歴記録部２２０中のデータの外部記録装置１０３への掃き出しを行う。
【００４４】
次に本実施の形態の効果を説明する。
【００４５】
本実施の形態によれば、データ処理タスク１１０−１、１１０−２で異常が検出されるまでの処理経過情報をオーバヘッド少なく収集することができる。その理由は、異常が検出されるまでは外部記憶装置１０３に比べて高速アクセス可能な主記憶装置１０２上の履歴記録部２２０に処理経過情報を記録するためである。また、履歴記録部２２０への処理経過情報の書き込みは、データ処理タスク１１０−１、１１０−２自身が行うため、オペレーティングシステム（ＯＳ）の介在によるオーバヘッドがないからである。
【００４６】
また本実施の形態によれば、データ処理タスク１１０−１、１１０−２で異常が検出されるまでの処理経過情報をデータ処理タスク１１０−１と１１０−２の組単位で収集することができる。その理由は、データ処理タスク１１０−１とデータ処理タスク１１０−２の組に１対１に対応する履歴記録部２２０を使用するからである。
【００４７】
さらに本実施の形態によれば、データ処理タスク１１０−１とデータ処理タスク１１０−２とで同じ履歴記録部２２０を共用しており、何れか一方のタスクで異常が検出された際に履歴記録部２２０に記憶された全ての処理経過情報が外部記録装置１０３に出力されるため、直接障害が発生していないデータ処理タスクの処理経過情報も別タスクの障害発生を契機に外部記憶装置に収集することができる。これにより、例えば、各々のデータ処理タスクが「状態管理部」「信号編集部」などのように、機能毎に存在しているような場合、異常を検出したタスクの処理経過情報のみでなく、別のタスクの処理経過情報も収集することができ、解明が容易になる。
【００４８】
また本実施の形態によれば、履歴記録部２２０の内容を外部記憶装置１０３に出力する際に排他を行っているため、正常なデータ処理タスクによる新たな処理経過情報の履歴記録部２２０への記録を掃き出しが終わるまで待たせることができる。このため、異常検出時刻後の処理経過情報によって異常検出時刻前の処理経過情報が書き換えられてしまうのを防止することができる。
【００４９】
以上の実施の形態では、データ処理タスク１１０−１、１１０−２の入力データを処理経過情報として残すようにしたが、入力データ以外のデータを処理経過情報として残すようにしてもよいことは勿論のことである。
【００５０】
また以上の実施の形態では、データ処理タスク１１０−１、１１０−２で入力データの異常を検出した際に履歴記録部２２０の処理経過情報を外部記憶装置１０３へ出力したが、データ処理タスク１１０−１、１１０−２が検出する異常は入力データの異常に限られず、他の任意の異常を検出したときに履歴記録部２２０の処理経過情報を外部記憶装置１０３へ出力するようにしてもよい。
【００５１】
さらに以上の実施の形態では、１つの履歴記録部２２０を２つのデータ処理タスクで共用したが、３以上のデータ処理タスクで同じ履歴記録部２２０を共用するようにしてもよい。
【００５２】
また以上の実施の形態では、ロックフラグを用いて排他制御を実現したが、排他制御を実現する手法は従来より各種提案されているので、それらの任意の手法を使用することが可能である。
【図面の簡単な説明】
【００５３】
【図１】本発明の第１の実施の形態にかかる電子計算機における障害解析用情報収集方式のブロック図である。
【図２】本発明の第１の実施の形態における履歴記録部の構成例を示す図である。
【図３】本発明の第２の実施の形態にかかる電子計算機における障害解析用情報収集方式のブロック図である。
【図４】本発明の第２の実施の形態における履歴記録部の構成例を示す図である。
【符号の説明】
【００５４】
１００、２００…電子計算機
１０１…演算処理装置
１０２…主記憶装置
１０３…外部記憶装置
１０４…その他装置
１１０、１１０−１、１１０−２…データ処理タスク
１２０、２２０…履歴記録部
１３０、１３０−１、１３０−２…データ処理モジュール
１４０、１４０−１、１４０−２…情報収集モジュール
Ｓ１…入力部
Ｓ２…記録要求部
Ｓ３…チェック部
Ｓ４…業務処理部
Ｓ５…掃出し要求部
Ｓ１１、Ｓ２１…記録部
Ｓ１２、Ｓ２２…出力部
【図１】
2006079485.tif 000003
【図２】
2006079485.tif 000004
【図３】
2006079485.tif 000005
【図４】
2006079485.tif 000006