(57)【要約】【課題】  複数のＣＰＵを用いたジョブ管理システムにおいて、ＣＰＵを効率よく使用させて、ジョブの処理速度を向上させる。【解決手段】  ジョブ管理システムは、♯１のＣＰＵ１０に一対一に対応し、投入されたジョブフローの転送先を決定し、その転送先に当該ジョブフローを転送する仮想ホストからなるローカルホスト１１を生成するとともに、♯２〜♯４のＣＰＵ１０に一対一に対応し、ローカルホスト１１から転送されたジョブフローに記述されているジョブを処理する複数の仮想ホスト１２〜１４を生成する。【選択図】図１
2007052673.tif 000002
【特許請求の範囲】
【請求項１】
複数のＣＰＵによりジョブフローを管理し実行するジョブ管理システムにおいて、
前記複数のＣＰＵの内の特定のＣＰＵが、
外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるためのジョブ処理用の複数の仮想ホストを生成する仮想ホスト生成機能を有すると共に、
この生成した複数のジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けると共に処理結果を収集するジョブ管理用仮想ホストとしての機能を備えていることを特徴としたジョブ管理システム。
【請求項２】
前記請求項１に記載のジョブ管理システムにおいて、
前記各ジョブ処理用仮想ホストが、ジョブ処理を実行中であるか否かを示す実行情報を保持する実行情報記憶手段を有し、
前記ジョブ管理用仮想ホストが、投入されたジョブフローを受け付けるジョブフロー受付手段と、前記実行情報記憶手段に記憶されている実行情報を参照して前記ジョブフロー受付手段により受け付けられたジョブフローの転送先を決定する転送先決定手段と、前記転送先決定手段により決定された転送先に前記ジョブフローを転送するジョブフロー転送手段とを備えていることを特徴とするジョブ管理システム。
【請求項３】
請求項１又は２に記載のジョブ管理システムにおいて、
前記各ジョブ処理用仮想ホストが、前記ジョブ管理用仮想ホストから転送されてきたジョブフローから処理するジョブを特定するジョブ特定手段と、このジョブ特定手段により特定されたジョブをジョブキューに格納制御するジョブ格納制御手段と、前記ジョブ格納手段により格納されたジョブを実行するジョブ実行手段とを有することを特徴とするジョブ管理システム。
【請求項４】
請求項２又は３に記載のジョブ管理システムにおいて、
前記ジョブ管理用仮想ホストが、前記ジョブフロー受付手段及び前記転送先決定手段を実行するためのジョブ転送先決定スレッドを備え、
前記ジョブ処理用仮想ホストが、前記ジョブ特定手段，前記ジョブ格納制御手段及びジョブ実行手段を実行するためのジョブ処理スレッドを備えていることを特徴としたジョブ管理システム。
【請求項５】
複数のＣＰＵによりジョブフローを管理し処理するジョブ管理方法において、
前記複数のＣＰＵの内の特定のＣＰＵが、
外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるための複数のジョブ処理用の仮想ホストを生成する仮想ホスト生成工程と、
この生成された各ジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けるジョブフロー振り分け工程と、
前記各ジョブ処理用仮想ホストによるジョブ処理の結果を収集する処理結果収集工程とを備えていることを特徴としたジョブ管理方法。
【請求項６】
前記請求項５記載のジョブ管理方法において、
前記ジョブ管理用仮想ホスト側では、投入されたジョブフローを受け付けるジョブフロー受付工程と、前記各ジョブ処理ホストがジョブ処理を実行中であるか否かを示す予め記憶された実行情報を参照して受け付けジョブフローの転送先を決定する転送先決定工程と、決定した転送先に前記ジョブフローを転送するジョブフロー転送工程とを有することを特徴とするジョブ管理方法。
【請求項７】
請求項５又は６に記載のジョブ管理方法において、
前記各ジョブ処理用仮想ホストでは、前記ジョブ管理用仮想ホストから転送されてきたジョブフローから処理するジョブを特定するジョブ特定工程と、このジョブ特定工程により特定されたジョブをジョブキューに格納制御するジョブ格納制御工程と、格納されたジョブを実行するジョブ実行工程とを有することを特徴としたジョブ管理方法。
【請求項８】
複数のＣＰＵによりジョブフローを実行し管理するジョブ管理プログラムおいて、
前記複数のＣＰＵの内の一つに対応して、外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるための複数のジョブ処理用の仮想ホストを生成する機能、
この生成されたジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けると共に処理結果を収集するジョブ管理用仮想ホストとしての機能、
をコンピュータに実行させるジョブ管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のＣＰＵによりジョブを管理するジョブフロー管理システム、ジョブ管理方法、及びジョブ管理プログラムに関する。
【背景技術】
【０００２】
従来より、複数のＣＰＵが稼働する環境下のジョブ管理システムでは、スケジューリング機能、ジョブの転送機能、ジョブの実行機能、ジョブフローの制御機能を有している。このような機能を有するジョブ管理システムは、オペレータによりスケジューリングされた時刻になると、まず、ジョブフローからジョブの並列実行、排他制御等について解析がなされ、その解析結果を基にして指定したマシンにジョブが転送される。そして、このジョブが転送されたマシンがジョブを実行するようになっている（例えば、特許文献１，２参照）。
【特許文献１】特開平１０−２２２３８３号公報
【特許文献２】特開２０００−２６８０１１公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述した従来例における複数のＣＰＵが稼働する環境下のジョブ管理システムでは、ジョブフローの制御に際し、ジョブフローの排他制御および同時実行数等を考慮に入れると、ＣＰＵがスレッドと一対一に個別対応しているので同じスレッドで行う必要がある。これがため、従来のジョブ管理システムでは、処理速度の向上が望めないという不都合が生じていた。
【０００４】
そこで、本発明は、上述した不都合を改善し、複数のＣＰＵを用いたジョブ管理システムにおいて、ＣＰＵを効率よく使用させて、ジョブの処理速度を向上させることが可能なジョブ管理システム、ジョブ管理方法、及びジョブ管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明では、複数のＣＰＵによりジョブフローを管理し実行するジョブ管理システムにおいて、前述した複数のＣＰＵの内の特定のＣＰＵが、外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるための複数のジョブ処理用の仮想ホストを生成する仮想ホスト生成機能を有すると共に、この生成されたジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けると共に処理結果を収集するジョブ管理用仮想ホストとしての機能を備えている構成とした（請求項１乃至４）。  この構成によれば、生成された複数のジョブ処理用仮想ホストが、ジョブ管理用仮想ホストから転送されてくるジョブフローに記述されているジョブを振り分けられた状態で一括して並行処理するので、ＣＰＵを効率よく使用させることが可能となり、ジョブの処理速度を向上させることができる。
【０００６】
ここで、前述した各ジョブ処理用仮想ホストがジョブ処理を実行中であるか否かを示す実行情報を保持する実行情報記憶手段備え、前述したジョブ管理用仮想ホストが、投入されたジョブフローを受け付けるジョブフロー受付手段と、前記実行情報記憶手段に記憶されている実行情報を参照して前述したジョブフロー受付手段により受け付けられたジョブフローの転送先を決定する転送先決定手段と、この転送先決定手段により決定された転送先に当該ジョブフローを転送するジョブフロー転送手段とを備えた構成としてもよい（請求項２）
【０００７】
又、前述した各ジョブ処理用仮想ホストが、前記ジョブ管理用仮想ホストから転送されてきたジョブフローから処理するジョブを特定するジョブ特定手段と、このジョブ特定手段により特定されたジョブをジョブキューに格納制御するジョブ格納制御手段と、このジョブ格納手段により格納されたジョブを実行するジョブ実行手段とを備えた構成としてもよい（請求項３）。
【０００８】
更に、前述したジョブ管理用仮想ホストが、前記ジョブフロー受付手段及び前記転送先決定手段を実行するためのジョブ転送先決定スレッドを備え、又、前述したジョブ処理用仮想ホストが、前記ジョブ特定手段，ジョブ格納制御手段及びジョブ実行手段を実行するためのジョブ処理スレッドを備えた構成としてもよい（請求項４）。
【０００９】
本発明にかかるジョブ管理方法では、複数のＣＰＵによりジョブフローを管理し処理するに際し、前述した複数のＣＰＵの内の特定のＣＰＵが、外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるための複数のジョブ処理用の仮想ホストを生成する仮想ホスト生成工程と、この生成された各ジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けるジョブフロー振り分け工程と、前述した各ジョブ処理用仮想ホストによるジョブ処理の結果を収集する処理結果収集工程とを備えている、という構成を採っている（請求項５乃至７）。
このため、複数のジョブ処理用の仮想ホストによって一つのジョブフローに対しても複数のジョブ処理用の仮想ホストを作動させて並行処理することが可能となり、ジョブフロー振り分け工程が有効に機能して複数の仮想ホストを効率良く作動させることができ、かかる点において、本手法によると、ジョブ処理の高速化が可能となる。
【００１０】
ここで、前述したジョブ管理用仮想ホスト側でのジョブ管理に際しては、投入されたジョブフローを受け付けるジョブフロー受付工程と、前記各ジョブ処理ホストがジョブ処理を実行中であるか否かを示す予め記憶された実行情報を参照して受け付けジョブフローの転送先を決定する転送先決定工程と、決定した転送先に前記ジョブフローを転送するジョブフロー転送工程とを有するように構成してもよい（請求項６）。
【００１１】
又、前述した各ジョブ処理用仮想ホストでのジョブ処理に際しては、前述したジョブ管理用仮想ホストから転送されてきたジョブフローから処理するジョブを特定するジョブ特定工程と、このジョブ特定工程により特定されたジョブをジョブキューに格納制御するジョブ格納制御工程と、格納されたジョブを実行するジョブ実行工程とを有するように構成してもよい（請求項７）。
【００１２】
本発明にかかるジョブ管理プログラムでは、複数のＣＰＵによりジョブフローを実行し管理するプログラムであって、前述した複数のＣＰＵの内の一つに対応して、外部から投入されるジョブフローを前記他の各ＣＰＵに実行処理させるための複数のジョブ処理用の仮想ホストを生成する機能、及び、この生成されたジョブ処理用仮想ホストに対して前記ジョブフローの実行内容を振り分けると共に処理結果を収集するジョブ管理用仮想ホストとしての機能、をコンピュータに実行させるように構成した点に特徴を有する（請求項８）。
【００１３】
このため、この構成によれば、複数のジョブ処理仮想ホストの生成とこれを管理するジョブ管理用仮想ホストの生成を迅速に実行することができ、同時に、生成されたジョブ処理仮想ホストが、ジョブ管理用仮想ホストから転送されたジョブフローに記述されているジョブを一括して処理するので、ＣＰＵを効率よく使用させることが可能となり、かかる点においてジョブフローの処理速度を確実に向上させることができる。
【発明の効果】
【００１４】
上述したように、本発明によると、複数のＣＰＵを効率よく稼働させることが可能となり、ジョブの処理速度を確実に向上させることができるという従来にない優れたジョブ管理システム、ジョブ管理方法、及びジョブ管理プログラムを提供することができる。
【発明を実施するための最良の形態】
【００１５】
次に、本発明を実施するための最良の形態を、図面に基づいて説明する。
図１に、本発明に係る実施形態のジョブ管理システムの構成を示す。この図１に示す実施形態のジョブ管理システムは、複数のＣＰＵによりジョブを管理するジョブ管理システムであって、図１に示すように、複数のＣＰＵ１０Ａ，１０Ｂ，１０Ｃ，１０Ｄと、メモリ２０と、表示装置３０とを備えて構成されている。
【００１６】
また、このジョブ管理システムは、メモリ２０に予め記憶されている仮想ホスト生成プログラムを前述した複数のＣＰＵ１０Ａ〜１０Ｄ上で実行することにより、ローカルホスト（ジョブ管理用仮想ホスト）１１、および複数（本実施形態では３組）のジョブ処理用仮想ホスト１２，１３，１４を生成する（図２参照：仮想ホストの生成））。
即ち、本実施形態は、複数のＣＰＵ１０Ａ〜１０Ｄによりジョブフローを管理し実行するジョブ管理システムであって、当該複数のＣＰＵ１０Ａ〜１０Ｄの内の特定のＣＰＵ（例えばＣＰＵ１０Ａ）が、外部から投入されるジョブフローを他の各ＣＰＵ１０Ｂ〜１０Ｄに実行処理させるための複数のジョブ処理用の仮想ホスト１２，１３，１４を生成するための仮想ホスト生成機能を有する。又、ＣＰＵ１０Ａは、生成されたジョブ処理用仮想ホスト１２〜１４に対して前述したジョブフローの実行内容を振り分けると共に処理結果を収集するジョブ管理用仮想ホスト１１としての機能を備えている。
【００１７】
ここで、ローカルホスト（ジョブ管理用仮想ホスト）１１は、ＣＰＵ１０Ａと一対一に対応するジョブフロー制御スレッド１１ａを有し、ジョブ処理用仮想ホスト１２は、ＣＰＵ１０Ｂと一対一に対応するジョブフロー制御スレッド１２ａを有し、ジョブ処理用仮想ホスト１３は、ＣＰＵ１０ｃと一対一に対応するジョブフロー制御スレッド１３ａを有し、ジョブ処理用仮想ホスト１４は、ＣＰＵ１０Ｄと一対一に対応するジョブフロー制御スレッド１４ａを有している。
【００１８】
又、前述したローカルホスト１１のジョブフロー制御スレッド１１ａ、ジョブ処理用仮想ホスト１２のジョブフロー制御スレッド１２ａ，ジョブ処理用仮想ホスト１３のジョブフロー制御スレッド１３ａ、及びジョブ処理用仮想ホストのジョブフロー制御スレッド１４は、それぞれ、プログラムカウンタ，スタックポインタ，及びレジスタ等の固有情報を有し、前述したメモリ２０に一部に記憶されているジョブ管理プログラムを同時にアクセスし得る機能を備えている。ここで、各ジョブフロー制御スレッド１１ａ〜１４ａの生成とは、プログラムカウンタ，スタックポインタ，及びレジスタ等の固有情報を前述したメモリ２０に記憶することである。
【００１９】
メモリ２０は、図３に示すように、プログラム領域２０１、共有データ領域２０２、ＶＨＳＬホスト領域２０３、ＶＨＳＡホスト領域２０４、ＶＨＳＢホスト領域２０５、及びＶＨＳＣホスト領域２０６を有している。プログラム領域２０１には、ＯＳ（オペレイティング・システム）、仮想ホスト生成プログラム、ジョブ管理プログラム、その他アプリケーションプログラムが予め記憶されている。
【００２０】
共有データ領域２０２には、図４に示すように、ローカルホスト１１、ジョブ処理用仮想ホスト１２乃至１４の名称と、これらの各ホスト１１〜１４がジョブ処理を実行中であるか否かを示す処理フラグが記述された実行情報テーブル２１２が設定されている。処理済フラグは、「１」のときジョブフローが処理中であることを示し、「０」のときジョブフローが処理されていないことを示す。この実行情報テーブル（実行情報記憶手段）２１２については、各ジョブ処理用仮想ホスト１１〜１４に設けてもよい。
【００２１】
ここで、前述した図３に示すローカルホスト１１のホスト領域（ＶＨＳＬ）２０３、ジョブ処理用仮想ホスト１２のホスト領域２０４、ジョブ処理用仮想ホスト１３のホスト領域２０５、及びジョブ処理用仮想ホスト１４のホスト領域２０６のそれぞれには、実行するジョブが登録されている。
【００２２】
また、表示装置３０は、液晶表示装置，ＣＲＴ等からなり、ジョブ管理システム実行状態、及び作業指示等を表示する。
【００２３】
この実施形態におけるジョブ管理システムは、各ジョブフロー制御スレッド１１ａ〜１３ａがメモリ２０に記憶されているジョブ管理プログラムを実行することにより、図５に示す各機能を備えた構成となる。
即ち、ローカルホスト（ＶＨＳＬホスト）１１は、ジョブフロー受付部（ジョブフロー受付部）１１１、ジョブフロー制御部（転送先決定手段、ジョブフロー転送手段）１１２、ジョブキュー（ジョブ格納手段）１１３、及びジョブ実行部（ジョブ実行手段）１１４を生成する。
ジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２は、ジョブフロー受付部１２１、ジョブフロー制御部（ジョブ特定部）１２２、ジョブキュー（ジョブ格納手段）１２３、及びジョブ実行部（ジョブ実行手段）１２４を生成する。
ジョブ処理用仮想ホスト（ＶＨＳＢホスト）１３は、ジョブ受付部１３１、ジョブフロー制御部（ジョブ特定手段）１３２、ジョブキュー（ジョブ格納部）１３３、及びジョブ実行部（ジョブ実行手段）１３４を生成する。
また、ジョブ処理用仮想ホスト（ＶＨＳＣホスト）１４は、ジョブフロー受付部１４１、ジョブフロー制御部（ジョブ特定部）１４２、ジョブキュー（ジョブ格納手段）１４３、及びジョブ実行部（ジョブ実行部）１４４を生成する。
【００２４】
ローカルホスト（ＶＨＳＬホスト）１１の一部を成すジョブ受付部１１１は、外部から投入されたジョブフローを受付ると共にこのジョブフローをジョブフロー制御部１１２に出力する。
【００２５】
ジョブフロー制御部１１２は、投入されたジョブフローを解析し、自己のローカルホスト（ＶＨＳＬホスト）１１がジョブの処理を実行中であるか否かをメモリ２０中の実行情報テーブル２１２を参照して判定する。ジョブフロー制御部１１２は、実行中であると判定した場合には、同様にして、メモリ２０中の実行情報テーブル２１２を参照して実行していない仮想ホストを調べ、そのホストに対してジョブフローを転送する。
一方、ジョブフロー制御部１１２は、実行中でないと判定した場合には、メモリ２０中の実行情報テーブル２１２の仮想ホストの名称がローカルホストの箇所の処理済みフラグを「０」から「１」にするとともに、入力されたジョブフローを解析し、処理するジョブをメモリ２０のローカルホスト（ＶＨＳＬ）領域に登録する。
【００２６】
ジョブキュー１１３はジョブフローを実行するプログラムを格納する。一方、ジョブ実行部１１４は、ジョブキュー１１３に格納されているプログラムを実行する。
【００２７】
ジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２のジョブ受付部１２１、ジョブ処理用仮想ホスト（ＶＨＳＢホスト）１３のジョブ受付部１３１、及びジョブ処理用仮想ホスト（ＶＨＳＣホスト）１４のジョブ受付部１４１は、それぞれ、投入されたジョブフローを受付て当該ジョブフローを該当するジョブフロー制御部１２２〜１４２に出力する。
【００２８】
前述したＶＨＳＡホスト１２のジョブフロー制御部１２２，ＶＨＳＢホスト１３のジョブフロー制御部１３２，及びＶＨＳＣホスト１４のジョブフロー制御部１４２は、それぞれ、ジョブフローが投入された場合にこれを解析し処理するジョブをメモリ２０に登録する。
【００２９】
又、前述したＶＨＳＡホスト１２のジョブキュー１２３，ＶＨＳＡホスト１３のジョブキュー１３３，及びＶＨＳＡホスト１４のジョブキュー１４３は、それぞれ、ジョブを実行するプログラムを格納する。そして、前述した各ジョブ実行部１２４〜１４４は、それぞれ対応するジョブキュー１２３〜１４３に格納されているプログラムを実行する。
【００３０】
次に、本実施形態にかかるジョブ管理システムの動作を図６のフローチャートに基づいて説明する。
【００３１】
図６において、外部からクライアント等によるジョブフローの投入要求が入力されると、ローカルホスト（ＶＨＳＬホスト）１１のジョブ受付部１１１は、その要求に答えてジョブフローを受け付け（ステップ１００：ジョブフロー受付工程）、このジョブフローをジョブフロー制御部１１２に出力する。
【００３２】
このローカルホスト（ＶＨＳＬホスト）１１のジョブフロー制御部１１２は、共有データ領域２０２に格納されている実行情報テーブル２１２中の仮想ホスト名が自己のホスト名であるＶＨＳＬホスト１１の処理済フラグを参照し、当該ＶＨＳＬホスト１１がジョブフロー制御を実際に行っているか否かを判定する（ステップ１０１）。ジョブフロー制御部１１２は、仮想ホスト名がＶＨＳＬホスト１１の処理済フラグが「１」であると認識し、ＶＨＳＬホスト１１がジョブフロー制御を実際に行っていると判定した場合には（ステップ１０１；ＹＥＳ）、再び、実行情報テーブル２１２を参照し、ホスト名がＶＨＳＬ（ローカルホスト）以外のジョブ処理用仮想ホスト１２，１３，又は１４の内、ジョブフロー制御を行っていないものがあるか否かを判定する（ステップ１０２）。
【００３３】
ＶＨＳＬホスト（ローカルホスト）１１のジョブフロー制御部１１２は、ジョブ処理用仮想ホスト１２，１３，又は１４の内、ジョブフロー制御を行っていないものがない、即ち、全てが実行中であると判定した場合には（ステップ１０２；ＮＯ）、表示装置３０に例えば「今ビジー状態にあり、もう少し待ってください」等を表示させる（ステップ１０３）。この状態は、ジョブフロー制御を行わないものが現れるまで、同様な処理を続行する。一方、ジョブフロー制御部１１２は、ジョブ処理用仮想ホスト１２，１３，又は１４の内、ジョブフロー制御を行っていないものがあると判定した場合には（ステップ１０２；ＹＥＳ）、ジョブフロー制御を行っていない仮想ホスト名を読み出す（ステップ１０４：ジョブフロー振り分け工程，転送先決定工程）。
【００３４】
その後、ＶＨＳＬホスト（ローカルホスト）１１のジョブフロー制御部１１２は、読み出したジョブフローの制御を行っておらず、例えば、ＶＨＳＡホスト（ジョブ処理用仮想ホスト）１２のジョブフロー受付部１２１に投入されたジョブフローを転送する（ステップ１０５：ジョブフロー転送工程）。
以下、ＶＨＳＡホスト１２についても同様で、ジョブフロー制御を行っていなければ、ジョブフロー制御部１１２は、ＶＨＳＢホスト１３のジョブフロー受付部１３１又はＶＨＳＣホスト１４のジョブフロー受付部１４１にジョブフローを転送してもよい。
【００３５】
ジョブフローの転送を受けたジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２のジョブフロー受付部１２１は、ジョブフローが転送されてくると、メモリ２０の共有データ領域２０２に格納されている実行情報テーブル２１２のジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２の処理済フラグを「０」から「１」に変更する（ステップ１０６）。次に、ジョブフロー受付部１２１は、転送されてきたジョブフローをジョブフロー制御部１２２に出力する（ジョブ特定工程）。
【００３６】
ジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２のジョブフロー制御部１２２は、入力されたジョブフローをメモリ２０のＶＨＳＡホスト領域２０４に登録する（ステップ１０７）。ジョブフロー制御部１２２は、入力されたジョブフローを解析し、ジョブフローに記述されているジョブ名のプログラムをジョブキュー１２３に出力すると共に（ステップ１０８：ジョブ格納制御工程）、プログラムが使用する資源，例えば、主記憶領域、ファイル、磁気テープ等の資源を準備する。
【００３７】
続いて、ジョブ実行部１２４は、ジョブキュー１２３に格納されているプログラムを読み出しジョブを実行する（ステップ１０９：ジョブ実行工程）。その後、ジョブ実行部１２４は、ジョブの実行を終了し、ジョブキュー１２３に実行するプログラムが格納されなくなると、共有データ領域２０２に格納されている実行情報テーブル２１２中の仮想ホスト名がＶＨＳＡホスト１２の処理済フラグを「１」から「０」に変更し（ステップ１１０）、処理を終了する（処理結果収集工程）。
【００３８】
ステップ１０１において、ジョブ処理用仮想ホスト（ＶＨＳＡホスト）１２のジョブフロー制御部１１２は、自己のホスト名であるＶＨＳＬホスト（ローカルホスト）１１の仮想ホストの処理済フラグが「０」であると認識し、ＶＨＳＬホスト１１がジョブフロー制御を実際に行っていないと判定した場合には（ステップ１０１；ＮＯ）、メモリ２０の共有データ領域２０２に格納されている実行情報テーブル２１２の仮想ホスト名がＶＨＳＬホストの処理済フラグを「０」から「１」に変更する（ステップ１１１）。
【００３９】
その後、ジョブフロー制御部１１２は、入力されたジョブフローをメモリ２０のＶＨＳＬホスト領域２０３に登録する（ステップ１１２）。次に、ジョブフロー制御部１１２は、入力されたジョブフローを解析し、ジョブフローに記述されているジョブ名のプログラムをジョブキュー１１３に出力する（ステップ１１３）と共に、プログラムが使用する資源、例えば、主記憶領域、ファイル、磁気テープ等の資源を準備する。
【００４０】
次に、ジョブ実行部１１４は、ジョブキュー１２３に格納されているプログラムを読み出しジョブを実行する（ステップ１１４）。その後、このジョブ実行部１２４は、ジョブの実行を終了し、ジョブキュー１１３に実行するプログラムが格納されなくなると、共有データ領域２０２に格納されている実行情報テーブル２１２中の仮想ホスト名がＶＨＳＬホスト（ローカルホスト）１１の処理済フラグを「１」から「０」に変更し（ステップ１１５）、処理を終了する
【００４１】
このように、上述した実施形態のジョブ管理システムでは、仮想ホスト生成プログラムにより生成されたＶＨＳＬホスト１１、ＶＨＳＡホスト１２、ＶＨＳＢホスト１３、及びＶＨＳＣホスト１４が、ジョブフローに記述されているジョブを一括して処理するので、ＣＰＵを効率よく使用させることが可能となり、ジョブの処理速度を向上させることができる。
即ち、本実施形態では、複数のＣＰＵを備えると共に、当該各ＣＰＵを用いてメモリ２０に予め組み込まれたプログラムに従ってジョブ処理仮想ホストを複数作動させ、それらに対して一つのジョブ管理システムを動作させるようにしたので、ジョブの実行要求に対してジョブフローの制御やジョブの実行を複数のジョブ処理用仮想ホストに分散し複数のＣＰＵ上で同時に処理するようにしたので、ジョブ処理の高速化を実現することが可能となった。
【００４２】
ここで、上述した実施形態のジョブ管理システムでは、図２に示すように、ＶＨＳＬホスト（ローカルホスト）１１に上記ジョブフロー制御スレッド１１ａが生成され、このジョブフロー制御スレッド１１ａを実行することにより、図５に示すＶＨＳＬホスト（ローカルホスト）１１の機能が構成されるようになっている。
【００４３】
これに対し、この図５に示すＶＨＳＬホスト（ローカルホスト）１１の機能以外の構成として、図７に示すように、ＶＨＳＬホスト（ローカルホスト）１１に、ＶＨＳＡホスト１２、ＶＨＳＢホスト１３、及びＶＨＳＣホスト１４のジョブの実行情報を、メモリ２０の実行情報テーブル１２１を参照して確認し、ジョブの実行していない仮想ホストにジョブを転送するジョブフロー転送スレッド１１１ａを備えてもよい。
【００４４】
即ち、この図７に示すような構成からなる他の実施形態のジョブ管理システムは、ジョブフロー転送スレッド１１１ａ、及びジョブフロー制御スレッド１２ａ〜１４ａがメモリ２０に記憶されているジョブ管理プログラムを複数の各ＣＰＵ上で実行することにより、図８に示された機能を有する構成になる。
ここで、ＶＨＳＬホスト１１のジョブフロー転送部（転送先決定手段、ジョブ転送手段）１１２ａは、ＶＨＳＡホスト１２、ＶＨＳＢホスト１３、及びＶＨＳＣホスト１４のジョブの実行情報を、メモリ２０の実行状況テーブル１２１を参照して確認し、ジョブの実行していない仮想ホストにジョブを転送する。その他の構成部分は、上述したと同様な機能を有する。
このようにしても、前述した図５の場合と同様に、複数のＣＰＵを効率よく使用することが可能となり、ジョブの処理速度を向上させることができる。
【図面の簡単な説明】
【００４５】
【図１】本発明に係る実施形態のジョブ管理システムの構成を示すブロック図である。
【図２】図１中のＣＰＵと各ホストに生成されたジョブフロー制御スレッドの対応関係を示すブロック図である。
【図３】図１中のメモリの有する記憶領域を示す説明図である。
【図４】図３中の共有データ領域に有する実行情報テーブルの内容を示す説明図である。
【図５】図２中の各ジョブフロー制御スレッドの実行により生成される本発明の実施形態にかかるジョブ管理システムの機能構成を示すブロック図である。
【図６】本発明に係る実施形態のジョブ管理システムの動作を示すフローチャートである。
【図７】本発明に係る他の実施形態のジョブ管理システムについてのジョブフロー制御スレッドの対応関係を示すブロック図である。
【図８】図７中のジョブ転送スレッド及び各ジョブフロー制御スレッドの実行により生成される本発明に係る他の実施形態のジョブ管理システムの機能構成を示すブロック図である。
【符号の説明】
【００４６】
１０Ａ，１０Ｂ，１０Ｃ，１０Ｄ  ＣＰＵ
１１  ローカルホスト（ジョブ管理用仮想ホスト）
１１ａ  ジョブフロー制御スレッド
１２，１３，１４  ジョブ処理仮想ホスト
１２ａ，１３ａ，１４ａ  ジョブフロー制御スレッド
２０  メモリ
３０  表示装置
１１１ａ  ジョブ転送スレッド
１１２ａ  ジョブフロー転送部（転送先決定手段、ジョブフロー転送手段）
１１１  ジョブフロー受付部（ジョブフロー受付手段）
１１２  ジョブフロー制御部（転送先決定手段、ジョブフロー転送手段）
１１３  ジョブキュー（ジョブ格納手段）
１１４  ジョブ実行部（ジョブ実行手段）
１２１，１３１，１４１  ジョブフロー受付部
１２２，１３２，１４２  ジョブフロー制御部（ジョブ特定手段）
１２３，１３３，１４３  ジョブキュー（ジョブ格納手段）
１２４，１３４，１４４  ジョブ実行部（ジョブ実行手段）
２１２  実行情報テーブル（実行情報記憶手段）
【図１】
2007052673.tif 000003
【図２】
2007052673.tif 000004
【図３】
2007052673.tif 000005
【図４】
2007052673.tif 000006
【図５】
2007052673.tif 000007
【図６】
2007052673.tif 000008
【図７】
2007052673.tif 000009
【図８】
2007052673.tif 000010