(57)【要約】【課題】本発明は、ジョブの処理時間の短縮するジョブ管理技術を提供することを目的とする。【解決手段】ジョブ管理システム１は、ジョブの実行を要求するユーザ端末１０と、ジョブを実行可能なプロセス３３ａ〜３３ｃを備えるプロセスサーバ３０ａ〜３０ｃと、ジョブを実行するプロセス３３ａ〜３３ｃを決定してプロセス３３ａ〜３３ｃにジョブを実行させるジョブ管理装置２０とを備え、ジョブを実行可能なプロセス３３ａ〜３３ｃが起動しているとき、既に起動しているプロセス３３ａ〜３３ｃでジョブを実行し、ジョブを実行可能なプロセス３３ａ〜３３ｃが起動していないとき、プロセス３３ａ〜３３ｃを起動してジョブを実行する。【選択図】図１
2010286931.tif 000002
【特許請求の範囲】
【請求項１】
ジョブの実行を要求するユーザ端末と、前記ジョブを実行可能なプロセスとして動作するプログラムを備えるプロセスサーバと、前記ジョブを実行する前記プロセスを決定して当該プロセスに前記ジョブを実行させるジョブ管理装置と、を備えるジョブ管理システムであって、
前記ユーザ端末は、
外部からジョブ実行指令が入力されたとき、前記ジョブの実行を要求するジョブ実行要求手段を備え、
前記ジョブ管理装置は、
少なくとも前記プロセスが起動しているか否かを示すプロセス情報を記憶するプロセス管理手段と、
前記ユーザ端末から前記ジョブの実行を要求されたとき、前記ジョブを実行可能な前記プロセスが起動していれば、前記プロセスを起動しないと判定すると共に、前記ジョブを実行可能な前記プロセスが起動していなければ、前記プロセスの起動が必要と判定するジョブ管理手段と、
前記ジョブ管理手段によって前記プロセスの起動が必要と判定されたとき、前記プロセス情報を参照し、前記ジョブを実行する前記プロセスを所定のプロセス決定アルゴリズムによって決定するプロセス決定手段と、
前記プロセスサーバに、前記プロセス決定手段が決定した前記プロセスの起動を要求するプロセス起動手段と、
前記プロセスサーバに、既に起動している前記プロセス又は前記プロセス起動要求手段の要求によって起動した前記プロセスを用いて、前記ジョブの実行を要求するジョブ実行要求手段と、
を備えることを特徴とするジョブ管理システム。
【請求項２】
ジョブの実行を要求するユーザ端末と前記ジョブを実行可能なプロセスなプロセスとして動作するプログラムを備えるプロセスサーバとを含むグリッドコンピューティングシステムに用いられ、前記ジョブを実行する前記プロセスを決定して当該プロセスに前記ジョブを実行させるジョブ管理装置であって、
少なくとも前記プロセスが起動しているか否かを示すプロセス情報を記憶するプロセス管理手段と、
前記ユーザ端末から前記ジョブの実行を要求されたとき、前記ジョブを実行可能な前記プロセスが起動していれば、前記プロセスを起動しないと判定すると共に、前記ジョブを実行可能な前記プロセスが起動していなければ、前記プロセスの起動が必要と判定するジョブ管理手段と、
前記ジョブ管理手段によって前記プロセスの起動が必要と判定されたとき、前記プロセス情報を参照し、前記ジョブを実行する前記プロセスを所定のプロセス決定アルゴリズムによって決定するプロセス決定手段と、
前記プロセスサーバに、前記プロセス決定手段が決定した前記プロセスの起動を要求するプロセス起動手段と、
前記プロセスサーバに、既に起動している前記プロセス又は前記プロセス起動要求手段の要求によって起動した前記プロセスを用いて、前記ジョブの実行を要求するジョブ実行要求手段と、
を備えることを特徴とするジョブ管理装置。
【請求項３】
前記ジョブ管理手段は、前記ユーザ端末から前記ジョブの終了を要求されたとき、前記ジョブを実行した前記プロセスを終了すると判定し、
前記プロセス決定手段は、前記ジョブ管理手段が前記プロセスを終了すると判定したとき、前記プロセス情報を参照して終了する前記プロセスを決定し、
前記プロセスサーバに、前記プロセス決定手段が決定した前記プロセスの終了を要求するプロセス終了要求手段を備えることを特徴とする請求項２に記載のジョブ管理装置。
【請求項４】
ジョブの実行を要求するユーザ端末と前記ジョブを実行可能なプロセスなプロセスとして動作するプログラムを備えるプロセスサーバとを含むグリッドコンピューティングシステムに用いられ、前記ジョブを実行する前記プロセスを決定して当該プロセスに前記ジョブを実行させるために、少なくとも前記プロセスが起動しているか否かを示すプロセス情報を記憶するプロセス管理手段を備えるコンピュータを、
前記ユーザ端末から前記ジョブの実行を要求されたとき、前記ジョブを実行可能な前記プロセスが起動していれば、前記プロセスを起動しないと判定すると共に、前記ジョブを実行可能な前記プロセスが起動していなければ、前記プロセスの起動が必要と判定するジョブ管理手段、
前記ジョブ管理手段によって前記プロセスの起動が必要と判定されたとき、前記プロセス情報を参照し、前記ジョブを実行する前記プロセスを所定のプロセス決定アルゴリズムによって決定するプロセス決定手段、
前記プロセスサーバに、前記プロセス決定手段が決定した前記プロセスの起動を要求するプロセス起動手段、
前記プロセスサーバに、既に起動している前記プロセス又は前記プロセス起動要求手段の要求によって起動した前記プロセスを用いて、前記ジョブの実行を要求するジョブ実行要求手段、
として機能させるためのジョブ管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グリッドコンピューティングシステムにおいて、ジョブを実行するプロセスを決定するジョブ管理技術に関する。
【背景技術】
【０００２】
従来から、ネットワークで接続されたコンピュータ同士を統合して利用するグリッドコンピューティングシステムが提案されている。このグリッドコンピューティングシステムは、ネットワーク上の複数のコンピュータ同士で演算装置、記憶装置等のハードウェア資源を共有すると共に、多数のプロセスでジョブを並列に実行することで、１台の大規模な仮想コンピュータとして，ジョブを実行する仕組みである。
【０００３】
このグリッドコンピューティングシステムでは、ジョブ管理装置が、システムに要求されたジョブの実行順序を決定し、ジョブを実行するプロセスを割り当てる。そして、ジョブは、割り当てられたプロセスによって実行される。ここで、コンピュータの負荷状態等に応じてプロセスを割り当てるスケジューリングが重要となる。このため、従来から、スケジューリングに関する技術が提案されている（例えば、特許文献１〜３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特表０５／０９１１３７号公報
【特許文献２】特開２００７−２２６２８０号公報
【特許文献３】特開２００８−７７２８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１〜３に記載のスケジューリング技術では、以下のような問題がある。これら従来技術においては、クライアントがグリッドコンピューティングシステムに対して、ジョブの実行を要求すると、ジョブ管理装置が、ジョブの実行に用いるプロセスを決定し、ジョブを実行するプロセスのサーバの割り当てを行い、割り当てされたサーバがプロセスの起動を行って、データを処理し、データの処理が終わるとプロセスを終了させる。そして、一旦プロセスが終了し、次のジョブの実行が要求された場合、前のプロセスの割り当てに関係なく、ジョブ管理装置は、ジョブを実行するプロセスのサーバの割り当てを再度行う。このため、これら従来技術では、同じプロセスあるいは同じ機能を持ったプロセスを用いてジョブの実行する場合、ジョブ割り当てやプロセスの起動をその都度行うことになり、ジョブの処理時間が長くなってしまう。
【０００６】
そこで、本発明は、ジョブの処理時間の短縮するジョブ管理システム、ジョブ管理装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記した課題を解決するため、本願第１発明に係るジョブ管理システムは、ジョブの実行を要求するユーザ端末と、ジョブを実行可能なプロセスを備えるプロセスサーバと、ジョブを実行するプロセスを決定してプロセスにジョブを実行させるジョブ管理装置と、を備えることを特徴とする。
【０００８】
かかる構成によれば、ユーザ端末は、ジョブ実行要求手段によって、外部からジョブ実行指令が入力されたとき、ジョブの実行を要求する。また、ジョブ管理装置は、プロセス管理手段によって、少なくともプロセスが起動しているか否かを示すプロセス情報を記憶する。そして、ジョブ管理装置は、ジョブ管理手段によって、ユーザ端末からジョブの実行を要求されたとき、ジョブを実行可能なプロセスが起動していれば、プロセスを起動しないと判定すると共に、ジョブを実行可能なプロセスが起動していなければ、プロセスの起動が必要と判定する。
【０００９】
また、ジョブ管理装置は、プロセス決定手段が、ジョブ管理手段によってプロセスの起動が必要と判定されたとき、プロセス情報を参照し、ジョブを実行するプロセスを所定のプロセス決定アルゴリズムによって決定する。そして、ジョブ管理装置は、プロセス起動要求手段によって、プロセスサーバに、プロセス決定手段が決定したプロセスの起動を要求する。さらに、ジョブ管理装置は、ジョブ実行要求手段によって、プロセスサーバに、既に起動しているプロセス又はプロセス起動要求手段の要求によって起動したプロセスを用いて、ジョブの実行を要求する。
【００１０】
これによって、ジョブ管理システムは、ジョブを実行可能なプロセスが既に起動しているとき、新たにプロセスを起動することなく、既に起動したプロセスでジョブを実行する。従って、ジョブ管理システムは、ジョブを実行可能なプロセスが既に起動しているとき、そのプロセスを起動する時間を節約できる。
【００１１】
ジョブとは、コンピュータに処理を行わせる単位であり、例えば、データ処理（画像処理、検索処理、印刷処理）、通信処理、記憶手段への書き込み処理や読出し処理がある。
プロセスとは、プロセスサーバのプログラムを実行することで生成されるものである。つまり、プロセスサーバでは、メモリ領域等のハードウェア資源をプロセスに割り当ておき、実行中のプログラムをプロセスとして管理する。ここで、１個のジョブを１個のプロセスだけで実行する必要はなく、１個のジョブを２個以上のプロセスで実行しても良い。
ジョブの処理時間とは、プロセスがジョブを実行する時間だけでなく、ジョブを実行するプロセスの決定、起動、及び、終了までの時間を含めたものである。
【００１２】
また、前記した課題を解決するため、本願第２発明に係るジョブ管理装置は、ジョブの実行を要求するユーザ端末とジョブを実行可能なプロセスを備えるプロセスサーバとを含むグリッドコンピューティングシステムに用いられ、ジョブを実行するプロセスを決定してプロセスにジョブを実行させるジョブ管理装置であって、プロセス管理手段と、ジョブ管理手段と、プロセス決定手段と、プロセス起動要求手段と、ジョブ実行要求手段と、を備えることを特徴とする。
【００１３】
かかる構成によれば、ジョブ管理装置は、プロセス管理手段によって、少なくともプロセスが起動しているか否かを示すプロセス情報を記憶する。そして、ジョブ管理装置は、ジョブ管理手段によって、ユーザ端末からジョブの実行を要求されたとき、ジョブを実行可能なプロセスが起動していれば、プロセスを起動しないと判定すると共に、ジョブを実行可能なプロセスが起動していなければ、プロセスの起動が必要と判定する。
【００１４】
また、ジョブ管理装置は、プロセス決定手段が、ジョブ管理手段によってプロセスの起動が必要と判定されたとき、プロセス情報を参照し、ジョブを実行するプロセスを所定のプロセス決定アルゴリズムによって決定する。そして、ジョブ管理装置は、プロセス起動要求手段によって、プロセスサーバに、プロセス決定手段が決定したプロセスの起動を要求する。さらに、ジョブ管理装置は、ジョブ実行要求手段によって、プロセスサーバに、既に起動しているプロセス又はプロセス起動要求手段の要求によって起動したプロセスを用いて、ジョブの実行を要求する。
【００１５】
これによって、ジョブ管理装置は、ジョブを実行可能なプロセスが既に起動しているとき、新たにプロセスを起動することなく、既に起動したプロセスでジョブを実行する。従って、ジョブ管理装置は、ジョブを実行可能なプロセスが既に起動しているとき、そのプロセスを起動する時間を節約できる。
【００１６】
また、本願第３発明に係るジョブ管理装置は、ジョブ管理手段が、ユーザ端末からジョブの終了を要求されたとき、ジョブを実行したプロセスを終了すると判定し、プロセス決定手段が、ジョブ管理手段がプロセスを終了すると判定したとき、プロセス情報を参照して終了するプロセスを決定し、プロセスサーバに、プロセス決定手段が決定したプロセスの終了を要求するプロセス終了要求手段を備えることを特徴とする。
【００１７】
かかる構成によれば、ジョブ管理装置は、ユーザ端末からジョブの終了の要求がされるまで、プロセスを起動させておく。これによって、ジョブ管理装置は、例えば、同一のユーザ端末から一定間隔で同一のジョブの実行が複数回要求されるとき、ジョブを実行する毎に、新たなプロセスの起動とそのプロセスの終了とを繰り返す必要がない。従って、ジョブ管理装置は、プロセスを起動する時間とそのプロセスを終了する時間とを大幅に節約できる。
【００１８】
また、前記した課題を解決するため、本願第４発明に係るジョブ管理プログラムは、ジョブの実行を要求するユーザ端末と、ジョブを実行可能なプロセスを備えるプロセスサーバとを含むグリッドコンピューティングシステムに用いられ、ジョブを実行するプロセスを決定してプロセスにジョブを実行させるために、少なくともプロセスが起動しているか否かを示すプロセス情報を記憶するプロセス管理手段を備えるコンピュータを、ジョブ管理手段、プロセス決定手段、プロセス起動要求手段、ジョブ実行要求手段、として機能させる。
【００１９】
かかる構成によれば、ジョブ管理プログラムは、ジョブ管理手段によって、ユーザ端末からジョブの実行を要求されたとき、ジョブを実行可能なプロセスが起動していれば、プロセスを起動しないと判定すると共に、ジョブを実行可能なプロセスが起動していなければ、プロセスの起動が必要と判定する。
【００２０】
また、ジョブ管理プログラムは、プロセス決定手段が、ジョブ管理手段によってプロセスの起動が必要と判定されたとき、プロセス情報を参照し、ジョブを実行するプロセスを所定のプロセス決定アルゴリズムによって決定する。そして、ジョブ管理プログラムは、プロセス起動要求手段によって、プロセスサーバに、プロセス決定手段が決定したプロセスの起動を要求する。さらに、ジョブ管理プログラムは、ジョブ実行要求手段によって、プロセスサーバに、既に起動しているプロセス又はプロセス起動要求手段の要求によって起動したプロセスを用いて、ジョブの実行を要求する。
【００２１】
これによって、ジョブ管理プログラムは、ジョブを実行可能なプロセスが既に起動しているとき、新たにプロセスを起動することなく、既に起動したプロセスでジョブを実行する。従って、ジョブ管理プログラムは、ジョブを実行可能なプロセスが既に起動しているとき、そのプロセスを起動する時間を節約できる。
【発明の効果】
【００２２】
本発明によれば、以下のような優れた効果を奏する。
本願第１，２，４に係る発明によれば、ジョブを実行可能なプロセスが既に起動しているとき、そのプロセスを起動する時間を節約でき、ジョブの処理時間を短縮することができる。
本願第３に係る発明によれば、同一のジョブを繰り返し実行する場合、プロセスを起動する時間とそのプロセスを終了する時間とを大幅に節約でき、ジョブの処理時間をより短縮することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１実施形態に係るジョブ管理システムの構成を示すブロック図である。
【図２】図１のジョブ管理装置の構成を示すブロック図である。
【図３】図１のジョブ管理装置の構成を示すブロック図である。
【図４】図１のジョブ管理システムの動作例１を示すシーケンス図である。
【図５】図１のジョブ管理システムの動作例２を示すシーケンス図である。
【図６】図１のジョブ管理システムの動作例３を示すシーケンス図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態について、適宜図面を参照しながら詳細に説明する。なお、各実施形態において、同一の機能を有する手段には同一の符号を付し、説明を省略した。
【００２５】
（第１実施形態）
以下、図１を参照して、本発明の第１実施形態に係るジョブ管理システムを説明する。ジョブ管理システム１は、グリッドコンピューティングシステムにより、プロセスサーバ３０ａ〜３０ｃが、ユーザ端末１０から要求されたジョブを実行するものである。図１に示すように、ジョブ管理システム１は、ユーザ端末１０と、ジョブ管理装置２０と、プロセスサーバ３０ａ〜３０ｃとが、インターネット、ＬＡＮ（Local Area Network）等のネットワークＮＷを介して接続されている。
【００２６】
ここで、ジョブ管理システム１では、例えば、ユーザがユーザ端末１０を用いて映像データを制作し、この映像データをファイルとして保存する。その後、ジョブ管理システム１では、このファイルの一部映像データ（映像データにおける特定のカット）に画像処理を施すジョブを、プロセスサーバ３０ａ〜３０ｃのプロセス３３ａ〜３３ｃで実行する。
【００２７】
ジョブとは、コンピュータに処理を行わせる単位であり、本実施形態では、画像処理のジョブとして説明する。
プロセス３３ａ〜３３ｃとは、プロセスサーバ３０ａ〜３０ｃのプログラム（不図示）を実行することで生成される。なお、プロセス３３ａ〜３３ｃの詳細は、後記する。
【００２８】
［ユーザ端末の構成］
以下、ユーザ端末１０の構成について、説明する。
ユーザ端末１０は、ジョブの実行と、ジョブの終了とをジョブ管理装置２０に要求するものであり、ジョブ実行・終了入力手段１１と、ジョブ実行・終了要求手段１２とを備える。例えば、ユーザ端末１０は、映像制作アプリケーション（不図示）がインストールされたコンピュータである。
【００２９】
ジョブ実行・終了入力手段１１は、ユーザが、ジョブの実行を示すジョブ実行指令と、ジョブの終了を示すジョブ終了指令とを入力するものである。本実施形態では、ジョブ実行・終了入力手段１１は、例えば、映像制作アプリケーションの一部機能として実現される。
【００３０】
ここで、例えば、ジョブを実行したい場合、ユーザは、映像制作アプリケーションで制作した映像データをファイルとして保存し、これを予めプロセスサーバ３０ａの記憶手段３４ａに書き込む。その後、ユーザは、マウス、キーボード等の操作手段（不図示）を操作して映像制作アプリケーションのジョブ実行アイコンをクリックする。すると、ジョブ実行・終了入力手段１１は、ジョブ実行指令をジョブ実行・終了要求手段１２に出力する。また、例えば、ジョブを終了したい場合、ユーザは、操作手段を操作して、映像制作アプリケーションのジョブ終了アイコンをクリックする。すると、ジョブ実行・終了入力手段１１は、ジョブ終了指令をジョブ実行・終了要求手段１２に出力する。もし、同じジョブを複数回実行する場合、ユーザは、全てのジョブを終了したときに、映像制作アプリケーションのジョブ終了アイコンをクリックする。
【００３１】
ジョブ実行・終了要求手段１２は、ジョブ実行・終了入力手段１１からジョブ実行指令が入力されたとき、ジョブの実行を要求するジョブ実行要求をジョブ管理装置２０に出力するものである。また、ジョブ実行・終了要求手段１２は、ジョブ実行・終了入力手段１１からジョブ終了指令が入力されたとき、ジョブの終了を要求するジョブ終了要求をジョブ管理装置２０に出力する。ここで、本実施形態では、ジョブ実行・終了要求手段１２は、例えば、映像制作アプリケーションの一部機能として実現される。なお、ジョブ実行・終了要求手段１２が、請求項に記載のジョブ実行手段に相当する。
【００３２】
ここで、ジョブ実行・終了要求手段１２は、ジョブ実行要求に、ジョブの実行に必要となる情報を含めても良い。例えば、ジョブ実行要求は、実行を要求するジョブの識別子、このジョブの種類、このジョブの対象となるファイルの名称、このファイルを格納したサーバの名称、このファイルを格納するサーバの名称、ジョブの実行結果を出力するサーバ名称、及び、ネットワークＮＷでのユーザ端末１０のアドレス（ＩＰアドレス）を含む。また、画像処理を施すジョブの場合、ジョブ実行要求には、ジョブの対象となる映像データの範囲を指定するタイムコード（例えば、１０：００：００：００〜１０：００：１３：１０）や、画像処理に必要となる画像処理パラメータ（例えば、色変換の数値、ワイプ処理におけるワイプ方向）を含めても良い。これらジョブの実行に必要となる情報は、ユーザ又はシステム管理者によって、予め設定される。
【００３３】
また、ジョブ実行・終了要求手段１２は、ジョブ終了要求に、ジョブの終了に必要となる情報を含めても良い。例えば、ジョブ終了要求は、終了を要求するジョブの識別子、このジョブの種類、及び、ネットワークＮＷでのユーザ端末１０のアドレスを含む。なお、図１では、１台のユーザ端末１０を図示したが、ユーザ端末１０が複数でも良いことは言うまでもない。
【００３４】
［ジョブ管理装置の構成］
ジョブ管理装置２０は、ユーザ端末１０からジョブ実行要求が入力されたとき、ジョブを実行するプロセスを決定してプロセスにジョブを実行させるものである。また、ジョブ管理装置２０は、ユーザ端末１０からジョブ終了要求が入力されたとき、ジョブを実行したプロセスを終了する。図１に示すように、ジョブ管理装置２０は、プロセス管理手段２１と、ジョブ管理手段２２と、プロセス決定手段２３と、プロセス起動・終了要求手段２４と、ジョブ実行要求手段２５とを備える。
【００３５】
プロセス管理手段２１は、プロセスサーバ３０ａ〜３０ｃのプロセス３３ａ〜３３ｃ毎に、少なくともプロセス３３ａ〜３３ｃが起動しているか否かを示すプロセス情報を記憶するメモリ、ハードディスク等の記憶手段である。例えば、プロセス情報は、プロセス３３ａ〜３３ｃの起動又は停止を示すステータス、プロセス３３ａ〜３３ｃが何れのジョブを実行したかを示すジョブの識別子、プロセス３３ａ〜３３ｃが実行可能なジョブの種類を示すプロセス種類を有する。さらに、プロセス情報は、ＣＰＵ時間、メモリ使用量、ネットワーク負荷率等のプロセスサーバ３０ａ〜３０ｃの負荷情報を含んでも良い。なお、このプロセス情報は、プロセスサーバ３０ａ〜３０ｃによって一定間隔（例えば、１０秒間隔）で更新される。
【００３６】
ジョブ管理手段２２は、ユーザ端末１０からジョブ実行要求が入力されたとき、プロセス管理手段２１のプロセス情報を参照し、プロセス３３ａ〜３３ｃを起動するか否かを判定するものである。以下、図２，図３を参照して、ジョブ実行要求が入力された場合と、ジョブ終了要求が入力された場合とに分けて、ジョブ管理手段２２の詳細を説明する。なお、説明のために、ジョブ実行要求が入力されたときの信号入出力を示す図２と、ジョブ終了要求が入力されたときの信号入出力を示す図３とに分けて図示しており、図２及び図３のジョブ管理手段２２は同一のものである。
【００３７】
＜ジョブ管理手段の詳細：ジョブ実行要求入力時＞
図２に示すように、ジョブ管理手段２２は、ジョブ実行要求入力部２２１と、プロセス制御指令部２２２と、プロセス起動・終了指令部２２３と、ジョブ実行指令部２２４と、ジョブ終了要求入力部２２５とを備える。
【００３８】
ジョブ実行要求入力部２２１は、ユーザ端末１０からジョブ実行要求が入力されると共に、入力されたジョブ実行要求を、プロセス制御指令部２２２に出力するものである。
【００３９】
プロセス制御指令部２２２は、ジョブ実行要求入力部２２１からジョブ実行要求が入力された場合、プロセス情報を参照し、そのジョブを実行可能なプロセス３３ａ〜３３ｃが起動しているか否かを判定する。ここで、前記したように、プロセス情報には、プロセス３３ａ〜３３ｃの起動又は停止を示すステータスや、プロセス３３ａ〜３３ｃが実行可能なジョブの種類が含まれている。また、前記したように、ジョブ実行要求には、実行を要求するジョブの種類が含まれている。従って、プロセス制御指令部２２２は、プロセス情報とジョブ実行要求とを参照（つまり、プロセス情報とジョブ実行要求とに含まれるジョブの種類が一致するか否かを判定）することで、ジョブを実行可能なプロセス３３ａ〜３３ｃが起動しているか否かを判定できる。
【００４０】
ここで、ジョブの実行に必要なプロセス３３ａ〜３３ｃが起動していない場合、プロセス制御指令部２２２は、プロセス３３ａ〜３３ｃの起動が必要と判定する。この判定結果に応じて、プロセス制御指令部２２２は、ジョブの実行に必要なプロセス３３ａ〜３３ｃの決定を要求するプロセス決定要求を、プロセス決定手段２３に出力する。例えば、プロセス決定要求は、実行を要求するジョブの識別子、及び、このジョブの種類を含む。
【００４１】
そして、このプロセス決定要求が入力された場合、プロセス決定手段２３は、プロセス制御指令部２２２にプロセス決定応答を出力する。このプロセス決定応答は、新たに起動するプロセス３３ａ〜３３ｃを示す情報であり、例えば、実行を要求するジョブの識別子、このジョブの種類、及び、新たに起動すべきプロセス３３ａ〜３３の識別子を含む。そして、プロセス制御指令部２２２は、新たに起動すべきプロセス３３ａ〜３３ｃの識別子を含むプロセス決定応答と、ジョブ実行要求とをプロセス起動・終了指令部２２３に出力する。なお、プロセス決定手段２３の詳細は、後記する。
【００４２】
一方、ジョブを実行可能なプロセス３３ａ〜３３ｃが起動している場合、プロセス制御指令部２２２は、プロセス３３ａ〜３３ｃを起動しないと判定する。この判定結果に応じて、プロセス制御指令部２２２は、既に起動されているプロセス３３ａ〜３３ｃを用いてジョブの実行を要求するジョブ実行要求をジョブ実行指令部２２４に出力する。
【００４３】
プロセス起動・終了指令部２２３は、プロセス制御指令部２２２からのプロセス決定応答に含まれるプロセス３３ａ〜３３ｃの識別子を参照し、そのプロセス３３ａ〜３３ｃの起動を要求するプロセス起動要求を、プロセス起動・終了要求手段２４に出力するものである。そして、プロセス起動・終了指令部２２３は、プロセス３３ａ〜３３ｃでジョブの実行を要求するジョブ実行要求を、ジョブ実行指令部２２４に出力する。
【００４４】
ジョブ実行指令部２２４は、プロセス制御指令部２２２及びプロセス起動・終了指令部２２３の少なくとも一方から入力されたジョブ実行要求を、ジョブ実行要求手段２５に出力するものである。
【００４５】
＜ジョブ管理手段の詳細：ジョブ終了要求入力時＞
以下、図３を参照して、ジョブ管理手段２２の詳細について、説明を続ける。
ジョブ終了要求入力部２２５は、ユーザ端末１０からジョブ終了要求が入力されると共に、入力されたジョブ終了要求を、プロセス制御指令部２２２に出力するものである。
【００４６】
プロセス制御指令部２２２は、ジョブ終了要求入力部２２５からのジョブ終了要求に含まれるジョブの識別子を参照し、このジョブの識別子を含む終了プロセス決定要求を、プロセス決定手段２３に出力する。ここで、終了プロセス決定要求は、ジョブを実行したプロセス３３ａ〜３３ｃの終了を要求するものである。この終了プロセス決定要求が入力された場合、プロセス決定手段２３は、プロセス制御指令部２２２に終了プロセス決定応答を出力する。この終了プロセス決定応答は、終了するプロセス３３ａ〜３３ｃを示す情報であり、例えば、終了するプロセス３３ａ〜３３ｃの識別子を含む。そして、プロセス制御指令部２２２は、プロセス決定手段２３からの終了プロセス決定応答をプロセス起動・終了指令部２２３に出力する。
【００４７】
プロセス起動・終了指令部２２３は、プロセス制御指令部２２２からの終了プロセス決定応答に含まれるプロセス３３ａ〜３３ｃの識別子を参照し、このプロセス３３ａ〜３３の終了を要求するプロセス終了要求を、プロセス起動・終了要求手段２４に出力する。
【００４８】
以下、図１に戻り、ジョブ管理装置２０の構成について、説明を続ける（適宜図２及び図３参照）。
プロセス決定手段２３は、ジョブ管理手段２２からプロセス決定要求が入力されたとき、プロセス管理手段２１が記憶するプロセス情報を参照し、ジョブを実行するプロセス３３ａ〜３３ｃをプロセス決定アルゴリズムによって決定するものである。例えば、プロセス情報で、プロセス決定要求に含まれるジョブを実行可能なプロセス種類で、かつ、ステータスが起動となっているプロセス３３ａ〜３３ｃが無い場合、プロセス決定手段２３は、ジョブを実行するプロセス３３ａ〜３３ｃを決定する。もし、これに該当するプロセス３３ａ〜３３ｃが複数ある場合、プロセス決定手段２３は、どのプロセス３３ａ〜３３ｃを用いてジョブを実行するかも決定する。
【００４９】
ここで、プロセス決定アルゴリズムとしては、例えば、先に入力されたジョブから順にプロセス３３ａ〜３３ｃを決定するＦＩＦＯ（First In Frist Out）法、後に入力されたジョブから順にプロセス３３ａ〜３３ｃを決定するＬＩＦＯ（Last In Frist Out）法、ジョブを終了してから最も長い時刻が経過したプロセス３３ａ〜３３ｃに決定するＬＲＵ（Least Recently Used）法、又は、ラウンドロビン法がある。また、例えば、プロセス決定手段２３は、プロセス情報に含まれる負荷情報を参照し、最も負荷が低いプロセスサーバ３０ａ〜３０ｃのプロセス３３ａ〜３３ｃに決定しても良い。そして、前記したように、プロセス決定手段２３は、例えば、新たに起動するプロセス３３ａ〜３３ｃの識別子を含むプロセス決定応答をジョブ管理手段２２に出力する。なお、プロセス決定手段２３のプロセス決定アルゴリズムは、これらに制限されない。
【００５０】
また、プロセス決定手段２３は、ジョブ管理手段２２から終了プロセス決定要求が入力されたとき、プロセス管理手段２１が記憶するプロセス情報を参照し、終了するプロセス３３ａ〜３３ｃを決定する。例えば、プロセス決定手段２３は、プロセス情報に含まれるプロセス３３ａ〜３３ｃが実行したジョブの識別子と、終了プロセス決定要求に含まれるジョブの識別子とが一致するプロセス３３ａ〜３３ｃを、終了すると判定する。そして、プロセス決定手段２３は、終了するプロセス３３ａ〜３３ｃの識別子を含む終了プロセス決定応答をジョブ管理手段２２に出力する。
【００５１】
プロセス起動・終了要求手段２４は、ジョブ管理手段２２からのプロセス起動要求を、プロセスサーバ３０ａ〜３０ｃに出力するものである。また、プロセス起動・終了要求手段２４は、ジョブ管理手段２２からのプロセス終了要求を、プロセスサーバ３０ａ〜３０ｃに出力する。つまり、プロセス起動・終了要求手段２４は、プロセス起動要求に含まれるプロセス３３ａ〜３３ｃの起動をプロセスサーバ３０ａ〜３０ｃに要求し、プロセス終了要求に含まれるプロセス３３ａ〜３３ｃの終了をプロセスサーバ３０ａ〜３０ｃに要求する。なお、図１では、説明のために、請求項に記載のプロセス起動要求手段とプロセス終了要求手段とを一体で構成したプロセス起動・終了要求手段２４として図示したが、別々に構成しても良い。
【００５２】
ジョブ実行要求手段２５は、プロセスサーバ３０ａ〜３０ｃに、既に起動しているプロセス３３ａ〜３３ｃ又はプロセス起動・終了要求手段２４のプロセス起動要求によって起動したプロセス３３ａ〜３３ｃを用いて、ジョブの実行を要求することを示すジョブ実行要求を出力するものである。つまり、ジョブ実行要求手段２５は、例えば、ジョブ管理手段２２からのジョブ実行要求をプロセスサーバ３０ａ〜３０ｃに出力する。
【００５３】
なお、本発明に係るジョブ管理装置２０を独立した装置として説明したが、これに限定されない。例えば、本発明では、一般的なコンピュータのＣＰＵ、メモリ、ハードディスク等のハードウェア資源を、前記した各手段として協調動作させるプログラムによって実現できる。このプログラムは、通信回線を介して配布しても良く、ＣＤ−ＲＯＭやフラッシュメモリ等の記録媒体に書き込んで配布しても良い。
【００５４】
［プロセスサーバの構成］
プロセスサーバ３０ａ〜３０ｃは、それぞれ、ジョブを実行可能なプロセス３３ａ〜３３ｃとして動作するプログラム（不図示）を備えるものである。図１に示すように、プロセスサーバ３０ａ〜３０ｃは、それぞれ、プロセス監視手段３１ａ〜３１ｃと、プロセス起動・終了手段３２ａ〜３２ｃと、プロセス３３ａ〜３３ｃと、記憶手段３４ａ〜３４ｃとを備える。
【００５５】
プロセス監視手段３１ａ〜３１ｃは、それぞれのプロセスサーバ３０ａ〜３０ｃのプロセス３３ａ〜３３ｃが起動しているか又は終了しているかを監視するものである。また、プロセス監視手段３１ａ〜３１ｃは、プロセス管理手段２１のプロセス情報を、プロセス３３ａ〜３３の監視結果で更新（例えば、１０秒間隔で更新）する。
【００５６】
プロセス起動・終了手段３２ａ〜３２ｃは、ジョブ管理装置２０からプロセス起動要求が入力されたとき、そのプロセス起動要求に対応するプログラムを、プロセス３３ａ〜３３ｃとして起動させる。また、プロセス起動・終了手段３２ａ〜３２ｃは、ジョブ管理装置２０からプロセス終了要求が入力されたとき、そのプロセス終了要求に対応するプロセス３３ａ〜３３ｃ（つまり、プログラム）を終了させる。
【００５７】
プロセス３３ａ〜３３ｃは、プロセスサーバ３０ａ〜３０ｃにおいて、メモリ領域等のハードウェア資源が割り当てられたプログラムである。そして、プロセス３３ａ〜３３ｃは、ジョブを実行する。なお、本発明では、プロセス３３ａ〜３３は、実行可能なジョブが特に制限されない。また、プロセスサーバ３０ａ〜３０ｃがそれぞれ１個のプロセス３３ａ〜３３ｃを備える例で説明したが、これに限定されない。例えば、プロセスサーバ３０ａ〜３０ｃは、それぞれ、２個以上のプログラム（プロセス）を備えても良い（不図示）。
【００５８】
記憶手段３４ａ〜３４ｃは、例えば、データやファイルの読み込みや書き込みが可能なメモリやハードディスクである。また、記憶手段３４ａ〜３４ｃは、プロセス３３ａ〜３３ｃとして動作するプログラムを記憶しても良い。なお、図１では、３台のプロセスサーバ３０ａ〜３０ｃを図示したが、プロセスサーバ３０ａ〜３０ｃは、３台に限定されない。
【００５９】
［プロセス毎に起動と停止とを行う具体例］
以上では、プロセス３３ａ〜３３ｃの全て起動及び停止する例を説明したが、プロセス３３ａ〜３３ｃ毎に起動と停止とを行っても良い。以下、プロセス３３ｃが既に起動しており、かつ、プロセス３３ａ，３３ｂが起動していない場合を例に説明する（図１，２参照）。この場合、プロセス決定手段２３は、プロセス３３ａ，３３ｂの識別子を含むプロセス決定応答をジョブ管理手段２２（プロセス制御指令部２２２）に出力する。
【００６０】
また、プロセス制御指令部２２２は、プロセス３３ａ，３３ｂの識別子を含むプロセス決定応答と、ジョブ実行要求とをプロセス起動・終了指令部２２３に出力する。そして、プロセス制御指令部２２２は、プロセス３３ｃでジョブの実行を要求するジョブ実行要求を、ジョブ実行指令部２２４に出力する。さらに、プロセス起動・終了指令部２２３は、プロセス３３ａ，３３ｂの起動を要求するプロセス起動要求を出力し、プロセス３３ａ，３３ｂでジョブの実行を要求するジョブ実行要求を、ジョブ実行指令部２２４に出力する。
【００６１】
また、ジョブ実行指令部２２４は、プロセス制御指令部２２２から入力されジョブ実行要求と、プロセス起動・終了指令部２２３から入力されジョブ実行要求とを、プロセスサーバ３０ａ〜３０ｃに別々に出力する。このように、ジョブ管理装置２０は、プロセス３３ａ〜３３ｃ毎に、起動と停止とを行うことができる。
【００６２】
以下、図１のジョブ管理システム１の動作例１〜動作例３をそれぞれ説明する（適宜図１参照）。なお、動作例１〜動作例３では、プロセス３３ａが記憶手段３４ａに記録されたファイルを読み出してプロセスサーバ３０ｂに送信し、プロセス３３ｂが任意の処理（例えば、ファイルに対する画像処理）を行ってプロセスサーバ３０ｂに送信し、プロセス３３ｃがファイルを記憶手段３４ｃに書き込むものとして説明する。また、動作例１では、プロセス３３ａ〜３３ｃの全てが起動していないものとして説明する。ここで、図４では、プロセス起動要求のかっこ書きは、そのプロセス起動要求が起用を要求するプロセスを示す。さらに、ジョブ実行要求のかっこ書きは、どのプロセスを用いてジョブを実行するかを示す。
【００６３】
［動作例１：新たにプロセスを起動する場合］
図４を参照して、図１のジョブ管理システム１の動作例１を説明する。ユーザは、記憶手段３４ａのファイルに対して画像処理を行いたい場合、ファイルを記憶手段３４ａに書き込み、ジョブ実行・終了入力手段１１によりジョブ実行指令を入力する。すると、ユーザ端末１０は、図４に示すように、ジョブ実行・終了要求手段１２によって、ジョブ実行・終了入力手段１１からジョブ実行指令が入力されたとき、ジョブの実行を要求するジョブ実行要求をジョブ管理装置２０に出力する（ステップＳ１）。
【００６４】
ステップＳ１の処理に応じて、ジョブ管理装置２０は、ジョブ管理手段２２によって、プロセス管理手段２１のプロセス情報を参照し、プロセス３３ａ〜３３ｃを起動するか否かを判定する。プロセス３３ａ〜３３ｃが起動していないため、ジョブ管理装置２０は、ジョブ管理手段２２によって、プロセス３３ａ〜３３ｃの起動が必要と判定する。また、ジョブ管理装置２０は、プロセス決定手段２３によって、ジョブの実行に必要なプロセス３３ａ〜３３ｃを決定する。そして、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ｂの起動を要求するプロセス起動要求をプロセスサーバ３０ｂに出力する（ステップＳ２）。なお、ジョブ管理手段２２の詳細は、既に説明しているので省略する。
【００６５】
ステップＳ２と同様に、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ａの起動を要求するプロセス起動要求をプロセスサーバ３０ａに出力する（ステップＳ３）。また、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ｃの起動を要求するプロセス起動要求をプロセスサーバ３０ｃに出力する（ステップＳ４）。
【００６６】
ステップＳ２の処理に応じて、プロセスサーバ３０ｂは、プロセス起動・終了手段３２ｂによって、プロセス３３ｂを起動する（ステップＳ５）。また、ステップＳ３の処理に応じて、プロセスサーバ３０ａは、プロセス起動・終了手段３２ａによって、プロセス３３ａを起動する（ステップＳ６）。そして、ステップＳ４の処理に応じて、プロセスサーバ３０ｃは、プロセス起動・終了手段３２ｃによって、プロセス３３ｃを起動する（ステップＳ７）。
【００６７】
ステップＳ５の処理に続いて、プロセスサーバ３０ｂでは、プロセス３３ｂが、プロセス３３ａ，３３ｃに対して通信コネクションを確立する。その後、プロセス３３ｂが、ジョブの実行が可能な待ち状態となる。また、ステップＳ６の処理に続いて、プロセスサーバ３０ａでは、プロセス３３ａが、プロセス３３ｂに対して通信コネクションを確立する。その後、プロセス３３ａが、ジョブの実行が可能な待ち状態となる。そして、ステップＳ７の処理に続いて、プロセスサーバ３０ｃは、プロセス３３ｃが、プロセス３３ｂに対して通信コネクションを確立する。その後、プロセス３３ｃが、ジョブの実行が可能な待ち状態となる（ステップＳ８，ステップＳ９）。
【００６８】
ステップＳ９の処理に続いて、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ｂに出力する（ステップＳ１０）。また、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ａに出力する（ステップＳ１１）。そして、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ｃに出力する（ステップＳ１２）。
【００６９】
ステップＳ１１の処理に応じて、プロセスサーバ３０ａは、プロセス３３ａによって、ジョブを実行する。例えば、プロセスサーバ３０ａは、プロセス３３ａによって、ステップＳ１１で入力されたジョブ実行要求に含まれるファイルの名称を参照し、記憶手段３４ａからジョブの対象となるファイルを読み出す。そして、プロセスサーバ３０ａは、プロセス３３ａによって、ジョブ実行要求に含まれるタイムコードを参照し、ファイルからタイムコードで指定された範囲の映像データを抽出する。さらに、プロセスサーバ３０ａは、ジョブ実行要求に含まれるジョブの実行結果を出力するサーバ名称を参照し、抽出した映像データをジョブの実行結果としてプロセスサーバ３０ｂに送信する。その後、プロセス３３ａは、終了することなく、ジョブを実行可能な待ち状態となる（ステップＳ１３）。
【００７０】
ステップＳ１０の処理に応じて、プロセスサーバ３０ｂは、プロセス３３ｂによって、ジョブを実行する。例えば、プロセスサーバ３０ｂは、ステップＳ１０で入力されたジョブ実行要求に含まれる画像処理パラメータを参照し、プロセス３３ｂによって、ステップＳ１３で送信された映像データに対して画像処理を行う。そして、プロセスサーバ３０ｂは、プロセス３３ｂによって、この映像データ（つまり、ジョブの実行結果）をプロセスサーバ３０ｃに送信する。その後、プロセス３３ｂは、終了することなく、ジョブを実行可能な待ち状態となる（ステップＳ１４）。
【００７１】
ステップＳ１２の処理に応じて、プロセスサーバ３０ｃは、プロセス３３ｃによって、ジョブを実行する。例えば、プロセスサーバ３０ｃは、プロセス３３ｃによって、ステップＳ１２で入力された映像データを、ファイルを記憶手段３４ｃに書き込む。その後、プロセス３３ｃは、終了することなく、ジョブを実行可能な待ち状態となる（ステップＳ１５）。
【００７２】
［動作例２：既にプロセスが起動している場合］
図５を参照して、図１のジョブ管理システム１の動作例２を説明する。ここで、動作例２では、プロセス３３ａ〜３３ｃの全てが起動し、プロセス３３ａとプロセス３３ｂとの間でコネクションが確立し、プロセス３３ｂとプロセス３３ｃとの間でコネクションが確立しているものとして説明する。また、動作例２では、動作例１と同一のジョブを実行するものとして説明する。なお、動作例２において、ジョブの対象となる映像データは、動作例１と同一である必要はない。
【００７３】
ユーザ端末１０は、図５に示すように、ジョブ実行・終了要求手段１２によって、ジョブ実行・終了入力手段１１からジョブ実行指令が入力されたとき、ジョブの実行を要求するジョブ実行要求をジョブ管理装置２０に出力する（ステップＳ１０１）。
【００７４】
ステップＳ１０１の処理に応じて、ジョブ管理装置２０は、ジョブ管理手段２２によって、プロセス管理手段２１のプロセス情報を参照し、プロセス３３ａ〜３３ｃを起動するか否かを判定する。プロセス３３ａ〜３３ｃが既に起動しているため、ジョブ管理装置２０は、ジョブ管理手段２２によって、プロセス３３ａ〜３３ｃを起動しないと判定する。また、ジョブ管理装置２０は、プロセス決定手段２３によって、既に起動しているプロセス３３ａ〜３３ｃでジョブを実行すると決定する。
【００７５】
そして、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ｂに出力する（ステップＳ１０２）。また、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ａに出力する（ステップＳ１０３）。さらに、ジョブ管理装置２０は、ジョブ実行要求手段２５によって、ジョブ実行要求をプロセスサーバ３０ｃに出力する（ステップＳ１０４）。
【００７６】
ステップＳ１０２の処理に応じて、プロセスサーバ３０ｂは、プロセス３３ｂによって、ジョブを実行する（ステップＳ１０６）。その後、プロセス３３ｂは、終了することなく、ジョブを実行可能な待ち状態となる。なお、ステップＳ１０６は、図４のステップ１４と同様の処理であるため、その説明を省略する。
【００７７】
ステップＳ１０３の処理に応じて、プロセスサーバ３０ａは、プロセス３３ａによって、ジョブを実行する（ステップＳ１０５）。その後、プロセス３３ａは、終了することなく、ジョブを実行可能な待ち状態となる。なお、ステップＳ１０５は、図４のステップ１３と同様の処理であるため、その説明を省略する。
【００７８】
ステップＳ１０４の処理に応じて、プロセスサーバ３０ｃは、プロセス３３ｃによって、ジョブを実行する（ステップＳ１０７）。その後、プロセス３３ｃは、終了することなく、ジョブを実行可能な待ち状態となる。なお、ステップＳ１０７は、図４のステップ１５と同様の処理であるため、その説明を省略する。
【００７９】
［動作例３：プロセスを終了する場合］
図６を参照して、図１のジョブ管理システム１の動作例３を説明する。ここで、動作例３では、プロセス３３ａ〜３３ｃの全てが起動し、プロセス３３ａとプロセス３３ｂとの間でコネクションが確立し、プロセス３３ｂとプロセス３３ｃとの間でコネクションが確立しているものとして説明する。
【００８０】
ジョブが全て終了し、プロセス３３ａ〜３３ｃを起動させておく必要が無くなった場合、ユーザは、ジョブ実行・終了入力手段１１によりジョブ終了指令を入力する。すると、ユーザ端末１０は、図６に示すように、ジョブ実行・終了要求手段１２によって、ジョブ実行・終了入力手段１１からジョブ終了指令が入力されたとき、ジョブの終了を要求するジョブ終了要求をジョブ管理装置２０に出力する（ステップＳ１００１）。
【００８１】
ステップＳ１００１の処理に応じて、ジョブ管理装置２０は、ジョブ管理手段２２によって、プロセス管理手段２１のプロセス情報を参照し、プロセス３３ａ〜３３ｃが起動しているか否かを判定し、ジョブを実行したプロセス３３ａ〜３３ｃを終了する。
【００８２】
そして、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ｂの終了を要求するプロセス終了要求をプロセスサーバ３０ｂに出力する（ステップＳ１００２）。また、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ａの終了を要求するプロセス終了要求をプロセスサーバ３０ａに出力する（ステップＳ１００３）。さらに、ジョブ管理装置２０は、プロセス起動・終了要求手段２４によって、プロセス３３ｃの終了を要求するプロセス終了要求をプロセスサーバ３０ｃに出力する（ステップＳ１００４）。
【００８３】
ステップＳ１００２の処理に応じて、プロセスサーバ３０ｂは、プロセス起動・終了手段３２ｂによって、プロセス３３ｂを終了する（ステップＳ１００５）。また、ステップＳ１００３の処理に応じて、プロセスサーバ３０ａは、プロセス起動・終了手段３２ａによって、プロセス３３ａを終了する（ステップＳ１００６）。そして、ステップＳ１００４の処理に応じて、プロセスサーバ３０ｃは、プロセス起動・終了手段３２ｃによって、プロセス３３ｃを終了する（ステップＳ１００７）。
【００８４】
ステップＳ１００５〜ステップＳ１００７の処理に続いて、プロセス３３ａとプロセス３３ｂとの間でコネクションが切断され、プロセス３３ｂとプロセス３３ｃとの間でコネクションが切断される（ステップＳ１００８及びステップＳ１００９）。
【００８５】
以上、本発明の第１実施形態に係るジョブ管理装置２０では、ジョブを実行可能なプロセス３３ａ〜３３ｃが既に起動しているとき、ジョブの処理時間の短縮することができる。具体的には、図５に示すように、プロセス３３ａ〜３３ｃが既に起動している場合、ジョブ管理システム１では、ジョブの処理時間から、プロセス起動要求を送信する時間（図４のステップＳ２〜ステップＳ４）と、プロセス３３ａ〜３３ｃを起動する時間（図４のステップＳ５〜ステップＳ７）と、プロセス３３ａ〜３３ｃがコネクションを確立する時間（図４のステップＳ８及びステップＳ９）とを節約できる。
【００８６】
また、図６に示すように、本発明の第１実施形態に係るジョブ管理装置２０では、プロセス終了要求が送信されたときに、プロセスサーバ３０ａ〜３０ｃがプロセス３３ａ〜３３ｃを終了する。このため、本発明の第１実施形態に係るジョブ管理装置２０では、従来技術のように、ジョブを実行する毎に、プロセス３３ａ〜３３ｃを起動して、そのプロセス３３ａ〜３３ｃを終了する必要がなく、ジョブの処理時間をより短縮することができる。具体的には、本発明の第１実施形態に係るジョブ管理装置２０では、同一のジョブを繰り返し実行する場合、プロセス起動要求を送信する時間（図４のステップＳ２〜ステップＳ４）と、プロセス３３ａ〜３３ｃを起動する時間（図４のステップＳ５〜ステップＳ７）と、プロセス３３ａ〜３３ｃがコネクションを確立する時間（図４のステップＳ８及びステップＳ９）と、プロセス終了要求を送信する時間（図６のステップＳ１００２〜ステップＳ１００４）と、プロセス３３ａ〜３３ｃを終了する時間（図６のステップＳ１００５〜ステップＳ１００７）とを節約できる。
【００８７】
なお、本発明は、ユーザ端末１０の台数、各ユーザ端末１０がジョブを要求する回数、各ユーザ端末１０がジョブを連続要求するときの間隔等のジョブ実行環境に関わらず、適用することができる。特に、本発明は、特定少数（例えば、１〜３台）のユーザ端末１０が同一ジョブを繰り返し要求するジョブ実行環境において、各ユーザ端末１０がプロセス３３ａ〜３３ｃを占有する影響が少なく、その効果が顕著なものとなる。
【符号の説明】
【００８８】
１  ジョブ管理システム
１０  ユーザ端末
１１  ジョブ実行・終了入力手段
１２  ジョブ実行・終了要求手段（ジョブ実行手段）
２０  ジョブ管理装置
２１  プロセス管理手段
２２  ジョブ管理手段
２２１  ジョブ実行要求入力部
２２２  プロセス制御指令部
２２３  プロセス起動・終了指令部（プロセス起動要求手段及びプロセス終了要求手段）
２２４  ジョブ実行指令部
２２５  ジョブ終了要求入力部
２３  プロセス決定手段
２４  プロセス起動・終了要求手段
２５  ジョブ実行終了要求手段
３０ａ〜３０ｃ  プロセスサーバ
３１ａ〜３１ｃ  プロセス監視手段
３２ａ〜３２ｃ  プロセス起動・終了手段
３３ａ〜３３ｃ  プロセス
３４ａ〜３４ｃ  記憶手段
ＮＷ  ネットワーク
【図１】
2010286931.tif 000003
【図２】
2010286931.tif 000004
【図３】
2010286931.tif 000005
【図４】
2010286931.tif 000006
【図５】
2010286931.tif 000007
【図６】
2010286931.tif 000008