(57)【要約】【課題】同一プラットフォームを有し、各々でジョブを実行する複数のコンピュータ間で相互にジョブ実行委託を行なう新たなジョブ処理システムを提供する。【解決手段】ホストコンピュータ１（２）のジョブ入力部１１（２１）にジョブ投入がされる毎に、ジョブ管理部１２（２２）は該ジョブをジョブログファイル１４１（２４１）に格納してジョブ実行開始日時に従ってジョブ実行部１２（２２）にジョブ実行を行なわせる。ジョブ管理部１２（２２）はイベント検出部１５（２５）からのジョブ実行委託イベントの検出通知を受けるとジョブログファイル１４１（２４１）を他のホストコンピュータ２（１）にファイル転送して他のホストコンピュータ２（１）におけるジョブログファイル２４１（１４１）との併合処理を行ってファイル更新させる。【選択図】          図１
2004206298.tif 000002
【特許請求の範囲】
【請求項１】
個々に独立してジョブ処理を行なう複数のホストコンピュータがネットワークに接続されるジョブ処理システムにおいて、
前記ホストコンピュータは、
ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、
ジョブ情報を格納するジョブログファイルと、
少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御するジョブログファイル管理手段と、
前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なうジュブ管理手段と、
各種イベントを検出するイベント検出手段と、
前記イベント検出手段が他ホストコンピュータに対するジョブ実行委託を示す特定イベントを検出した際、他ホストコンピュータにジョブ実行委託要求を送出し、該要求に対する応答が戻ってきたときに、前記ジョブログファイルを他ホストコンピュータに転送して他ホストコンピュータでのジョブログファイルの更新処理を行なうファイル転送手段と、
を備えることを特徴とするジョブ処理システム。
【請求項２】
前記ジョブログファイル管理手段は、実行プログラムの格納先を示す情報とジョブ名を対応付けたプログラム格納先テーブルを有し、
入力されたジョブ名に該当する実行プログラム格納先情報を取得して前記入力ジョブ情報に付加することを特徴とする請求項１記載のジョブ処理システム。
【請求項３】
前記ファイル転送手段はＴＣＰ／ＩＰ通信手順に従って前記ジョブログファイル内のジョブ情報をファイル転送することを特徴とする請求項１記載のジョブ処理システム。
【請求項４】
個々に独立してジョブ処理を行なう複数のホストコンピュータがネットワークに接続されるジョブ処理システムにおいて、
前記ホストコンピュータは、
ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、
ジョブ情報を格納するジョブログファイルと、
少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御するジョブログファイル管理手段と、
前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なうジョブ管理手段と、
他ホストコンピュータからのジョブ実行委託要求を受信する受信手段と、
前記受信手段がジョブ実行委託要求を受信した際に、前記ジョブ管理手段によって実行待機中の次回ジョブが設定されていれば該ジョブの実行を中止にした後に、前記要求に対する受諾応答を前記他ホストコンピュータに送出する第１の応答手段と、
前記応答手段により送出された受諾応答により前記他ホストコンピュータからファイル転送されるジョブログファイルと前記ジョブログファイルを合併して前記ジョブログファイルを更新するファイル更新手段と、
前記ファイル更新手段により更新されたジョブログファイル内の各ジョブ情報に従ってジョブ実行を再開するジョブ再開手段と、
を備えることを特徴とするジョブ処理システム。
【請求項５】
前記ファイル更新手段によって前記ジョブログファイルが更新された際にファイル更新終了応答をファイル転送元であるジョブ実行委託元のホストコンピュータに送出し、該ジュブ実行委託元ホストコンピュータでのジョブ実行委託終了処理を行なわせる第２の応答手段を、更に備えることを特徴とする請求項４記載のジョブ処理システム。
【請求項６】
ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、ジョブ情報を格納するジョブログファイルとを有する個々に独立してジョブ処理を行なう複数のホストコンピュータとがネットワークに接続されるジョブ処理システムで用いられるプログラムであって、
前記プログラムは
前記ホストコンピュータに、
少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御を行なう処理と、
前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なう処理と、
各種イベントを検出する処理と、
前記イベント検出処理が他ホストコンピュータに対するジョブ実行委託を示す特定イベントを検出した際、他ホストコンピュータにジョブ実行委託要求を送出し、該要求に対する応答が戻ってきたときに、前記ジョブログファイルを他ホストコンピュータに転送して他ホストコンピュータでのジョブログファイルの更新処理を行なう処理と、
を行なわせるためのプログラム。
【請求項７】
ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、ジョブ情報を格納するジョブログファイルとを有する個々に独立してジョブ処理を行なう複数のホストコンピュータとがネットワークに接続されるジョブ処理システムで用いられるプログラムであって、
前記プログラムは、
前記ホストコンピュータに、
少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御を行なう処理と、
前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なう処理と、
他ホストコンピュータからのジョブ実行委託要求を受信する処理と、
前記受信処理がジョブ実行委託要求を受信した際に、前記ジョブ管理手段によって実行待機中の次回ジョブが設定されていれば該ジョブの実行を中止にした後に、前記要求に対する受諾応答を前記他ホストコンピュータに送出する処理と、前記応答処理により送出された受諾応答により前記他ホストコンピュータからファイル転送されるジョブログファイルと前記ジョブログファイルを合併して前記ジョブログファイルを更新する処理と、
前記ファイル更新処理により更新されたジョブログファイル内の各ジョブ情報に従ってジョブ実行を再開する処理と、
を行なわせるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、同一の構成からなり、各々がジョブ処理機能をする複数のホストコンピュータ間におけるジョブ処理技術に関し、特に、自ホストコンピュータに投入されたジョブの実行委託を他のホストコンピュータに対して行なうジョブ処理技術に関する。
【０００２】
【従来の技術】
従来、各々が投入されたジョブの実行を同じプラットフォームを用いて行なうホストコンピュータ間を接続し、ジョブが投入された際に自己コンピュータの負荷状態が限界値を超えた場合に、他のホストコンピュータのうち負荷が一番少ないホストコンピュータに対して投入ジョブの実行委託を行う複数のコンピュータで構成される分散コンピュータシステムを実現している（例えば、特許文献１参照。）。
また、実行しているホストコンピュータに何らかの障害が発生した場合には、他のホストコンピュータに切替え、他方のホストコンピュータに対して障害が発生したホストコンピュータのジョブ情報を投入することにより、障害の回復を待たずに、他方のホストコンピュータにより速やかにそのジョブの再実行を行なうジョブ実行処理システムを実現している（例えば、特許文献２参照。）。
【０００３】
【特許文献１】
特開平５−１０１０１９号公報
【特許文献２】
特開平１０−３２６２０１号公報
【０００４】
【発明が解決しようとする課題】
上述した従来技術は、自コンピュータおける過負荷状態でジョブが投入される度に、或いは障害によりジョブを再実行する必要が生じる度に、ジョブを他のコンピュータに転送することが前提になっている。従って、ジョブ実行委託を受けたコンピュータでは、ジョブ実行委託を受ける度に自コンピュータに投入されたジョブの実行を行なうことができず、実行委託ジョブ処理に費やす処理時間の如何によっては自コンピュータにおける業務処理遂行スケジュールに支障をきたす可能性がある。
また、障害が回復するまでは、障害発生時以降に投入されるべき他のジョブの実行を実施することはできず、その回復作業の如何によってはジョブ実行スケジュールに支障をきたす可能性がある。
【０００５】
以上の問題を鑑み、複数のコンピュータからなるシステムを構成する各コンピュータのジョブ情報を取得する手段を有するコンピュータシステムにおけるジョブ実行処理を効率的に行なう新たな技術を提供することが本発明の課題である。
【０００６】
【課題を解決するための手段】
本発明の態様のひとつであるジョブ処理システムは、個々に独立してジョブ処理を行なう複数のホストコンピュータがネットワークに接続されるジョブ処理システムにおいて、前記ホストコンピュータは、ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、ジョブ情報を格納するジョブログファイルと、少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御するジョブログファイル管理手段と、前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なうジュブ管理手段と、各種イベントを検出するイベント検出手段と、前記イベント検出手段が他ホストコンピュータに対するジョブ実行委託を示す特定イベントを検出した際、他ホストコンピュータにジョブ実行依頼要求を送出し、該要求に対する応答が戻ってきたときに、前記ジョブログファイルを他ホストコンピュータに転送して他ホストコンピュータでのジョブログファイルの更新処理を行なうファイル転送手段と、を備えることによって前述した課題を解決する。
【０００７】
こうすることによって、ジョブ実行委託先のホストコンピュータのジョブスケジュールにジョブ実行委託元のホストコンピュータ上のジョブスケジュールを自動的に組み込むことが可能となる。
【０００８】
なお、前述した本発明に係るジョブ処理システムにおいて、入力されたジョブ名に対応する実行プログラムの格納先を示す情報はプログラム格納先テーブルから取得が行われるので、容易に入力されたジョブ情報に付加することができる。
【０００９】
また、前述した本発明に係るジョブ処理システムにおいて、ジョブ実行委託先へのファイル転送はＴＣＰ／ＩＰ通信手順に従って行われるので、特別な通信手順を用いることなく、そのファイル転送速度が向上する。
また、本発明の別の実施形態のひとつであるジョブ処理システムは、個々に独立してジョブ処理を行なう複数のホストコンピュータがネットワークに接続されるジョブ処理システムにおいて、前記ホストコンピュータは、ジョブ名とジョブ実行プログラムを対応付けて記憶するプログラムファイルと、ジョブ情報を格納するジョブログファイルと、少なくともジョブ名とジョブ開始日時からなるジョブ情報が入力される毎に、該ジョブ情報とジョブ名に対応する実行プログラムの格納先情報との組をジョブ開始日時に応じて前記ジョブログファイルに格納制御するジョブログファイル管理手段と、前記ジョブログファイルに格納されたジョブ情報のうち現在日時と一致するジョブ開始日時を有するジョブ情報のジョブ名に従って前記プログラムファイル内のジュブ実行プログラムの起動を行なうジュブ管理手段と、他ホストコンピュータからのジョブ実行委託要求を受信する受信手段と、前記受信手段がジョブ実行委託要求を受信した際に、前記ジョブ管理手段によって実行待機中の次回ジョブが設定されていれば該ジョブの実行を中止にした後に、前記要求に対する受諾応答を前記他ホストコンピュータに送出する第１の応答手段と、前記応答手段により送出された受諾応答により前記他ホストコンピュータからファイル転送されるジョブログファイルと前記ジョブログファイルを合併して前記ジョブログファイルを更新するファイル更新手段と、前記ファイル更新手段により更新されたジョブログファイル内の各ジョブ情報に従ってジョブ実行を再開するジョブ再開手段と、を備えることによって前述した課題を解決する。
【００１０】
こうすることによって、ジョブ実行委託先のホストコンピュータのジョブスケジュールにジョブ実行委託元のホストコンピュータ上のジョブスケジュールを確実に組み込むことが可能となる。
【００１１】
なお、ジョブ実行委託先のホストコンピュータにおけるジョブログファイルの更新処理が終了した後に、ファイル更新処理終了応答をジョブ実行委託元のホストコンピュータに送出を行なうので、ジョブ実行委託元のホストコンピュータにおけるジョブ実行委託終了処理を確実に行なうことが可能となる。
【００１２】
また、前述した本発明に係るジョブ処理システムに相当する処理をコンピュータに行わせるためのプログラムであっても、そのプログラムをコンピュータに読み込ませて実行させることによって、前述した本発明に係るジョブ処理システムと同様な作用・効果が得られ、前述した課題が解決される。
【００１３】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。
本実施形態では、一以上の複数のホストコンピュータにより構成されるシステムを前提とする。複数のホストコンピュータは相互に通信を行う手段として、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）プロトコルのベースのネットワークにより接続されているものとする。
図１は、本実施形態のジョブ処理システムの全体構成を示す図であり、複数のホストコンピュータ、本実施形態ではホストコンピュータ１とホストコンピュータ２とがローカルネットワーク３により接続されて、その主要部が構成されている。
【００１４】
ホストコンピュータ１は、通常、投入されたジョブをジョブスケジュールに従って実行するものであり、ホストコンピュータ１に接続される端末（図示せず）から投入されるジョブを入力するジョブ入力部１１、ジョブ実行を管理するジョブ管理部１２、ジョブを実行するジョブ実行部１３、ジョブ実行ログファイル１４１、ジョブ実行プログラムファイル１４２、およびジョブ結果ファイル１４３からなる記憶部１４、システム状態の監視を行なうイベント検出部１５、実行中のジョブ状態を監視するジョブ実行状態監視部１６、及びホストコンピュータ２と通信を行なう通信部１７とを備えている。
【００１５】
ホストコンピュータ２も、ホストコンピュータ１と同様に構成されており、投入されたジョブをジョブスケジュールに従って実行するものであり、ジョブ入力部２１、ジョブ管理部２２、ジョブ実行部２３、記憶部２４、システム状態監視部２５、ジョブ実行状態監視部２６、及び通信部２７とを備えている。
【００１６】
ジョブ入力部１１（２１）は、ホストコンピュータ１（２）に接続されている端末（図示せず）からジョブの投入を受け付け、該投入ジョブ情報をジョブ管理部１２（２２）に出力を行なう。
【００１７】
ジョブ管理部１２（２２）は、ジョブ実行の開始及びスケジュールの制御を行なう。ジョブ管理部１２（２２）はジョブが投入される毎に、ジョブ管理部１２（２２）内部に設けられている図２に示すようなテーブル構造を有するジョブ実行プログラム格納先テーブルを参照してそのジョブを起動するジョブ実行プログラムが格納されている場所を抽出してログファイル１４１に実行開始日時の順に格納してログファイル１４１の管理を行なう。
【００１８】
ジョブ実行ログファイル１４１（２４１）の構造を図３に示す。同図に示すように、ジュブ実行ログファイル１４１（２４１）では、ジョブ名、パス名、引数、及びジョブ開始日付、時刻で１つのレコードが構成され、各レコードにはレコード番号が付されて格納される。
【００１９】
ジョブ実行部１３（２３）は、ジョブ実行ログファイル１４１に格納されているジョブレコードのジョブ開始日時（スケジュール）に従ってジョブ管理部１２（２２）から渡されるジョブ実行パラメータにより記憶部１４（２４）のジョブ実行プログラムファイル１４２からジョブに対応するジョブ実行プログラムを読み出してジョブの実行を行なうと共に、ジョブ結果を記憶部１４のジョブ結果ファイル１４３に保存を行なう。
【００２０】
ジョブ実行プログラムファイル１４２と２４３は共にハードディスク装置等の外部記憶装置で構成され、各々のジョブに対応する実行プログラムを同一のパス名および同一の引数で示される同一の場所に格納される。
【００２１】
イベント検出部１５（２５）は、システム状態の監視を常時行ない、システム障害やジョブ実行委託のイベントが発生した際に、そのイベント情報をジョブ管理部１２（２２）に通知を行なう。
【００２２】
ジョブ実行状態監視部１６（２６）は、システムにおいてジョブ実行状態の監視を常時行ない、ジョブ管理部１２（２２）からの要求に応答してジョブ実行状態の通知を行なう。
【００２３】
更に、ジョブ管理部１２（２２）はシステム状態監視部１６でジョブ実行委託を示すイベント情報が検出されたことの通知を受けると、該ジョブ実行委託イベント検出の通知に応答してホストコンピュータ２（１）にジョブ実行委託を要求し、ジョブ実行ログファイル１４１（２４２）の転送を行なう。また、ジョブ管理部１２は他のホストコンピュータ２（１）からジョブ実行委託要求を受けると、ジョブ実行状態監視部１６によりジョブ実行中状態でなければジョブ実行ログファイルを受け付け、受け付けたログファイル内の各々のジョブパラメータを該パラメータに含まれるジョブ開始日時に基づいてログファイルに格納し、ログファイル１４１の更新を行なってログファイル１４１（１４２）の管理を行なう。
【００２４】
通信部１７（２７）は、ローカルネットワーク３、例えばＴＣＰ／ＩＰのベースのＬＡＮ（Local Area Network）で接続されるホストコンピュータ１と２間でログファイル１４１および２４２をＦＴＰ（File Transfer Protocol）形式によって送受信の制御を行なう。
【００２５】
本発明の実施対応のジョブ処理システムは以上のように構成されている。
なお、図１に示したホストコンピュータ１（２）の構成のうち、ジョブ入力部１１（２１）、ジョブ管理部１２（２２）、ジョブ実行部１３（２３）、イベント検出部１５（２５）、ジョブ実行状態漢字部１６（２６）、及び通信部１７（２７）は、標準的な構成を有するコンピュータ、すなわち、制御プログラムを実行することで各構成要素を制御するＣＰＵと、ＲＯＭやＲＡＭ及び磁気記憶装置などからなり、ＣＰＵに各構成要素を制御させる制御プログラムの記憶やＣＰＵが制御プログラムを実行する際のワークエリアあるいは各種データの記憶領域として使用される記憶部と、ユーザによる操作に対応する各種データが取得される入力部と、ディスプレイなどに各種データを提示してユーザに通知する出力部、ネットワークに接続するためのインターフェース機能を提供するＩ／Ｆ部とを備えるコンピュータで構成することもできる。
【００２６】
以下、ホストコンピュータ１（２）で行なわれる処理の手順について説明する。
図４はホストコンピュータ１（２）で行われるジョブ実行処理の処理内容を示すフローチャートである。ホストコンピュータ１とホストコンピュータ２では同様な処理が行われる。
尚、説明を簡単にするためホストコンピュータ１でのジョブ実行処理を説明し、ホストコンピュータ２でのジョブ実行処理の説明は省略する。
【００２７】
まず、Ｓ１０１では、ホストコンピュータ１に接続されている端末装置（図示せず）を用いて、オペレータにより新たな起動対象のジョブ名とその開始日付、開始時刻からなるジョブ情報がジョブ入力部１１に入力されたか否かが判別される。そして、この判別結果がＹｅｓならばＳ１０２に進み、ジョブ処理が開始される。またＮｏならばジョブ入力が行われるまで待つ。
【００２８】
Ｓ１０２では、ジョブ入力部１１にジョブ情報が入力された際に、既に投入されているジョブが実行中か否かをジョブ実行監視部１６にジョブ管理部１２が問い合わせ、問い合わせの結果がＹｅｓならば、つまりジョブが実行されていないと判別された場合にはＳ１０３に進み、Ｎｏならば、つまりジョブ実行中ならばその実行中のジョブが終了するまで待ってＳ１０３に進み、
【００２９】
Ｓ１０３では、ジョブログファイル１４１に待ちジョブがあるか否かがジョブ管理部１２によって判別される。この判別結果がＹｅｓならば、つまり待ちジョブがあると判別されるとＳ１０４に進み、Ｎｏならば、つまり待ちジョブがないと判別されるとＳ１０５に進む。
【００３０】
Ｓ１０４では、ジョブの登録処理のためにジョブ管理部１２によって次回実行対象ジョブである待ちジョブの実行の停止処理を行なう。
【００３１】
Ｓ１０５では、待ちジョブの実行停止処理が終了すると、ジョブ入力部１１は一時的に保存されているジョブ情報をジョブ管理部１２に渡す。
Ｓ１０６では、ジョブ管理部１２において渡されたジョブ情報に含まれるジョブ名に該当する実行プログラムの格納位置を示すパス名と引数が図８（ａ）に示すジョブ格納先テーブルから取得される。
【００３２】
Ｓ１０７では、ジョブ管理部１２において、Ｓ１０６で取得されたパス名と引数と、前述したＳ１０５で受け付けたジョブ情報（ジョブ名、ジョブ開始日時）とからなるレコードの生成が行なわれる。
【００３３】
Ｓ１０８では、Ｓ１０７で生成されたレコードをジョブ情報に含まれるジョブ開示日時に応じてジョブログファイルにジョブ管理部１２によって格納される。つまり、ジョブの実行スケジュールの再設定が行われる。
【００３４】
Ｓ１０９では、Ｓ１０８にて再設定が行われたスケジュールに従って、現在日時以降のＳ１０４の処理にて中断していたジョブ実行の再開処理が行われる。このジョブ実行再開処理の詳細は後述する。
【００３５】
これまでの処理がジョブ実行処理である。
次に図４に示したジョブ実行処理におけるＳ１０９の処理において行われるジョブ実行再開処理の詳細について説明する。この処理は、オペレータにより入力されたジョブを含み再設定されたジョブ実行スケジュールの現在日時以降の先頭ジョブからジョブ実行を再開するものである。尚、この処理は全てジョブ管理部１２によって行われる。
【００３６】
図５はジョブ実行再開処理の処理内容を示すフローチャートである。
まず、Ｓ２０１では、現在時刻Ｔｒをシステム時計（図示せず）から現在時刻Ｔｒの取得が行われ、内部メモリ（図示せず）に一時的に格納が行われる。
【００３７】
Ｓ２０２では、変数Ｎに初期値である「１」が代入される。
Ｓ２０３では、変数Ｎの値で示されるレコード番号がＮであるジョブ情報のジョブ開始日時Ｔｓをジョブログファイルから取得が行なわれる。
【００３８】
Ｓ２０４では、前述したＳ２０１とＳ２０３の各々の処理により取得してある現在時刻Ｔｒとジョブ開始日時Ｔｓとの比較が行なわれ、現在時刻Ｔｒよりジョブ開始日時Ｔｓが未来の時間空間にあるか否かが判別される。そして、この判別結果がＹｅｓであればＳ２０６に処理が進み、ＮｏあればＳ２０５に処理が進む。
【００３９】
Ｓ２０５では、Ｎ＋１なる加算が行なわれ、この加算結果が変数Ｎに代入される。この処理が終わった後にはＳ２０３へと処理が戻って上述した処理が繰り返される。
【００４０】
Ｓ２０６では、変数ｍに初期値である「１」が代入される。
Ｓ２０７では、変数Ｎの値で示されるレコード番号がＮに該当するレコードから実行プログラムが格納されている格納場所を示すジョブ情報（パス名、引数）の取得が行われる。
【００４１】
Ｓ２０８では、前述したＳ２０７の処理でジョブ情報（パス名、引数）が取得できたか否かが判別される。この判別結果がＹｅｓであればＳ２０９の処理が進み、Ｎｏであればジョブログファイル１４１内に格納されているジョブの全てが実行されたものと見なして、ジョブ実行再開処理が終了する。
【００４２】
Ｓ２０９では、変数ｍが「１」か否かが判別される。この判別結果がＹｅｓ、つまりジョブ実行再開処理における最初のジョブの実行である場合にはＳ２１０に処理が進み、Ｎｏであれば、２番目以降のジョブの実行であると見なし、Ｓ２１１に処理が進む。
【００４３】
Ｓ２１０では、Ｓ２０３の処理で取得してあるジョブ開始時刻ＴｓとＳ２０１の処理で取得してある現在時刻Ｔｓとの時間差Ｔｉを求め、この時間差の値Ｔ１をジョブ実行時刻計時用タイマ（図示せず）への設定が行なわれる。
【００４４】
Ｓ２１１では、現在実行中のジョブの開始時刻Ｔs-1と次ジョブの実行開始時刻Ｔｓまでの時間差Ｔ２を求め、求めた値Ｔ２をジョブ実行時刻計時用タイマへの設定が行われる。
【００４５】
Ｓ２１２では、上述したＳ２１０またはＳ２１１の処理でジョブ実行時刻計時用タイマに値が設定されると同時にダウンカウントが開始される。このタイマは一定の時間が経過することに１つずつデクリメントされる。
Ｓ２１３では、タイマ値が「０」か否かが判別される。この判別結果がＹｅｓならば、Ｓ２１４の処理に進み、Ｎｏならば、タイマ値が「０」になるまで待つ。
【００４６】
Ｓ２１４では、Ｓ２０７の処理で取得したジョブ情報（パス名、引数）をジョブ実行部１３に渡し、ジョブ実行部１３によって渡されたジョブ情報で示される実行プログラムファイル１４２内の格納場所に格納されている実行プログラムが起動される。
【００４７】
Ｓ２１５では、Ｓ２１４の処理で実行プログラムが起動されると、Ｎ＋１なる加算がジョブ管理部１２において行なわれてこの計算結果が変数Ｎに代入されると共に、ｍ＋１なる加算がジョブ管理部１２によって行なわれてこの計算結果が変数ｍに代人される。そして、この処理が終わった後にはＳ２０７に処理が戻ってＳ２０７〜Ｓ２１６の処理が繰り返される。つまり、ジョブログファイル１４１に格納されてスケジューリングされている最終のジョブが起動されるまで上述した処理が繰り返される。
【００４８】
これまでの処理がホストコンピュータ１とホストコンピュータ２の各々におけるジョブ実行再開処理である。
次に、ホストコンピュータでジョブ実行委託要求が発生したときの他のホストコンピュータへのジョブ実行委託処理、およびジョブ実行委託を受けたホストコンピュータにおけるジョブログファイル更新処理について説明する。この処理は、ホストコンピュータ１とホストコンピュータ２とがインターネット等のＴＣＰ／ＩＰベースのネットワークに接続されていることを前提とする。
【００４９】
尚、説明を簡単にするためにホストコンピュータ１をジョブ実行委託要求が発生したジョブ実行委託元とし、ホストコンピュータ２をジョブ実行委託先として説明する。
図６はホストコンピュータ１におけるジョブ実行委託処理を示すフローチャートである。
【００５０】
まず、Ｓ３１０では、イベント検出部１５からのジョブ実行委託や各種障害の特定イベントの検出通知をジョブ管理部１２において受けたか否かが判別される。この判別結果がＹｅｓならばＳ３１１の処理に進み、Ｎｏならば特定イベント発生の通知を受けるまで待つ。
【００５１】
Ｓ３１１では、ジョブ管理部１２が通信部１７に対してホストコンピュータ２とのコネクション開設の要求を行ってホストコンピュータ２間のコネクションが確立した後に、ジョブ管理部１２においてジョブログファイル１４１の転送許可要求の生成を行ってその要求を通信部１７からホストコンピュータ２に対して行なわれる。
【００５２】
Ｓ３１２では、転送許可要求に応答してホストコンピュータ２から返信されてくる転送準備完了通知を受信したか否かが判別される。この判別結果がＹｅｓであればＳ３１４の処理に進み、ＮｏであればＳ３１３の処理に進む。
Ｓ３１３では、前述のＳ３１１の処理によって転送許可要求を行なってから経過した時間がジョブ管理部１２によって所定時間内か否かが判別される。この判別結果がＹｅｓならばＳ３１１の処理に戻ってＳ３１１〜Ｓ３１２の処理を繰り返して行ない、Ｎｏならば準備完了通知の受信を待つ。
【００５３】
Ｓ３１４では、Ｓ３１２にてホストコンピュータ２からの転送準備完了通知を受け取ると即座にジョブ管理部１２によってジョブログファイル１４１の内容を通信部１７を介してジョブ実行委託先のホストコンピュータ２にＦＴＰ形式でファイル転送が行なわれる。
【００５４】
Ｓ３１５では、ファイル転送に応答してホストコンピュータ２から返信されてくるログファイル転送完了通知を受信したか否かがジョブ管理部１２によって判別される。この判別結果がＹｅｓであればＳ３１７の処理に進み、ＮｏならばＳ３１６の処理に進む。
【００５５】
Ｓ３１６では、Ｓ３１４の処理によってファイル転送を行なってから経過した時間が所定時間内か否かがジョブ管理部１２によって判別される。この判別結果がＹｅｓならばファイル転送エラーやジョブ実行委託先のホストコンピュータ２において何らかの障害が発生してファイル転送が失敗したものと見做され、Ｓ３１１の処理に戻ってＳ３１１〜Ｓ３１６の処理を繰り返して行ない、Ｎｏならば転送完了通知の受信を待つ。
【００５６】
Ｓ３１７では、Ｓ３１０でイベント検出部１５によって検出されて一時的に保存されているイベントがジョブ実行委託イベントか否かが判別される。こんも判別結果がＹｅｓであればＳ３１８の処理に進み、Ｎｏであれば電源遮断イベントであると見做してＳ３１９の処理に進む。
【００５７】
Ｓ３１８では、ジョブログファイル１４１の内容がジョブ管理部１２によって削除されて、ジョブログファイル１４１の初期化が行われる。
Ｓ３１９では、電源制御部（図示せず）の制御下でオープンされているファイルのクローズ処理等の電源遮断処理を行なわれる。
【００５８】
これまでの処理がホストコンピュータ１またはホストコンピュータ２でのジョブ実行委託処理である。
次に、ジョブ実行委託先コンピュータとしてのホストコンピュータの処理を詳細に説明する。
【００５９】
図７はジョブ実行委託先であるホストコンピュータ２におけるジョブログファイル更新処理を示すフローチャートである。
まず、Ｓ４１０では、ジョブ実行委託元のホストコンピュータ１からのジョブログファイル転送許可要求を受信したか否かがジョブ管理部２２によって判別される。この判別結果がＹｅｓならばＳ４１１の処理に進み、Ｎｏならばジョブログファイル転送許可要求を受信するまで待つ。
【００６０】
Ｓ４１１では、ジョブ実行部２３でジョブが実行されていないか否かを判別される。この判別処理はジョブ管理部２２がジョブ実行状態監視部２６に対して問い合わせた結果に基づいて判別される。この判別結果がＹｅｓであればＳ４１２の処理に進み、Ｎｏであれば現在実行中のジョブが終了するまで待つ。
【００６１】
Ｓ４１２では、ジョブログファイル２４１に次回の待ちジョブがあるか否かがジョブ管理部２２によって判別される。この判別結果がＹｅｓであればＳ４１３の処理に進み、ＮｏであればＳ４１４の処理に進む。
【００６２】
Ｓ４１３では、ジョブ実行部２３に対してジョブ管理部２２から次回待ちジョブの実行開始処理の中止指令が出される。そしてジョブ実行部２３におけるジョブ実行開始中止処理が終わった後にＳ４１４の処理に進む。
【００６３】
Ｓ４１４では、転送ファイルの受入ＯＫであるレディ状態にあることを示す準備完了通知をジョブ管理部２２によって依頼元のホストコンピュータ１に対して送信部２７を介して送信を行なう。
【００６４】
Ｓ４１５では、送信した準備完了通知に応答して依頼元からＦＴＰ形式により転送されてくるジョブログファイル（図１のログファイル１４１）を受信したか否かが判別される。この判別結果がＹｅｓならばＳ４１６の処理に進み、ＮｏならばＳ４１７の処理に進む。
【００６５】
Ｓ４１６では、受信したジョブ実行委託元のログファイル（図１のログファイル１４１）を一時的に内部メモリ（図示せず）に保存を行って、保存された依頼元ログファイルと自己ログファイル２４１とをジョブ開始日時をキーとする図８に示すようなマージ処理がジョブ管理部２２において行われる。このマージ処理によって依頼元で投入されたジョブが依頼先のジョブスケジュールとして再設定されたことになる。
【００６６】
Ｓ４１７では、前述のＳ４１４の処理で準備完了通知を依頼元に送信を行ってから経過した時間が所定時間内か否かがジョブ管理部２２において判別される。この判別結果がＹｅｓならば、何らかの伝送エラーや依頼元において障害が発生したものと見做してジョブログファイル更新処理が終了する。Ｎｏであれば、つまり所定時間内ならばＳ４１５の処理に戻って依頼元からログファイルの転送を待つ。
【００６７】
Ｓ４１８では、前述のＳ４１６のマージ処理が終了した後に、ログファイル受入終了通知をジョブ管理部２２によって通信部２７を介して依頼元への送信が行われる。
【００６８】
以上の処理がジョブ実行委託先で行われるジョブログファイル更新処理である。
なお、前述した図４から図７にかけて示した各種の処理を前述したような標準的な構成を有するコンピュータに行わせるための制御プログラムを作成し、その制御プログラムをそのコンピュータに読み込ませて実行させることにより、上述の実施の形態における各種処理に相当する機能をそのようなコンピュータに行わせることも可能である。また、」このような制御プログラムをコンピュータで読み取り可能な記録媒体、例えばフレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等に記録させ、そのプログラムを記録媒体からコンピュータに読み出させて実行させることによって上述の処理に相当する機能をこのようなコンピュータに行わせることも可能である。
また、記録媒体はネットワークを介してコンピュータと接続される、プログラムサーバとして機能するコンピュータが備えている記憶装置であってもよい。この場合には、制御プログラムを表現するデータ信号で搬送波を変調して得られる伝送信号を、プログラムサーバから伝送媒体であるネットワークを通じて伝送するようにし、コンピュータでは受信した伝送信号を復調して制御プログラムを再生することで当該制御プログラムを実行できるようになる。
【００６９】
【発明の効果】
以上詳細に説明したように、本発明は、ジュブログファイルに格納されているジョブの実行スケジュール情報に従ってジョブを実行する少なくとも２台のホストコンピュータ間において、一方のホストコンピュータによるジョブ実行委託要求に従ってその委託元のコンピュータのログファイルをファイル転送処理によりジョブ実行委託先の他コンピュータのログファイルとのマージ処理を行なうことで、委託先ホストコンピュータのジョブログファイルの更新を行なう。
【００７０】
こうすることにより、ジョブ実行委託先ホストコンピュータのジョブスケジュールの再設定を自動的に行なうことが可能となり、従来、管理者が努力して依頼先のホストコンピュータにおけるジョブスケジュールの設定を行なう必要がなくなり、容易にジョブの負荷分散を行なうことができるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施形態にかかるジョブ処理システムの構成を示す図である。
【図２】ジョブ実行プログラム格納先テーブルの構造を示す図である。
【図３】ジョブログファイルの構造を示す図である。
【図４】ジョブ実行処理の処理内容を示すフローチャートである。
【図５】図４におけるＳ１０９のジョブ実行再開処理の処理内容を示すフローチャートである。
【図６】ジョブ実行委託処理の処理内容を示すフローチャートである。
【図７】ジョブログファイル更新処理の処理内容を示すフローチャートである。
【図８】ジョブログファイルのマージ処理結果を示す図である。
【符号の説明】
１、２  ホストコンピュータ
３  ローカルネットワーク
１１、２１  ジョブ入力部
１２、２２  ジョブ管理部
１３、２３  ジョブ実行部
１４，２４  記憶部
１４１、１４２  ジョブログファイル
１４２，２４２  プログラムファイル
１４３，２４３  ジョブ結果ファイル
１５、２５  システム状態監視部
１６．２６  ジョブ実行状態監視部
１７，２７  通信部
【図１】
2004206298.tif 000003
【図２】
2004206298.tif 000004
【図３】
2004206298.tif 000005
【図４】
2004206298.tif 000006
【図５】
2004206298.tif 000007
【図６】
2004206298.tif 000008
【図７】
2004206298.tif 000009
【図８】
2004206298.tif 000010