JP2009140277A - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
JP2009140277A
JP2009140277A JP2007316532A JP2007316532A JP2009140277A JP 2009140277 A JP2009140277 A JP 2009140277A JP 2007316532 A JP2007316532 A JP 2007316532A JP 2007316532 A JP2007316532 A JP 2007316532A JP 2009140277 A JP2009140277 A JP 2009140277A
Authority
JP
Japan
Prior art keywords
module
event
information
processing
completion
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.)
Granted
Application number
JP2007316532A
Other languages
English (en)
Other versions
JP5145910B2 (ja
Inventor
Kenji Okano
憲司 岡野
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007316532A priority Critical patent/JP5145910B2/ja
Priority to EP08170708A priority patent/EP2068244B1/en
Priority to DE602008002040T priority patent/DE602008002040D1/de
Priority to US12/328,847 priority patent/US8893132B2/en
Publication of JP2009140277A publication Critical patent/JP2009140277A/ja
Application granted granted Critical
Publication of JP5145910B2 publication Critical patent/JP5145910B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1474Saving, restoring, recovering or retrying in transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)
  • Debugging And Monitoring (AREA)

Abstract

【課題】複数のモジュールの実行シーケンスが決められている場合に、トラブル発生時に未完であったイベントを完了させるため、リブート後に最先のモジュールに識別情報を再度与えても、トラブル発生前にモジュールが出力した内容が再度出力されないようにすること。
【解決手段】各モジュール21a〜21fは、1イベントについて処理が完了すると、イベント管理テーブル23内のそのイベントに係る自モジュールの完了フラグを切り替える。リブート後、サービスプロセッサ20は、イベント管理テーブル23から、何れかのモジュールの完了フラグが完了を示していないレコードを検出し、そのレコードに係るイベントを最先のモジュールから再実行させる。各モジュールは、イベント管理テーブル23内の自モジュールの完了フラグに基づき、再実行のイベントにつき既に処理が完了済か否かを判断し、完了済であれば処理をスキップする。
【選択図】図3

Description

本発明は、複数のモジュール(プログラム)に処理を実行させるための情報処理装置及び情報処理方法に、関する。
周知のように、特定の機器を制御するために複数のモジュール(プログラム)を備えた制御ソフトウエアでは、それらモジュールの実行シーケンスが決められていることが多い。その実行シーケンスでは、最先(最上流)のモジュール以外の各モジュールが、その直前(上流側における一つ前)のモジュールの処理の実行完了を契機として自モジュールの処理を開始する。
このような実行シーケンスでは、1つのモジュールの実行完了を契機として、複数のモジュールの実行が開始されることもある。従って、最後(最下流)のモジュールが複数存在することがある。
ここで、全モジュールによる一連の処理の単位をイベントと表記すると、前述した制御ソフトウエアでは、最先のモジュールに対して1つの外部入力や1つの割込発生があることにより、1つのイベントが生じることとなる。そして、このような制御ソフトウエアの中には、イベントを複数並立させ得るものがある。
例えば、全自動電気洗濯機に内蔵されるコンピュータにより実行される制御ソフトウエアでは、給水、攪拌、排水、給水、濯ぎ、排水、脱水をそれぞれ制御するモジュールの実行シーケンスは、決められている。しかし、全自動電気洗濯機には制御対象となる洗濯乾燥槽が1つしかないため、1つのイベントが完了するまで、次のイベントが発生することはない。これに対し、例えば、メインフレーム管理用のサービスプロセッサに内蔵されるコンピュータにより実行される制御ソフトウエアでも、メインフレーム内の各ユニットからの障害情報の受信、ログ保存、外部への通報をそれぞれ制御するモジュールの実行シーケンスは、決められている。しかし、障害情報の受信と外部への通報とは同時に実行することができるため、複数のイベントが並立することができる。
ところで、この種の制御ソフトウエアを実行するコンピュータは、一般的なシステムと同様に、何らかのトラブルが発生したときには、リブートを行う必要がある。また、トラブル発生時に実行シーケンスの途中で処理が中断されてしまった未完のイベントが存在している場合には、それら未完のイベントを完了させる必要がある。
このような要求を満たすため、制御ソフトウエアの新規機能として、トラブル発生時に未完であったイベントについてリブート後に実行シーケンスの途中から処理を継続させる機能が、考えられた。
しかしながら、そのような機能を制御ソフトウエアに組み込むためには、上流のモジュールと下流のモジュールとの間に個別の取り決めを行わなければならず、制御ソフトウエアの設計が非常に複雑になることが予想された。
そこで、制御ソフトウエアの新規機能として、トラブル発生時に未完であったイベントについて、実行シーケンスの途中から処理を継続させるのではなく、最上流のモジュールから再度処理を実行させる機能が、考えられた。この機能において考えられる動作としては、最先のモジュールにて発生するイベントを特定するための識別情報がログとして不揮
発性メモリに保存されるとともに、トラブル発生時に未完であったイベントに係る識別情報がリブート後にログから抽出され、抽出された識別情報が最先のモジュールに入力される。
しかしながら、トラブル発生時にイベント自体が未完ではあっても、実行シーケンスの途中にあるモジュールまでは、処理を終えていることが多い。このような未完イベントについて、リブート後に最先のモジュールから再度処理を実行させてしまうと、トラブル発生前に何れかのモジュールから出力された内容が、同じモジュールから重複して出力されてしまうことがある。
特開2003−316750号公報
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、複数のモジュールの実行シーケンスが決められている場合において、トラブル発生時に未完であったイベントをリブート後に完了させるため、最先のモジュールに対し、一度与えられた識別情報を再度与えたとしても、トラブル発生前に何れかのモジュールにから出力された内容が、同じモジュールから重複して出力されないようにすることにある。
上記の課題を解決するために案出された情報処理装置は、所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるため、実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを記憶する記憶部、その記憶部内の完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定部、及び、その特定部が特定したイベントに係る識別情報を実行シーケンスにおける最先のモジュールに与えて、その最先のモジュールに当該イベントに係る処理実行を指示する指示部を備え、各モジュールが、何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を記憶部から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、その判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、その直後のモジュールに識別情報を引き渡す引渡部を備えることを、特徴としている。
このような構成により、各イベントについて、どのモジュールが処理を完了していないかが、完了情報として、記憶部に記録され、何れかのモジュールが処理を完了していないイベントが、完了情報により特定され、そのイベントの再実行のため、識別情報が最先のモジュールに与えられる。さらに、最先のモジュールに識別情報が与えられた後、どのモジュールも、識別情報にて特定されるイベントについて既に自モジュールの処理を完了しているか否かを判定し、そのイベントについて既に時モジュールの処理が完了している場合には、自モジュールの処理をスキップして、識別情報を直後のモジュールに引き渡す。
このような動作により、何れかのモジュールが処理を完了していないイベントについて、識別情報が最先のモジュールに与えられることとなるが、そのイベントについて何れかのモジュールにから出力された内容が、同じモジュールから重複して出力されることはない。
なお、前述した情報処理装置が備える複数のモジュールについて、動作設定を有効又は
無効に切り替えられることができる場合がある。この場合、モジュールは、動作設定が無効となっている間は、その直前のモジュールから実行完了の通知を受けても処理を行わないこととなる。
このような場合、ログとして保存しておいた識別情報の中から、未完のイベントに係る識別情報を選択することは容易ではない。モジュールは、イベント発生時の動作設定に応じて有効だったり無効だったりしており、特に、動作設定が有効となっている最下流のモジュールの組み合わせが、イベント毎に異なっている。このように、イベントの完了形態がイベント毎に変化するため、ログの中から未完のイベントに係る識別情報を選択するには、イベント毎に、そのイベントにおいて動作設定が有効となっている最後のモジュールの全てが処理を完了しているか否かを、正確に判定せねばならないという問題がある。
このような問題を解決するため、前述した情報処理装置では、イベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報が、さらに、前述した記憶部にイベント毎に記憶され、何れかのモジュールが処理を完了していないイベントが、完了情報と動作情報とに基づいて特定され、各モジュールが、自モジュールの処理をスキップするか否かを、完了情報と動作情報とに基づいて判定するようになっていても良い。
このような構成によると、各イベントについて、どのモジュールの動作設定が有効であったかが、動作情報として、記憶部に記録され、動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントが、動作情報と完了情報とに基づいて、特定される。さらに、どのモジュールも、自モジュールの処理をスキップするか否かを、動作情報と完了情報とに基づいて判定する。
このような動作により、イベントの完了形態がイベント毎に変化しても、動作設定が有効となっているモジュールの全てが処理を完了しているか否かが、正確に判定されて、未完のイベントに係る識別情報だけが、最先のモジュールに与えられるようになる。さらに、どのモジュールも、イベント発生時における自モジュールの動作設定をも考慮して、スキップすべきか否かを判定することとなる。
なお、以上に開示した情報処理装置に係る動作は、情報処理方法又は情報処理プログラムによっても実現し得る。すなわち、本発明は、前述した情報処理装置の各部と同等の機能を複数の手順としてコンピュータが実行する情報処理方法であってもよいし、それら各部と同等に機能する複数の手段としてコンピュータを動作させる情報処理プログラムであってもよい。
従って、開示の情報処理装置によれば、複数のモジュールの実行シーケンスが決められている場合において、トラブル発生時に未完であったイベントをリブート後に完了させるため、最先のモジュールに対し、一度与えられた識別情報を再度与えたとしても、トラブル発生前に何れかのモジュールにから出力された内容が、同じモジュールから重複して出力されないようになる。
以下、添付図面を参照しながら、本発明を実施するための三つの形態について、説明する。以下、情報処理装置の一例として、いわゆるメインフレームについて説明する。
実施形態1
<構成>
図1は、第1の実施形態のメインフレームシステムの構成図である。
図1に示すように、第1の実施形態のメインフレームシステムは、メインフレーム10と、サービスプロセッサ20と、管理者端末装置30とを、備えている。このうち、メインフレーム10とサービスプロセッサ20は、図示せぬ専用線を介して通信自在に接続されており、サービスプロセッサ20と管理者端末装置30は、ネットワークNを介して通信自在に接続されている。
メインフレーム10は、事務的な計算や研究的な計算処理を並列且つ高速に行うためのコンピュータであり、図示していないが、周知のように、CPU[Central Processing Unit]、メモリユニット、記憶ユニット、電源ユニット、及び、冷却ユニットを、それぞれ備えている。メインフレーム10内の各ユニットは、通常、自動障害通知機能を有しており、自ユニットの内部で障害が発生すると、その障害の種類や場所を特定する障害情報を送信することにより、障害の発生をサービスプロセッサ20に通知するようになっている。
サービスプロセッサ20は、メインフレーム10の設定情報と動作状態とを管理するための管理機能を実現する目的で、コンピュータが組み込まれた組み込み機器である。後述するように、サービスプロセッサ20は、メインフレーム10内の何れかのユニットから障害の発生が通知されたときに、管理者端末装置30へ障害を通報する通報機能を、有している。通報機能としては、電子メールを用いる機能と、SNMP[Simple Network Management Protocol]を用いる機能とがある。従って、本実施形態によるサービスプロセッサ20は、電子メールを送信するためのメール送信モジュールプログラムと、状態変化を示すトラップをSNMPマネージャに送信するSNMPエージェントとを、含んでいる。
管理者端末装置30は、サービスプロセッサ20から障害の発生が通知されたとき、に管理者へ所定の出力を行うための出力機能が付加されたコンピュータである。管理者端末装置30の一例として、パーソナルコンピュータが挙げられる。管理者端末装置30は、図示していないが、液晶ディスプレイ等の表示装置と、キーボードやマウス等の入力装置と、これら装置が接続された本体とを備え、本体は、通信アダプタ、ストレージユニット、CPU、メモリユニットを、内蔵している。さらに、管理者端末装置30は、電子メールを受信するためのメール受信モジュールプログラムと、トラップをSNMPマネージャから受信するSNMPエージェントとを、含んでいる。なお、管理者端末装置30は、例えばサポートセンターの建物内に設置されている。
図2は、サービスプロセッサ20の構成図である。
図2に示すように、サービスプロセッサ20は、少なくとも、インターフェース装置20aと、通信アダプタ20bと、フラッシュメモリユニット20cと、CPU20dと、揮発メモリユニット20eとを、備えている。
インターフェース装置20aは、メインフレーム10内の各ユニットとのデータの遣り取りを行うための装置であり、メインフレーム10内の各ユニットに対し、図示せぬ専用線にて接続されている。通信アダプタ20bは、ネットワークN上の他のコンピュータとデータの遣り取りを行うための通信装置であり、ネットワークNを構成する中継装置に所定の通信ケーブルにて接続されている。なお、中継装置としては、ルータ又はターミナルアダプタが例示できる。また、通信ケーブルとしては、モジュラーケーブル又はイーサネットケーブル(イーサネットは米国ゼロックス社商標)が例示できる。
フラッシュメモリユニット20cは、各種のプログラムやデータを記録しておくためのユニットである。CPU20dは、フラッシュメモリユニット20c内に記録されたプロ
グラムに従って処理を行うためのユニットである。揮発メモリユニット20eは、CPU20dがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
サービスプロセッサ20は、フラッシュメモリユニット20cに、管理ソフトウエア21を記憶している。管理ソフトウエア21は、メインフレーム10の設定情報と動作状態とを管理するためのソフトウエアである。管理ソフトウエア21は、複数のモジュール(プログラム)から構成されており、これら複数のモジュールが互いに連携することによって管理機能が実現される。なお、以下では、管理ソフトウエア21を構成する複数のモジュールのうち、異常処理系の6個のモジュール21a〜21fに着目して説明する。
図3は、異常処理系の6個のモジュール21a〜21fの関係を示す図である。
図3に示すように、管理ソフトウエア21は、障害情報受信モジュール21a、ログ保存モジュール21b、指示分配モジュール21c、本体制御モジュール21d、メール通報モジュール21e、及び、SNMP通報モジュール21fを、備えている。
障害情報受信モジュール21aは、メインフレーム10内の何れかのユニットから障害情報を入力情報として受信するためのモジュールである。ログ保存モジュール21bは、障害情報受信モジュール21aがメインフレーム10内の何れかのユニットから受信した障害情報を、図示せぬログファイルに保存するためのモジュールである。指示分配モジュール21cは、自モジュールの下流側にある複数のモジュール21d〜21fに対して、同時に処理の実行開始を指示するためのモジュールである。
本体制御モジュール21dは、障害情報受信モジュール21aが受信した障害情報に特定される障害の種類と場所とに応じて、メインフレーム10の各ユニットを制御するためのモジュールである。本体制御モジュール21dは、例えば、メインフレーム10内の何れかのCPUから致命的エラーが通知された場合には、エラーを通知したCPUが搭載されたシステムボードのリセットを行う。また、メインフレーム10内の何れかの冷却ユニットから冷却ファンの停止が通知された場合には、本体制御モジュール21dは、メインフレーム10内の他の冷却ユニットに対して冷却ファンの回転速度を上げるよう指示を出すようになっている。
メール通報モジュール21eは、障害情報により特定される障害の内容や場所が記載された電子メールを所定のアドレス宛に送信するためのモジュールであり、一般的なメール送信モジュールを含んでいる。SNMP通報モジュール21fは、メインフレーム10内の何れかのユニットにおいて障害が発生したことをSNMPに従ってSNMPマネージャに通報するためのモジュールであり、一般的なSNMPエージェントを含んでいる。
これら6個のモジュール21a〜21fについては、実行シーケンスが予め決められている。具体的には、図3に示すように、障害情報受信モジュール21aが実行シーケンスの最上流にある。障害情報受信モジュール21aが処理を完了すると、その旨を直後のログ保存モジュール21bに通知し、ログ保存モジュール21bは、障害情報受信モジュール21aからの通知を受けると処理を開始するようになっている。つまり、ログ保存モジュール21bは、障害情報受信モジュール21aの処理の完了を契機として、自モジュールの処理を開始する。同様に、ログ保存モジュール21bの直後にある指示分配モジュール21cは、ログ保存モジュール21bの処理の完了を契機として、自モジュールの処理を開始するようになっている。
また、指示分配モジュール21cの処理の完了を契機として、本体制御モジュール21
d、メール通報モジュール21e、及び、SNMP通報モジュール21fが、それぞれ、自モジュールの処理を開始するようになっている。従って、第1の実施形態においては、本体制御モジュール21d、メール通報モジュール21e、及び、SNMP通報モジュール21fが、実行シーケンスにおける最下流のモジュールとなっている。
さらに、モジュール21d〜21f以外の残りのモジュール21a〜21cは、直後のモジュールに対し、自モジュールの処理の完了を通知するとともに、後述のイベントIDを引き渡すようになっている。
なお、管理ソフトウエア21を構成する各モジュールは、動作設定の状態に応じて自モジュールの処理を実行するか否かを決定するようになっている。つまり、各モジュールは、自モジュールの動作設定が無効の状態にある間は、直前のモジュールが処理を完了しても、それを契機として処理を実行しない。この動作設定は、サービスプロセッサ20の操作者により図示せぬ操作手段を介して切り替えられ、或いは、ネットワークNを介してサービスプロセッサ20に接続された管理者端末装置30の操作者(管理者)により図示せぬ遠隔操作手段を介して切り替えられる。
但し、図3に示すような実行シーケンスにおいて、上流側の3個のモジュール21a〜21cの何れかの動作設定が無効の状態にあると、異常処理系全体の処理が不完全になってしまう。そのため、第1の実施形態では、指示分配モジュール21cから分岐する3個のモジュール21d〜21fについてだけ、動作設定の状態が切り替えられるものとし、前方の3個のモジュール21a〜21cは、動作設定の状態が常に有効に固定されているものとする。
また、図2に示すように、サービスプロセッサ20は、フラッシュメモリユニット20cに、動作フラグ管理テーブル22を記憶している。動作フラグ管理テーブル22は、管理ソフトウエア21を構成する複数のモジュールの動作設定の状態を管理するためのテーブルである。
図4は、動作フラグ管理テーブル22のテーブル構造を模式的に示す図である。
図4に示すように、動作フラグ管理テーブル22は、管理ソフトウエア21を構成するモジュールと同数のレコードを、有している。なお、前述したように、第1の実施形態の説明では、異常処理系の6個のモジュール21a〜21fに着目しているため、図4には、レコードは6個しか示していない。動作フラグ管理テーブル22の各レコードは、「モジュール名」及び「動作フラグ」のフィールドを、有している。
「モジュール名」フィールドは、各モジュールの名称が記録されるフィールドである。「動作フラグ」フィールドは、各モジュールの動作設定が有効であるか無効であるかを示す動作フラグが記録されるフィールドである。なお、図4では、動作フラグは、「1」又は「0」の値で示されており、「1」は対応するモジュールの動作設定が有効であることを示し、「0」は対応するモジュールの動作設定が無効であることを示している。また、図4は、動作フラグの管理形態を模式的に示したものであり、実際の動作フラグは、例えば、動作フラグを記録しておくためのビットを各モジュールに1つずつ割り当てるビットマップ方式で管理されていても良い。
また、図2に示すように、サービスプロセッサ20は、フラッシュメモリユニット20cに、イベント管理テーブル23を記憶している。イベント管理テーブル23は、イベントを管理するためのテーブルである。ここで、イベントとは、6個のモジュール21a〜21f全体による一連の処理の単位を言い、最上流のモジュールである障害情報受信モジ
ュール21aが1つの障害情報を入力情報として受信することによって、1つのイベントが生ずる。
図5は、イベント管理テーブル23のテーブル構造を模式的に示す図である。
図5に示すように、イベント管理テーブル23の各レコードは、「イベントID」、「動作フラグ」、「完了フラグ」及び「データ」のフィールドを、有している。
「イベントID」フィールドは、イベントに対して一意な識別情報として割り当てられるイベントIDが記録されるフィールドである。「動作フラグ」フィールドは、各イベントの発生時点における動作フラグ管理テーブル22内に記録された全ての動作フラグの状態が記録されるフィールドである。なお、図4には、6個の動作フラグが示されているため、イベント管理テーブル23の「動作フラグ」フィールドには、6個の動作フラグが記録されることとなる。
「完了フラグ」フィールドは、各イベントについて、モジュール毎に処理が完了しているか否かを示す完了フラグが記録されるフィールドである。「完了フラグ」フィールドには、管理ソフトウエア21を構成する全てのモジュールの完了フラグが記録されることとなるが、第1の実施形態の説明では、異常処理系の6個のモジュール21a〜21fに着目しているため、図5では、それら6個のモジュール21a〜21fの完了フラグしか図示されていない。なお、図5では、完了フラグは、「1」又は「0」の値で示されている。「1」は、そのイベントについて対応モジュールの処理が完了したことを示し、「0」は、そのイベントについて対応モジュールの処理が完了していないことを示している。
「データ」フィールドは、各イベントに係る障害情報が記録されるフィールドである。すなわち、障害情報受信モジュール21aが1つの障害情報を受信することによって1つのイベントが発生すると、受信した障害情報が、そのイベントのレコードの「データ」フィールドに記録される。
なお、イベント管理テーブル23は、前述した記憶部に相当している。また、サービスプロセッサ20がイベントID、動作フラグ、完了フラグ、障害情報をイベント管理テーブル23を介してフラッシュメモリユニット20cに記憶することは、前述した記憶手順に相当している。
また、図2に示すように、サービスプロセッサ20は、フラッシュメモリユニット20cに、未完イベント検出プログラム24を記憶している。未完イベント検出プログラム24は、自プロセッサの電源投入直後において未完イベントを検出するためのプログラムである。ここで、未完イベントとは、動作設定が有効となっているモジュールのうちの何れかが処理を完了していないイベントを言う。未完イベント検出プログラム24に従ってCPU20dが実行する処理の内容については、図9を用いて後述する。
<モジュールに係る処理>
図6は、6個のモジュール21a〜21fにおける本実施形態に係る機能を示す図である。
図6に示すように、6個のモジュール21a〜21fのうち、実行シーケンスの最上流にある障害情報受信モジュール21aは、イベントID発行プログラム210、動作フラグ切替プログラム211、完了フラグ切替プログラム212、及び、スキップ判定プログラム213を、含んでいる。
また、実行シーケンスの最先に無い残りの5個のモジュール21b〜21fは、動作フラグ切替プログラム211、完了フラグ切替プログラム212、及び、スキップ判定プログラム213は含んでいるが、イベントID発行プログラム210は含んでいない。
(イベントID発行)
イベントID発行プログラム210は、イベントの発生に応じて、イベントIDを発行して図5のイベント管理テーブル23に新規レコードを追加するためのプログラムである。イベントID発行プログラム210の実行は、障害情報受信モジュール21aがメインフレーム10内の何れかのユニットから1つの障害情報を入力情報として受信することによって1つのイベントが生ずると、開始されるようになっている。
図7は、イベントID発行プログラム210に従ってCPU20dが実行するイベントID発行処理の流れを示す図である。
イベントID発行処理の開始後、最初のステップS301において、障害情報受信モジュール21aを実行するCPU20dは、当該イベントについてイベントIDを発行する。イベントIDとしては、フラッシュメモリユニット20c内のイベント管理テーブル23(図5)においてすでに使われていない新たなイベントIDを発行する。
次のステップS302では、障害情報受信モジュール21aは、フラッシュメモリユニット20c内の動作フラグ管理テーブル22(図4)から、当該イベントが発生した時点における全てのモジュール21a〜21fの動作フラグの状態を読み取る。
次のステップS303では、障害情報受信モジュール21aは、フラッシュメモリユニット20c内のイベント管理テーブル23(図5)に対し、ステップS301で発行したイベントIDと、ステップS302で読み取った全モジュールの動作フラグの状態とを含む新たなレコードとを、追加する。追加される新たなレコードでは、「完了フラグ」フィールド内に記録される全てのモジュールの完了フラグは、初期値として、「0」の状態となっている。また、新たなレコードの「データ」フィールドには、当該イベントについて障害情報受信モジュール21aが受信した障害情報が、記録される。ステップS303の処理を実行し終えると、障害情報受信モジュール21aは、図7に係るイベントID発行処理を終了する。
図7に示すイベントID発行処理によれば、障害情報受信モジュール21aは、メインフレーム10内の何れかのユニットから障害情報を受信することによって生じたイベントについて、イベントIDを発行できるとともに、そのイベントに係るレコードを、新たなレコードとして、フラッシュメモリユニット20c内のイベント管理テーブル23に追加できる。
なお、図7のイベントID発行処理では、新たなレコードがイベント管理テーブル23に追加されるようになっているが、レコードの記録形態は、これに限定されない。例えば、フラッシュメモリユニット20cにおいて、イベント管理テーブル23に割り当てられている記憶領域が定まっている場合において、記録領域に空きが無くなっているときには、未完イベントのレコードを除く残りのレコードのうち、イベントIDの最も古いレコードが、新たなレコードに上書きされても良い。
また、第1の実施形態の説明では、異常処理系の6個のモジュール21a〜21fに着目しているため、イベントID発行プログラム210は、障害情報の受信を契機にイベントIDを発行するものとなっている。しかし、イベントID発行プログラム210は、実際には、異常処理系以外の系統のモジュール群による実行シーケンスにおける最先のモジ
ュールにも、組み込まれる。このため、イベントID発行プログラム210が他の系統の最先のモジュールに実装されている場合には、そのモジュールにおいて何らかのイベントが生じたときに、イベントIDを発行することとなる。
(動作フラグ切替)
動作フラグ切替プログラム211は、自モジュールの動作設定が切り替えられたことを契機として、フラッシュメモリユニット20c内の動作フラグ管理テーブル22(図4)における自モジュールの動作フラグを切り替えるためのプログラムである。前述したように、この動作設定は、サービスプロセッサ20の操作者により図示せぬ操作手段を介して切り替えられ、或いは、ネットワークNを介してサービスプロセッサ20に接続された管理者端末装置30の操作者により図示せぬ遠隔操作手段を介して切り替えられる。各モジュールを実行するCPU20dは、動作フラグ切替プログラム211に従って、動作設定の切替操作がなされることを監視する。そして、自モジュールに対して動作設定の切替操作がなされたときに、当該モジュールは、フラッシュメモリユニット20c内の動作フラグ管理テーブル22内に記録された自モジュールの動作フラグの状態を、切替操作後の動作設定に対応する状態に変更する。なお、動作フラグ切替プログラム211は、異常処理系の6個のモジュール21a〜21fに限らず、管理ソフトウエア21に含まれる全てのモジュールに組み込まれるプログラムとなっている。
(完了フラグ切替)
完了フラグ切替プログラム212は、或るイベントについて自モジュールの処理が完了したことを契機として、フラッシュメモリユニット20c内のイベント管理テーブル23(図5)におけるそのイベントに対応するレコード内の自モジュールの完了フラグを「0」から「1」に切り替えるためのプログラムである。各モジュールを実行するCPU20dは、直後のモジュールへ実行完了を通知する情報を生成して引き渡した後、完了フラグ切替プログラム212に従って、フラッシュメモリユニット20c内のイベント管理テーブル23(図5)に記録されたそのイベントに対応するレコード内の自モジュールの完了フラグを「0」から「1」に切り替える。実行シーケンスにおける最下流に位置するモジュール21d〜21fについては、外部出力を終了した後に自モジュールの完了フラグを切り替える。なお、完了フラグ切替プログラム212も、異常処理系の6個のモジュール21a〜21fに限らず、管理ソフトウエア21に含まれる全てのモジュールに組み込まれるプログラムとなっている。
(スキップ判定)
スキップ判定プログラム213は、自モジュールの処理を開始する前に、その処理を実行すべきかスキップすべきかを判定するためのプログラムである。スキップ判定プログラム213の実行は、直前のモジュールから処理の完了の通知とイベントIDとが送られてくると、開始されるようになっている。実行シーケンスにおける最上流に位置する障害情報受信モジュール21aについては、後述の未完イベント検出処理から処理の実行開始の指示とイベントIDとを受け取ることにより、スキップ判定プログラム213を実行する。なお、スキップ判定プログラム213も、異常処理系の6個のモジュール21a〜21fに限らず、管理ソフトウエア21に含まれる全てのモジュールに組み込まれるプログラムとなっている。
図8は、スキップ判定プログラム213に従ってCPU20dが実行するスキップ判定処理の流れを示す図である。なお、前述したように、異常処理系の6個のモジュール21a〜21fの何れもが、スキップ判定プログラム213の動作主体となり得るので、以下のスキップ判定処理の説明では、動作主体を、単にモジュールと表現している。
このスキップ判定処理の開始後、最初のステップS401では、モジュールを実行する
CPU20dは、フラッシュメモリユニット20c内のイベント管理テーブル23(図5)に記録されたレコードのうち、直前のモジュールから処理の完了の通知とともに受け取ったイベントIDに対応するレコードを、特定する。
次のステップS402では、モジュールは、ステップS401で特定したレコードの「動作フラグ」フィールドから、自モジュールの動作フラグを読み出す。
次のステップS403では、モジュールは、ステップS402で読み出した動作フラグの状態が「0」であるか否かを、判別する。そして、動作フラグの状態が「0」であった場合、モジュールは、図8に係るスキップ判定処理を終了する。一方、動作フラグの状態が「0」でなかった場合、つまり「1」であった場合、モジュールは、ステップS403からステップS404へ処理を分岐させる。
ステップS404では、モジュールは、ステップS401で特定したレコードの「完了フラグ」フィールドから、自モジュールの完了フラグを読み出す。
次のステップS405は、モジュールは、ステップS404で読み出した完了フラグの状態が「0」であるか否かを、判別する。そして、完了フラグの状態が「0」であった場合、モジュールは、ステップS405からステップS406へ処理を進める。
ステップS406では、モジュールは、自モジュールの処理を実行する。そして、処理を実行し終えると、モジュールは、ステップS407へ処理を進める。
一方、ステップS405において、ステップS404で読み出した完了フラグの状態が「0」でなかった場合、モジュールは、ステップS406の処理を行うことなく、すなわちステップS406をスキップして、ステップS405からステップS407へ処理を分岐させる。
なお、これらステップS401乃至S405を実行するCPU20dは、前述した判定部に相当している。
ステップS407では、モジュールは、直後のモジュールへ、自モジュールの処理の完了を通知するとともに、イベントIDを引き渡す。その後、モジュールは、図8に係るスキップ判定処理を終了する。
なお、これらステップS405及びS407を実行するCPU20dは、前述した引渡部に相当している。
図8のスキップ判定処理によれば、モジュールは、直前のモジュールからイベントIDを受け取った後、受け取ったイベントIDに係るイベントについて既に処理を済ましていた場合に、自モジュールの処理をスキップすることができる。
<サービスプロセッサに係る処理>
前述したように、未完イベント検出プログラム24は、サービスプロセッサ20の電源投入直後において未完イベントを検出するためのプログラムである。未完イベント検出プログラム24の実行は、サービスプロセッサ20の電源投入直後に、開始されるようになっている。なお、サービスプロセッサ20の電源投入は、正常な電源切断の後に操作者によって行われる通常の電源投入であってもよいし、サービスプロセッサ20に対するリブート処理に伴って行われる電源投入であってもよい。何れにしても、本実施形態では、サービスプロセッサ20に電源が投入されたときには、必ず、未完イベント検出プログラム
24が実行される。
図9は、未完イベント検出プログラム24に従ってCPU20dが実行する未完イベント検出処理の流れを示す図である。
未完イベント検出処理の開始後、最初のステップS501では、CPU20dは、フラッシュメモリユニット20cから、図5のイベント管理テーブル23を取得する。その後、CPU20dは、第1の処理ループL1を実行する。
第1の処理ループL1では、CPU20dは、ステップS501で取得したイベント管理テーブル23からレコードを1つずつ順に読み込みながら、読み込んだレコードに対し、第2の処理ループL2の処理を、実行する。第1の処理ループL1は、イベント管理テーブル23から読み込まれた各レコードに対して実行される。
第2の処理ループL2では、CPU20dは、処理対象レコードの「動作フラグ」フィールドから各モジュールに対応する動作フラグを1つずつ順に読み込みながら、読み込んだ動作フラグに対し、ステップS502乃至S504からなる処理を、実行する。第2の処理ループL2は、イベント管理テーブル23から読み込んだ各動作フラグに対して実行される。
ステップS502では、CPU20dは、イベント管理テーブル23から読み込んだ処理対象動作フラグの状態が「0」であるか否かを、判別する。そして、処理対象動作フラグの状態が「0」であった場合、CPU20dは、第2の処理ループL2におけるこの処理対象の動作フラグの回を終了する。一方、処理対象動作フラグの状態が「0」でなかった場合、CPU20dは、ステップS502からステップS503へ処理を分岐させる。
ステップS503では、CPU20dは、処理対象レコードの「完了フラグ」フィールドから、処理対象動作フラグに対応するモジュールの完了フラグを、読み出す。
次のステップS504では、CPU20dは、ステップS503で読み出した完了フラグの状態が「0」であるか否かを、判別する。そして、完了フラグの状態が「0」でなかった場合、CPU20dは、ステップS504から処理を分岐させ、第2の処理ループL2におけるこの処理対象動作フラグの回を終了する。一方、完了フラグの状態が「0」であった場合、CPU20dは、ステップS504からステップS505へ処理を進める。
なお、CPU20dは、処理対象レコードの「動作フラグ」フィールド内のどの動作フラグについてもステップS505へ進むことがなければ、全ての動作フラグについてステップS502乃至S504からなる処理を実行し終えた後で、第2の処理ループL2を離脱し、第1の処理ループL1におけるこの処理対象のレコードの回を終了する。
一方、ステップS504の結果、CPU20dが、処理対象レコードの「動作フラグ」フィールド内の何れかの動作フラグについてステップS505へ進んだ場合、処理対象レコードに係るイベントが未完イベントであるとして、第2の処理ループL2を途中で離脱する。
なお、ステップS501乃至S504を実行するCPU20dは、前述した特定部に相当している。また、ステップS501乃至S504は、前述した特定手順に相当している。
ステップS505では、CPU20dは、処理対象レコードの「データ」フィールドに
記録されている障害情報と、「イベントID」フィールドに記録されているイベントIDとを、実行シーケンスにおける最先の障害情報受信モジュール21aに引き渡すとともに、障害情報受信モジュール21aに対して処理の実行開始を指示する。その後、CPU20dは、第1の処理ループL1におけるこの処理対象のレコードの回を終了する。
なお、ステップS505を実行するCPU20dは、前述した指示部に相当している。また、ステップS505は、前述した指示手順に相当している。
CPU20dは、ステップS501で読み込んだイベント管理テーブル23内の全てのレコードについて、第2の処理ループL2とステップS502乃至S505とからなる処理を実行し終えると、第1の処理ループL1から離脱して、図9に係る未完イベント検出処理を終了する。
図9の未完イベント検出処理によれば、CPU20dは、1つの処理対象レコードについて、「1」の状態の動作フラグと「0」の状態の完了フラグとの組み合わせが1つでも存在していれば、その処理対象レコードに係るイベントが未完イベントであるとして、その未完イベントに係る障害情報とイベントIDとを、最先の障害情報受信モジュール21aに引き渡すことができる。
なお、障害情報受信モジュール21aは、未完イベント検出処理から、処理の実行開始が指示されたときには、イベントID発行プログラム200を実行せずに、処理開始指示と同時に受け取った障害情報とイベントIDとに基づいて自モジュールの処理を実行する。
<作用効果>
第1の実施形態では、障害情報受信モジュール21aは、メインフレーム10内のユニットから障害情報を受信するたびに、イベントIDを発行して、そのイベントに対応するレコードをイベント管理テーブル23に追加する。
そして、動作設定が常に有効に固定されている上流側のモジュール21a〜21cは、自モジュールの処理を完了すると、完了フラグ切替プログラム212に従って、処理完了の通知とイベントIDとを直後のモジュールに引き渡す。また、モジュール21a〜21cは、図5のイベント管理テーブル23におけるそのイベントに対応するレコードの自モジュールの完了フラグを「0」から「1」に切り替える。
また、最下流のモジュール21d〜21fのうち、動作設定が有効となっているモジュールも、自モジュールの処理を完了することによって外部出力を終了すると、イベント管理テーブル23におけるそのイベントに対応するレコードの完了フラグを「0」から「1」に切り替える。
従って、図5のイベント管理テーブル23に示すように、イベントIDが「0013」であるイベントの発生時に4個のモジュール21a、21b、21c、21eの動作設定が有効となっていた場合、それらモジュール21a、21b、21c、21eの全てがそのイベントにつき処理を完了していたときには、完了フラグの組み合わせは、「111010」となり、動作フラグの組み合わせ「111010」に一致することとなる。
また、図5のイベント管理テーブル23に示すように、イベントIDが「0014」であるイベントの発生時に5個のモジュール21a〜21eの動作設定が有効となっていた場合、そのイベントに係る指示分配モジュール21cの処理が完了する前に、サービスプロセッサ20にトラブルが発生して各モジュール21a〜21eの動作が止まってしまっ
たときには、完了フラグの組み合わせは、「110000」となり、動作フラグの組み合わせ「111110」に一致しないこととなる。なお、イベント管理テーブル23は、揮発メモリユニット20eではなく、フラッシュメモリユニット20cに記録されているため、サービスプロセッサ20の電源が一旦落とされても、各イベントに係る動作フラグや完了フラグの状態が消去されることはない。
このように、第1の実施形態では、各モジュール21a〜21fの有する動作フラグ切替プログラム211及び完了フラグ切替プログラム212により、イベント発生時の全モジュール21a〜21fの動作設定が、イベント毎に、「動作フラグ」フィールドに記録されるとともに、1つのイベントについてどのモジュールまで処理が完了しているかが、イベント毎に、「完了フラグ」フィールドに記録される。
また、第1の実施形態では、サービスプロセッサ20の電源が一旦落とされて再投入されると、図9の未完イベント検出プログラム24の実行が開始される。未完イベント検出プログラム24により、サービスプロセッサ20は、トラブル発生前に既に生じていた各イベントについて、そのイベントの発生時に動作設定が有効であるとともに、そのイベントにおける自モジュールの処理が完了していないモジュールを、検索する(ステップS502〜S504)。
そして、サービスプロセッサ20は、トラブル発生前に既に生じていた各イベントの中から、そのイベントの発生時に動作設定が有効であるとともにそのイベントにおける自モジュールの処理が完了していないモジュールを、検出したときには、そのイベントに係る障害情報とイベントIDとを、最先の障害情報受信モジュール21aに引き渡して、障害情報受信モジュール21aに対して処理の実行開始を指示する。これにより、トラブル発生時に未完であったイベントが、リブート後に再実行され、実行シーケンス上にある各モジュールの処理が開始されることとなる。
さらに、第1の実施形態では、各モジュール21a〜21fは、直前のモジュールからイベントIDを受け取った場合、自モジュールの有するスキップ判定プログラム213に従って、そのイベントIDの示すイベントについて自モジュールの処理が既に実行済みであるか否かを、判定するようになっている。そして、各モジュール21a〜21fは、そのイベントIDの示すイベントについて自モジュールの処理が既に実行済みであった場合には、自モジュールの処理をスキップし、処理が完了した旨を直後のモジュールに通知することができる。
このように、第1の実施形態では、各モジュール21a〜21fの有するスキップ判定プログラム213により、トラブル発生前に未完であったイベントにおいて既に処理が完了しているモジュールは、リブート後の再実行時に自モジュールの処理をスキップする。このため、そのモジュールが、ログ保存モジュール21bや、メール通報モジュール21eや、SNMP通報モジュール21fのように、外部に出力するタイプのモジュールである場合、トラブル発生前に外部に出力した内容と同じ内容を、リブート後の再実行時に重複出力しなくて済むようになる。
また、第1の実施形態によれば、上流側のモジュールは、処理の完了を通知するため、直後のモジュールに関する情報は持っているが、それより下流側のモジュールに関する情報は持っていない。従って、実行シーケンスに新たなモジュールを追加する場合、管理ソフトウエア21内の全てのモジュールが有する情報を更新する作業を行わなくても、追加されるモジュールと、追加されるモジュールの前後にあるモジュールとについてだけ、処理完了の通知先の情報を調整すればよい。但し、追加されるモジュールは、動作フラグ切替プログラム211、完了フラグ切替プログラム212、及び、スキップ判定プログラム
213を、含む。
実施形態2
以上に説明した第1の実施形態では、メインフレーム10の何れかのユニットから障害情報を入力情報として受信するサービスプロセッサ20は、1台しか存在していなかった。しかし、このようなサービスプロセッサ20がメインフレーム10の全ユニットに対して複数接続されたいわゆる冗長構成においても、同様の効果が得られる。第2の実施形態は、サービスプロセッサ20について冗長構成が採用された実施形態である。
図10は、この第2の実施形態のメインフレームシステムの構成図である。
図10に示すように、第2の実施形態のメインフレームシステムは、メインフレーム10と、2台のサービスプロセッサ20と、管理者端末装置30とを、備えている。このうち、2台のサービスプロセッサ20は、それぞれ、図示せぬ専用線を介してメインフレーム10内の全ユニットと通信自在に接続されている。また、2台のサービスプロセッサ20は、それぞれ、ネットワークNを介して管理者端末装置30と通信自在に接続されている。
図11は、第2の実施形態における2台のサービスプロセッサ20の関係を示す図である。
第2の実施形態における2台のサービスプロセッサ20は、何れも、図2のハードウエア構成と同じハードウエア構成を、有している。また、図11に示すように、管理ソフトウエア21、動作フラグ管理テーブル22、イベント管理テーブル23、及び、未完イベント検出プログラム24は、2台のサービスプロセッサ20のどちらにも、記憶されている。つまり、第2の実施形態における2台のサービスプロセッサ20は、互いに同一のソフトウエア構成を、有している。
但し、第2の実施形態においては、第1の実施形態とは異なり、2台のサービスプロセッサ20には、それぞれ、同期プログラム25が導入されている。同期プログラム25は、2台のサービスプロセッサ20に対してそれぞれ主系と従系とを定義するとともに、主系のサービスプロセッサ20のテーブル22、23になされた更新を従系のサービスプロセッサ20のテーブル22、23に反映することによって、双方のテーブル22、23の同期を取るためのプログラムである。また、同期プログラム25は、一方のサービスプロセッサ20の主電源が切断された場合に、他方のサービスプロセッサ20を主系として動作させる制御も行う。
第2の実施形態によると、主系のサービスプロセッサ20でトラブルが発生して各モジュール21a〜21eの動作が止まってしまった場合でも、トラブル発生時における各イベントの動作フラグの状態と完了フラグの状態は、同期プログラム25、25により、従系のサービスプロセッサ20にも保存されている。従って、トラブルの発生したサービスプロセッサ20の主電源を切断することによって、トラブルの発生していないサービスプロセッサ20が主系として動作されるようになった場合に、主系となったサービスプロセッサ20が図9の未完イベント検出プログラム24を実行すれば、トラブル発生前に主系で未完となってしまったイベントが、再実行されることとなる。
実施形態3
以上に説明した第2の実施形態では、2台のサービスプロセッサ20のそれぞれに、同一の動作フラグ管理テーブル22と同一のイベント管理テーブル23とが、格納されていて、双方のテーブル22、23の内容が、同期するようになっていた。しかし、2台のサ
ービスプロセッサ20が、1組のテーブル22、23を共通に利用する場合でも、同様の効果が得られる。第3の実施形態は、動作フラグ管理テーブル22とイベント管理テーブル23とが2台のサービスプロセッサ20に共通に利用される実施形態である。
図12は、第3の実施形態における2台のサービスプロセッサ20の関係を示す図である。
図12に示すように、第3の実施形態では、動作フラグ管理テーブル22とイベント管理テーブル23とが、2台のサービスプロセッサ20が共にアクセス自在に接続されている記憶装置40に、記録されている。そして、双方のサービスプロセッサ20の各モジュール21a〜21fは、記憶装置40内の動作フラグ管理テーブル22とイベント管理テーブル23とに、レコードの追加、動作フラグの切り替え、完了フラグの切り替えを行う。
また、第3の実施形態では、第2の実施形態の同期プログラム25の代わりに、制御プログラム26、26が、2台のサービスプロセッサ20に導入されている。制御プログラム26、26は、2台のサービスプロセッサ20に対してそれぞれ主系と従系とを定義するとともに、一方のサービスプロセッサ20の主電源が切断された場合に、他方のサービスプロセッサ20を主系として動作させるためのプログラムである。
第3の実施形態によると、主系のサービスプロセッサ20でトラブルが発生して各モジュール21a〜21eの動作が止まってしまった場合でも、トラブル発生時における各イベントの動作フラグの状態と完了フラグの状態は、記憶装置40に保存されている。従って、トラブルの発生したサービスプロセッサ20の主電源を切断することによって、トラブルの発生していないサービスプロセッサ20が主系として動作されるようになった場合に、主系となったサービスプロセッサ20が図9の未完イベント検出プログラム24を実行すると、トラブル発生前に主系で未完となったイベントが、継続されることとなる。
<ユニットに関する説明>
以上に説明した第1乃至第3の実施形態において、サービスプロセッサ20内のインターフェース装置20a、通信アダプタ20b、フラッシュメモリユニット20c、CPU20d、及び、揮発メモリユニット20eは、何れも、ソフトウエア要素とハードウエア要素とから構成されていても良いし、ハードウエア要素のみで構成されていても良い。
ソフトウエア要素としては、インターフェースプログラム、ドライバプログラム、テーブル、及び、データ、並びに、これらのうちの幾つかを組み合わせたものが、例示できる。これらは、後述のコンピュータ可読媒体に格納されたものであっても良いし、ROM[Read Only Memory]及びLSI[Large Scale Integration]などの記憶装置に固定的に組み込まれたファームウエアであっても良い。
また、ハードウエア要素としては、FPGA[Field Programmable Gate Array]、ASIC[Application Specific Integrated Circuit]、ゲートアレイ、論理ゲートの組み合わせ、信号処理回路、アナログ回路、及び、その他の回路が、例示できる。このうち、論理ゲートには、AND、OR、NOT、NAND、NOR、フリップフロップ、カウンタ回路などが、含まれていてもよい。また、信号処理回路には、信号値の加算、乗算、除算(反転)、積和演算、微分、積分などを実行する回路要素が、含まれていてもよい。また、アナログ回路には、増幅、加算、乗算、微分、積分などを実行する回路要素が、含まれていてもよい。
なお、前述したサービスプロセッサ20内のインターフェース装置20a、通信アダプ
タ20b、各ユニット20c〜20eをそれぞれ構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
<ソフトウエア及びプログラムに関する説明>
以上に説明した第1乃至第3の実施形態において、サービスプロセッサ20内の管理ソフトウエア21、この管理ソフトウエア21を構成する各モジュール(プログラム)、動作フラグ管理テーブル22、イベント管理テーブル23、及び、未完イベント検出プログラム24、並びに、前述したソフトウエア要素は、何れも、ソフトウェア部品、手続き型言語による部品、オブジェクト指向ソフトウェア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、プロシジャ(手続き)、サブルーチン(ソフトウェアルーチン)、プログラムコードの断片又は部分、ドライバ、ファームウェア、マイクロコード、コード、コードセグメント、エクストラセグメント、スタックセグメント、プログラム領域、データ領域、データ、データベース、データ構造、フィールド、レコード、テーブル、マトリックステーブル、配列、変数、パラメータなどの要素を、含んでいても良い。
また、管理ソフトウエア21、この管理ソフトウエア21を構成する各モジュール、動作フラグ管理テーブル22、イベント管理テーブル23、及び、未完イベント検出プログラム24、並びに、前述したソフトウエア要素は、何れも、C言語、C++、Java(米国サンマイクロシステムズ社商標)、ビジュアルベーシック(米国マイクロソフト社商標)、Perl、Ruby、その他の多くのプログラミング言語により記述されたものであっても良い。
また、管理ソフトウエア21、この管理ソフトウエア21を構成する各モジュール、動作フラグ管理テーブル22、イベント管理テーブル23、及び、未完イベント検出プログラム24、並びに、前述したソフトウエア要素に含まれる命令、コード及びデータは、有線ネットワークカード及び有線ネットワークを通じて、又は、無線カード及び無線ネットワークを通じて、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、送信又はローディングされても良い。
前述した送信又はローディングにおいて、データ信号は、例えば搬送波に組み込まれることにより(embodied as carrier waves)、有線ネットワーク又は無線ネットワーク上を移動する。但し、データ信号は、前述した搬送波に依らず、いわゆるベースバンド信号のまま転送されても良い。このような搬送波は、電気的、磁気的又は電磁的な形態、光、音響、又は、その他の形態で、送信される。
ここで、有線ネットワーク又は無線ネットワークは、例えば、電話回線、ネットワーク回線、ケーブル(光ケーブル、金属ケーブルを含む)、無線リンク、携帯電話アクセス回線、PHS[Personal Handyphone System]網、無線LAN[Local Area Network]、Bluetooth(ブルートゥース・SIGの商標)、車両搭載型無線通信(DSRC[Dedicated
Short Range Communication]を含む)、及び、これらのうちの何れかからなるネットワークである。そして、データ信号は、命令、コード及びデータを含む情報を、ネットワーク上のノード又は要素に、伝達する。
なお、管理ソフトウエア21、動作フラグ管理テーブル22、イベント管理テーブル23、及び、未完イベント検出プログラム24、並びに、前述したソフトウエア要素を構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
<コンピュータ可読媒体に関する説明>
以上に説明した第1乃至第3の実施形態における何れかの機能は、コード化されてコンピュータ可読媒体の記憶領域に格納されていても良い。この場合、その機能を実現するためのプログラムが、コンピュータ可読媒体を介して、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、提供され得る。コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータは、コンピュータ可読媒体の記憶領域からプログラムを読み出してプログラムを実行することによって、その機能を実現することができる。
ここで、コンピュータ可読媒体とは、電気的、磁気的、光学的、化学的、物理的又は機械的な作用によって、プログラム及びデータ等の情報を蓄積するとともに、コンピュータに読み取られ得る状態でその情報を保持する記録媒体をいう。
電気的又は磁気的な作用としては、ヒューズによって構成されるROM[Read Only Memory]上の素子へのデータの書き込みが、例示できる。磁気的又は物理的な作用としては、紙媒体上の潜像へのトナーの現像が、例示できる。なお、紙媒体に記録された情報は、例えば、光学的に読み取ることができる。光学的且つ化学的な作用としては、基盤上での薄膜形成又は凹凸形成が、例示できる。なお、凹凸の形態で記録された情報は、例えば、光学的に読み取ることができる。化学的な作用としては、基板上での酸化還元反応、又は、半導体基板上での酸化膜形成、窒化膜形成、若しくは、フォトレジスト現像が、例示できる。物理的又は機械的な作用としては、エンボスカードへの凹凸形成、又は、紙媒体へのパンチの穿孔が、例示できる。
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに着脱自在に装着できるものがある。着脱自在なコンピュータ可読媒体としては、DVD[Digital Versatile Disk](DVD±R[Recordable]、DVD−Video、DVD−ROM[Read Only Memory]、DVD−RAM[Random Access Memory]、HD[High Definition]DVDを含む)、BD[Blu-ray Disk](BD−R、BD−RE[Rewritable]、BD−ROM、BD−Videoを含む)、CD[Compact Disk](CD−R、CD−RW、CD−ROMを含む)、MO[Magneto Optical]ディスク、その他の光ディスク媒体、フレキシブルディスク、フロッピーディスク(フロッピーは日立製作所社商標)、その他の磁気ディスク媒体、メモリーカード(コンパクトフラッシュ(米国サンディスク社商標)、スマートメディア(東芝社商標)、SDカード(米国サンディスク社、松下電器産業社、東芝社商標)、メモリースティック(ソニー社商標)、MMC(米国ジーメンス社、米国サンディスク社商標)など)、磁気テープ、及び、その他のテープ媒体、並びに、これらのうちの何れかを内蔵した記憶装置が、例示できる。記憶装置には、DRAM[Dynamic Random Access Memory]又はSRAM[Static Random Access Memory]がさらに内蔵されたものもある。
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに固定的に装着されたものがある。この種のコンピュータ可読媒体としては、ハードディスク、DRAM、SRAM、ROM、EEPROM[Electronically Erasable and Programmable Read Only Memory]、フラッシュメモリなどが、例示できる。
さらに、コンピュータ可読媒体は、ネットワークを通じて結合されたコンピュータネットワークシステムに内包されるものであっても良い。そのようなシステムに格納された命令、コード及びデータを含む情報は、分散処理環境で実行される。
以上の第1乃至第3の実施形態に関し、更に以下の付記を開示する。
(付記1)
所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるための情報処理装置であって、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを記憶する記憶部、
前記記憶部内の前記完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定部、及び、
前記特定部が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示部
を備え、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を前記記憶部から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理装置。
(付記2)
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記完了情報における自モジュールに対応する完了フラグの状態に基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記1記載の情報処理装置。
(付記3)
動作設定が有効又は無効に切替自在であるとともに所定の実行シーケンスが規定されている2個以上のモジュールのうち、前記動作設定が有効であるモジュールに対して処理を実行させるための情報処理装置であって、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを記憶する記憶部、
前記記憶部内の前記動作情報と前記完了情報とに基づいて、前記動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントを、特定する特定部、及び、
前記特定部が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示部
を備え、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する動作情報及び完了情報を前記記憶部から読み出し、読み出した動作情報及び完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理装置。
(付記4)
前記動作情報は、各モジュールの動作設定が有効であるか無効であるかをそれぞれ示す複数の動作フラグからなり、
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記動作情報における自モジュールに対応する動作フラグの状態と、前記完了情報における自モジュールに対応する完了フラグの状態とに基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記3記載の情報処理装置。
(付記5)
何れかのモジュールが処理を完了していないイベントの特定は、主電源の投入を契機として行われる
ことを特徴とする付記1乃至4の何れかに記載の情報処理装置。
(付記6)
所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるための情報処理方法であって、
コンピュータが、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手順、
前記記憶装置内の前記完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定手順、及び、
前記特定手順で特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手順
を実行し、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を前記記憶装置から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理方法。
(付記7)
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記完了情報における自モジュールに対応する完了フラグの状態に基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記6記載の情報処理方法。
(付記8)
動作設定が有効又は無効に切替自在であるとともに所定の実行シーケンスが規定されている2個以上のモジュールのうち、前記動作設定が有効であるモジュールに対して処理を実行させるための情報処理方法であって、
コンピュータが、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手順、
前記記憶装置内の前記動作情報と前記完了情報とに基づいて、前記動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントを、特定する特定手順、及び、
前記特定手順で特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手順
を実行し、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する動作情報及び完了情報を前記記憶装置から読み出し、読み出した動作情報及び完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理方法。
(付記9)
前記動作情報は、各モジュールの動作設定が有効であるか無効であるかをそれぞれ示す複数の動作フラグからなり、
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記動作情報における自モジュールに対応する動作フラグの状態と、前記完了情報における自モジュールに対応する完了フラグの状態とに基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記8記載の情報処理方法。
(付記10)
何れかのモジュールが処理を完了していないイベントの特定は、主電源の投入を契機として行われる
ことを特徴とする付記6乃至9の何れかに記載の情報処理方法。
(付記11)
所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるための情報処理プログラムであって、
コンピュータを、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手段、
前記記憶装置内の前記完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定手段、及び、
前記特定手段が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手段
として機能させ、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を前記
記憶装置から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理プログラム。
(付記12)
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記完了情報における自モジュールに対応する完了フラグの状態に基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記11記載の情報処理プログラム。
(付記13)
動作設定が有効又は無効に切替自在であるとともに所定の実行シーケンスが規定されている2個以上のモジュールのうち、前記動作設定が有効であるモジュールに対して処理を実行させるための情報処理プログラムであって、
コンピュータを、
前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手段、
前記記憶装置内の前記動作情報と前記完了情報とに基づいて、前記動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントを、特定する特定手段、及び、
前記特定手段が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手段
として機能させ、
前記各モジュールが、
何れかの識別情報を受け取った場合に、受け取った識別情報に対応する動作情報及び完了情報を前記記憶装置から読み出し、読み出した動作情報及び完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
を備える
ことを特徴とする情報処理プログラム。
(付記14)
前記動作情報は、各モジュールの動作設定が有効であるか無効であるかをそれぞれ示す複数の動作フラグからなり、
前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
前記判定部は、前記動作情報における自モジュールに対応する動作フラグの状態と、前記完了情報における自モジュールに対応する完了フラグの状態とに基づいて、自モジュールの処理をスキップするか否かを判定する
ことを特徴とする付記13記載の情報処理プログラム。
(付記15)
何れかのモジュールが処理を完了していないイベントの特定は、主電源の投入を契機として行われる
ことを特徴とする付記11乃至14の何れかに記載の情報処理プログラム。
第1の実施形態のメインフレームシステムの構成図 サービスプロセッサの構成図 異常処理系の6個のモジュールの関係を示す図 動作フラグ管理テーブルのテーブル構造を模式的に示す図 イベント管理テーブルのテーブル構造を模式的に示す図 6個のモジュールにおける本実施形態に係る機能を示す図 イベントID発行処理の流れを示す図 スキップ判定処理の流れを示す図 未完イベント判定処理の流れを示す図 第2の実施形態のメインフレームシステムの構成図 2台のサービスプロセッサの関係を示す図 第3の実施形態における2台のサービスプロセッサの関係を示す図
符号の説明
10 メインフレーム
20 サービスプロセッサ
20a インターフェース装置
20b 通信アダプタ
20c フラッシュメモリユニット
20d CPU
20e 揮発メモリユニット
21 管理ソフトウエア
21a 障害情報受信モジュール
21b ログ保存モジュール
21c 指示分配モジュール
21d 本体制御モジュール
21e メール通報モジュール
21f 通報モジュール
210 発行プログラム
211 動作フラグ切替プログラム
212 完了フラグ切替プログラム
213 スキップ判定プログラム
22 動作フラグ管理テーブル
23 イベント管理テーブル
24 未完イベント判定プログラム
30 管理者端末装置
40 記憶装置

Claims (7)

  1. 所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるための情報処理装置であって、
    前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを記憶する記憶部、
    前記記憶部内の前記完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定部、及び、
    前記特定部が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示部
    を備え、
    前記各モジュールが、
    何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を前記記憶部から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
    前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
    を備える
    ことを特徴とする情報処理装置。
  2. 前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
    前記判定部は、前記完了情報における自モジュールに対応する完了フラグの状態に基づいて、自モジュールの処理をスキップするか否かを判定する
    ことを特徴とする請求項1記載の情報処理装置。
  3. 動作設定が有効又は無効に切替自在であるとともに所定の実行シーケンスが規定されている2個以上のモジュールのうち、前記動作設定が有効であるモジュールに対して処理を実行させるための情報処理装置であって、
    前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを記憶する記憶部、
    前記記憶部内の前記動作情報と前記完了情報とに基づいて、前記動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントを、特定する特定部、及び、
    前記特定部が特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示部
    を備え、
    前記各モジュールが、
    何れかの識別情報を受け取った場合に、受け取った識別情報に対応する動作情報及び完了情報を前記記憶部から読み出し、読み出した動作情報及び完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
    前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
    を備える
    ことを特徴とする情報処理装置。
  4. 前記動作情報は、各モジュールの動作設定が有効であるか無効であるかをそれぞれ示す複数の動作フラグからなり、
    前記完了情報は、各モジュールが処理を完了しているか否かをそれぞれ示す複数の完了フラグからなり、
    前記判定部は、前記動作情報における自モジュールに対応する動作フラグの状態と、前記完了情報における自モジュールに対応する完了フラグの状態とに基づいて、自モジュールの処理をスキップするか否かを判定する
    ことを特徴とする請求項3記載の情報処理装置。
  5. 何れかのモジュールが処理を完了していないイベントの特定は、主電源の投入を契機として行われる
    ことを特徴とする請求項1乃至4の何れかに記載の情報処理装置。
  6. 所定の実行シーケンスが規定されている2個以上のモジュールに対して処理を実行させるための情報処理方法であって、
    コンピュータが、
    前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手順、
    所定の操作を受け付けると、前記記憶装置内の前記完了情報に基づいて、何れかのモジュールが処理を完了していないイベントを、特定する特定手順、及び、
    前記特定手順で特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手順
    を実行し、
    前記各モジュールが、
    何れかの識別情報を受け取った場合に、受け取った識別情報に対応する完了情報を前記記憶装置から読み出し、読み出した完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
    前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
    を備える
    ことを特徴とする情報処理方法。
  7. 動作設定が有効又は無効に切替自在であるとともに所定の実行シーケンスが規定されている2個以上のモジュールのうち、前記動作設定が有効であるモジュールに対して処理を実行させるための情報処理方法であって、
    コンピュータが、
    前記実行シーケンスにおける最先のモジュールにて発生するイベント毎に、そのイベントを特定する識別情報と、そのイベントが発生した時点における全モジュールの動作設定の状態を特定する動作情報と、そのイベントについて処理を完了しているモジュールを特定する完了情報とを、記憶装置に記憶する記憶手順、
    前記記憶装置内の前記動作情報と前記完了情報とに基づいて、前記動作設定が有効であったモジュールのうちの何れかが処理を完了していないイベントを、特定する特定手順、及び、
    前記特定手順で特定したイベントに係る識別情報を前記実行シーケンスにおける最先のモジュールに与えて、前記最先のモジュールに当該イベントに係る処理実行を指示する指示手順
    を実行し、
    前記各モジュールが、
    何れかの識別情報を受け取った場合に、受け取った識別情報に対応する動作情報及び完了情報を前記記憶装置から読み出し、読み出した動作情報及び完了情報に基づいて、自モジュールの処理をスキップするか否かを判定する判定部、及び、
    前記判定部が自モジュールの処理をスキップすると判定した場合において、直後のモジュールが存在しているときには、前記直後のモジュールに前記識別情報を引き渡す引渡部
    を備える
    ことを特徴とする情報処理方法。

JP2007316532A 2007-12-07 2007-12-07 情報処理装置及び情報処理方法 Active JP5145910B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007316532A JP5145910B2 (ja) 2007-12-07 2007-12-07 情報処理装置及び情報処理方法
EP08170708A EP2068244B1 (en) 2007-12-07 2008-12-04 Information processing apparatus having a plurality of program modules executing a process
DE602008002040T DE602008002040D1 (de) 2007-12-07 2008-12-04 Informationsverarbeitungsvorrichtung versehen mit einer Mehrzahl von Programmodulen zur Ausführung eines Prozesses
US12/328,847 US8893132B2 (en) 2007-12-07 2008-12-05 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007316532A JP5145910B2 (ja) 2007-12-07 2007-12-07 情報処理装置及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2009140277A true JP2009140277A (ja) 2009-06-25
JP5145910B2 JP5145910B2 (ja) 2013-02-20

Family

ID=40445435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007316532A Active JP5145910B2 (ja) 2007-12-07 2007-12-07 情報処理装置及び情報処理方法

Country Status (4)

Country Link
US (1) US8893132B2 (ja)
EP (1) EP2068244B1 (ja)
JP (1) JP5145910B2 (ja)
DE (1) DE602008002040D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9934114B2 (en) 2013-09-26 2018-04-03 Mistubishi Electric Corporation Communication system, standby device, communication method, and standby program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442954B2 (en) * 2012-11-12 2016-09-13 Datawise Systems Method and apparatus for achieving optimal resource allocation dynamically in a distributed computing environment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62251926A (ja) * 1986-04-25 1987-11-02 Nec Corp プログラム実行可否制御方式
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2004288026A (ja) * 2003-03-24 2004-10-14 Fuji Xerox Co Ltd サービス処理システム、サービス処理システムの処理結果確認方法、及びサービス処理プログラム
JP2005031915A (ja) * 2003-07-10 2005-02-03 Toshiba Corp 業務トランザクション管理装置、方法及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2263988B (en) * 1992-02-04 1996-05-22 Digital Equipment Corp Work flow management system and method
JP4094752B2 (ja) * 1998-11-27 2008-06-04 株式会社日立製作所 トランザクション処理方法及びその実施装置並びにその処理プログラムを記録した媒体
JP2001034304A (ja) * 1999-07-21 2001-02-09 Fujitsu Ltd 監視制御支援装置
JP2001350660A (ja) * 2000-06-06 2001-12-21 Toshiba Corp プログラム実行管理装置及びプログラムを記録したコンピュータ読み取り可能な記録媒体
US6983395B2 (en) * 2001-05-23 2006-01-03 Hewlett-Packard Development Company, L.P. Multi-agent cooperative transaction method and system
JP3710760B2 (ja) 2002-04-24 2005-10-26 株式会社エヌ・ティ・ティ・ドコモ 処理システム、処理装置及び再開処理方法
AU2003298109A1 (en) * 2002-11-07 2004-06-07 Fujitsu Siemens Computers, Inc. Appliance and method for controlling the delivery of an event message in a cluster system
US7107293B2 (en) * 2003-04-30 2006-09-12 International Business Machines Corporation Nested recovery scope management for stateless recovery agents
CA2607435C (en) * 2005-05-26 2011-08-23 United Parcel Service Of America, Inc. Software process monitor
US7475275B2 (en) * 2005-10-27 2009-01-06 International Business Machines Corporation Method for fault handling in a co-operative workflow environment
JP4336353B2 (ja) 2006-05-29 2009-09-30 株式会社沖データ 現像装置及び画像形成装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62251926A (ja) * 1986-04-25 1987-11-02 Nec Corp プログラム実行可否制御方式
JP2003085021A (ja) * 2001-09-07 2003-03-20 Nippon Soken Holdings:Kk リカバリ・リスタート機能を備えたバッチ処理システム、リカバリ・リスタート機能を備えたバッチ処理システム用プログラム、及びそのプログラムを記録した記録媒体
JP2004288026A (ja) * 2003-03-24 2004-10-14 Fuji Xerox Co Ltd サービス処理システム、サービス処理システムの処理結果確認方法、及びサービス処理プログラム
JP2005031915A (ja) * 2003-07-10 2005-02-03 Toshiba Corp 業務トランザクション管理装置、方法及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9934114B2 (en) 2013-09-26 2018-04-03 Mistubishi Electric Corporation Communication system, standby device, communication method, and standby program

Also Published As

Publication number Publication date
US20090254911A1 (en) 2009-10-08
JP5145910B2 (ja) 2013-02-20
EP2068244A1 (en) 2009-06-10
DE602008002040D1 (de) 2010-09-16
US8893132B2 (en) 2014-11-18
EP2068244B1 (en) 2010-08-04

Similar Documents

Publication Publication Date Title
US10810096B2 (en) Deferred server recovery in computing systems
JP5259714B2 (ja) 実行順序決定装置、実行順序決定プログラム、実行順序決定回路及び情報処理装置
JP2007219757A (ja) 仮想計算機システムを機能させるためのプログラム
JP2018128820A (ja) 制御装置およびその制御方法
US20110209134A1 (en) Information processing apparatus
KR101017296B1 (ko) 정보 처리 장치, 에러 통지 프로그램, 에러 통지 방법
JP4322240B2 (ja) 再起動方法、システム及びプログラム
JP5145910B2 (ja) 情報処理装置及び情報処理方法
JP5282569B2 (ja) 管理装置、管理システム、管理方法及び管理プログラム
JP2007179242A (ja) 電子機器及びその省電力設定方法
JP6515462B2 (ja) 情報処理装置、情報処理装置の設定方法及び設定プログラム
KR101576370B1 (ko) 컴퓨터 시스템의 원격 복원 시스템 및 그 방법, 그리고 기록한 컴퓨터로 읽어 들일 수 있는 기록매체
JP2009009323A (ja) 設定装置、電子機器、及び設定プログラム
JP2009245391A (ja) 情報処理装置、エラー処理方法及びプログラム
JP2002049509A (ja) データ処理システム
JP2006079155A (ja) 情報処理装置
JP2010039578A (ja) ストレージ管理方法、ストレージ制御装置及びストレージシステム
JP2008257438A (ja) デバッグ装置の制御に用いる例外処理装置、例外処理方法、例外処理プログラム、並びに、前記例外処理装置を組み込んだテレビ及び携帯電話
JP2008293375A (ja) 稼動監視装置、稼動監視方法および稼動監視プログラム
JP2017102887A (ja) 情報処理装置、起動方法および起動プログラム
JP2017062697A (ja) 情報処理装置、情報処理システム、情報処理方法およびプログラム
JP5411085B2 (ja) プログラム評価装置
JP2005346403A (ja) 情報処理装置及び情報処理システム
JPWO2007096956A1 (ja) 中央処理装置
JP5401137B2 (ja) 情報管理装置、情報管理方法および情報処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120508

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120709

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120807

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121005

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121030

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121112

R150 Certificate of patent or registration of utility model

Ref document number: 5145910

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3