(57)【要約】      （修正有）【課題】リソースの稼働率を向上させる情報処理装置の制御方法、情報処理装置、およびプログラムを提供する。【解決手段】複数のアプリケーションプログラムを実行する情報処理システムにおいて、システム内の各構成要素を示す情報を記憶する構成要素管理テーブルを備える。アプリケーションプログラムの実行要求を受けると、前記情報処理システムが前記アプリケーションプログラムを実行する際に使用する各構成要素を、前記構成要素管理テーブルに記憶される各構成要素の情報に基づいて選出する。この選出された各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを、前記情報処理システムに送信する。【選択図】  図４
2006163482.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションプログラムを実行する情報処理システムの各構成要素を示す情報を記憶する構成要素管理テーブルを備える情報処理装置の制御方法であって、
アプリケーションプログラムの実行要求を受け、
前記構成要素管理テーブルに記憶される各構成要素を示す情報に基づいて、前記情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する前記各構成要素を選出し、
前記選出された各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを、前記情報処理システムに送信する
ことを特徴とする情報処理装置の制御方法。
【請求項２】
前記情報処理装置は、複数のアプリケーションプログラムを実行する他の情報処理システムを制御する他の情報処理装置と通信可能に接続され、
前記構成要素管理テーブルに記憶される各構成要素を示す情報に基づいて、前記情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する前記各構成要素を選出することができない場合には、前記実行要求を受けたアプリケーションプログラムを前記他の情報処理システムに実行させるためのコマンドを前記他の情報処理装置に送信し、
前記他の情報処理装置から、前記他の情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する各構成要素を選出することができた旨の情報を受信すると、前記選出された前記他の情報処理システムの各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを、前記他の情報処理システムに送信する
ことを特徴とする請求項１に記載の情報処理装置の制御方法。
【請求項３】
前記情報処理システムは、
前記アプリケーションプログラムを実行するための複数のサーバと、
データを記憶する複数のストレージ装置と、
前記サーバを制御するための複数のオペレーティングシステムと、
を構成要素として含んで構成される
ことを特徴とする請求項１に記載の情報処理装置の制御方法。
【請求項４】
複数のアプリケーションプログラムを実行する情報処理システムの各構成要素を示す情報を記憶する構成要素管理テーブルと、
アプリケーションプログラムの実行要求を受ける実行要求受け付け部と、
前記構成要素管理テーブルに記憶される各構成要素を示す情報に基づいて、前記情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する前記各構成要素を選出する構成要素選出部と、
前記選出された各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを、前記情報処理システムに送信する実行要求送信部と、
を備えることを特徴とする情報処理装置。
【請求項５】
複数のアプリケーションプログラムを実行する情報処理システムの各構成要素を示す情報を記憶する構成要素管理テーブルを備える情報処理装置に、
アプリケーションプログラムの実行要求を受ける手順と、
前記構成要素管理テーブルに記憶される各構成要素を示す情報に基づいて、前記情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する前記各構成要素を選出する手順と、
前記選出された各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを、前記情報処理システムに送信する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置の制御方法、情報処理装置、及びプログラムに関する。
【背景技術】
【０００２】
複数のユーザに情報処理システムを共同で使用させる場合には、各ユーザは自己に割り当てられたサーバやストレージ装置などのリソースを用いてアプリケーションプログラムの実行を行う。この場合、システム管理者は、各ユーザにリソースを割り当てるための各種設定を行う必要がある。また、さらに各ユーザは、自己が実行する各アプリケーションプログラムのそれぞれについて、実行環境にあったハードウェアやソフトウェア、ネットワーク等をあらかじめ準備し、その上で各アプリケーションプログラムを実行するためのスケジューリングを行う。
【０００３】
このように情報処理システムで複数のアプリケーションプログラムを実行する場合には、情報処理システムが備える各リソースを、各アプリケーションプログラムを実行するために必要な単位にあらかじめ分割して利用していた。また、そのための様々な技術も開発されている（例えば特許文献１、特許文献２参照）。
【特許文献１】特開２００１−１９５２６８号公報
【特許文献２】特開２００２−２５９１４６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
各アプリケーションプログラムに情報処理システムのリソースをあらかじめ割り当てる場合、システム管理者は、アプリケーションプログラムの実行形態、つまり例えば、オンラインリアルタイム処理の実行形態、ディレードオンライン処理の実行形態、あるいはバッチ処理の実行形態等、を勘案して各リソースの選択を行ない、実行形態に応じて情報処理システムを分割して各アプリケーションプログラムに割当てることになる。
【０００５】
しかしこの場合、アプリケーションプログラムの実行中にリソースが不足することがないようにするため各アプリケーションプログラムには余裕を持ってリソースが割り当てられる。そしてそのためリソースの分割損が発生する。また、それに起因するリソース稼働率の低下が発生する。さらにはリソースを割り当てるための設定如何によっては、複数のアプリケーションプログラムが実行中に同時に同一のリソースを必要とする、いわゆるリソースの競合が発生することもある。
【０００６】
本発明は上記課題を鑑みてなされたものであり、リソースの稼働率を向上させる情報処理装置の制御方法、情報処理装置、及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、複数のアプリケーションプログラムを実行する情報処理システムの各構成要素を示す情報を記憶する構成要素管理テーブルを備える情報処理装置の制御方法であって、アプリケーションプログラムの実行要求を受け、前記構成要素管理テーブルに記憶される各構成要素を示す情報に基づいて、前記情報処理システムが前記実行要求を受けたアプリケーションプログラムを実行する際に使用する前記各構成要素を選出し、前記選出された各構成要素を使用して前記実行要求を受けたアプリケーションプログラムを実行させるためのコマンドを前記情報処理システムに送信する。
【０００８】
その他、本願が開示する課題、及びその解決方法は、発明を実施するための最良の形態の欄、及び図面により明らかにされる。
【発明の効果】
【０００９】
リソースの稼働率を向上させる情報処理装置の制御方法、情報処理装置、及びプログラムを提供することができる。
【発明を実施するための最良の形態】
【００１０】
＝＝＝全体構成例＝＝＝
本実施の形態に係るコンピュータシステムの構成を図１に示す。本実施の形態に係るコンピュータシステムは、センタ１（１００）とセンタ２（２００）とセンタ３（１００）とがネットワーク４００を介して通信可能に接続されてなる。また図２に示すように、各センタ１００は複数の情報処理システム１１０がネットワーク４００を介して通信可能に接続されてなる。さらに図３に示すように、各情報処理システム１１０は、管理コンピュータ（特許請求の範囲に記載の情報処理装置に相当する）２００と複数のサーバ７００と複数のストレージ装置７１０とが通信可能に接続されてなる。
【００１１】
図２に示すように、各情報処理システム１１０はクライアントシステム３００とネットワーク４００を介して通信可能に接続される。そして各情報処理システム１１０において、管理コンピュータ２００がクライアントシステム３００からアプリケーションプログラム８００の実行要求を受信すると、サーバ７００がアプリケーションプログラム８００を実行する。そしてクライアントシステム３００に対してアプリケーションプログラム８００の実行結果を送信する。また情報処理システム１１０は、クライアントシステム３００から複数のアプリケーションプログラム８００の実行要求が送信された場合には、それに応じて複数のアプリケーションプログラム８００を実行する。ストレージ装置７１０は、サーバ７００がアプリケーションプログラム８００の実行を行うためのデータを記憶する装置である。
【００１２】
また詳細は後述するが、本実施の形態に係る情報処理システム１１０においては、管理コンピュータ２００は、クライアントシステム３００からアプリケーションプログラム８００の実行要求を受信すると、上記アプリケーションプログラム８００を実行する際に使用する情報処理システム１１０の各構成要素（リソース）を選出する。選出される構成要素としては、例えば上述したサーバ７００やストレージ装置７１０が含まれる。またサーバ７００を制御するためのオペレーティングシステム８５０も含まれる。その他、サーバ７００で実行されるミドルソフト８４０も含まれるようにすることもできる。
【００１３】
そして管理コンピュータ２００は、選出された上記各構成要素によりアプリケーションプログラム８００が実行されるように、情報処理システム１１０すなわち上記各構成要素を制御する。つまり、情報処理システム１１０の上記各構成要素に、上記各構成要素を用いてアプリケーションプログラム８００を実行させるためのコマンドを送信する。詳細は後述する。
【００１４】
＝＝＝管理コンピュータの構成＝＝＝
次に、管理コンピュータ２００の構成について図３を参照しながら説明する。  
管理コンピュータ２００は、ＣＰＵ２１０、メモリ２２０、ポート２３０、記録媒体読取装置２４０、入力装置２５０、出力装置２６０、記憶装置２８０を備える。
【００１５】
ＣＰＵ２１０は管理コンピュータ２００の全体の制御を司るもので、記憶装置２８０に記憶される本実施の形態に係る各種の動作を行うためのコードから構成される管理コンピュータ制御プログラム８３０、マネージャプログラム８１０、スケジューラプログラム８２０をメモリ２２０に読み出して実行することにより、管理コンピュータ２００としての各種機能を実現する。例えばＣＰＵ２１０により管理コンピュータ制御プログラム８３０やマネージャプログラム８１０、スケジューラプログラム８２０が実行され、メモリ２２０やポート２３０、入力装置２５０、出力装置２６０、記憶装置２８０等のハードウェア機器と協働することにより、実行要求受け付け部、構成要素選出部、実行要求送信部が実現される。メモリ２２０は例えば半導体記憶装置により構成することができる。
【００１６】
管理コンピュータ制御プログラム８３０は、クライアントシステム３００からのアプリケーションプログラム８００の実行要求を受け付けて、アプリケーションプログラム８００の実行結果をクライアントシステム３００に送信する。またアプリケーションプログラム８００を実行するために使用する情報処理システム１１０の構成要素の選出を行う。構成要素の選出は、管理コンピュータ制御プログラム８３０がマネージャプログラム８１０に選出の指示を行うことにより行われる。
【００１７】
マネージャプログラム８１０は、管理コンピュータ制御プログラム８３０からの指示により、アプリケーションプログラム８００を実行するための構成要素を選出する。マネージャプログラム８１０は、管理コンピュータ制御プログラム８３０から構成要素選出の指示を受けると、スケジューラプログラム８２０に構成要素の選出を指示する。本実施の形態に係るスケジューラプログラム８２０は、図２に示すようにソフトウェアスケジューラ８２１とハードウェアスケジューラ８２２とネットワークスケジューラ８２３とに別れてなり、各スケジューラによりそれぞれ選出された構成要素がマネージャプログラム８１０により管理コンピュータ制御プログラム８３０に通知される。
【００１８】
ソフトウェアスケジューラ８２１は、アプリケーションプログラム８００を実行するために必要なソフトウェアの選出を行う。アプリケーションプログラム８００を実行するために必要なソフトウェアとしては、例えばオペレーティングシステム８５０や、ミドルソフト８４０などがある。
【００１９】
ミドルソフト８４０は、いわゆるミドルウェアとよばれるプログラムであり、オペレーティングシステム８５０などの基本ソフトウェアとアプリケーションプログラム８００などの応用ソフトウェアとの中間に位置付けられ、多様な利用分野に共通する基本的機能やサービスを実現するソフトウェアである。例えば、ＤＢＭＳ（DataBase Management System）ソフトウェアや通信管理システムソフトウェアなどがミドルソフト８４０の一例である。
【００２０】
ハードウェアスケジューラ８２２は、アプリケーションプログラム８００を実行するために必要なハードウェアを選出する。アプリケーションプログラム８００を実行するために必要なハードウェアとしては、例えばサーバ７００やストレージ装置７１０などがある。
【００２１】
ネットワークスケジューラ８２３は、アプリケーションプログラム８００を実行するために必要なネットワーク機器を選出する。アプリケーションプログラム８００を実行するために必要なネットワーク機器としては、例えばルータやハブ、スイッチなどがある。
【００２２】
記録媒体読取装置２４０は、記録媒体２７０に記録されているプログラムやデータを読み取るための装置である。読み取られたプログラムやデータはメモリ２２０や記憶装置２８０に格納される。従って、例えば記録媒体２７０に記録された管理コンピュータ制御プログラム８３０やマネージャプログラム８１０、スケジューラプログラム８２０を、記録媒体読取装置２４０を用いて上記記録媒体２７０から読み取って、メモリ２２０や記憶装置２８０に記憶するようにすることができる。
【００２３】
記録媒体２７０としてはフレキシブルディスクや磁気テープ、コンパクトディスク等を用いることができる。記録媒体読取装置２４０は管理コンピュータ２００に内蔵されている形態とすることもできるし、外付されている形態とすることもできる。
【００２４】
記憶装置２８０は、例えばハードディスク装置や半導体記憶装置等とすることができる。記憶装置２８０には、管理コンピュータ制御プログラム８３０やマネージャプログラム８１０、スケジューラプログラム８２０、アプリケーションプログラム８００、ミドルソフト８４０、ＯＳ（Operating System）８５０、ＡＰ属性データベース（ＡＰ属性ＤＢとも記す）６００、リソースデータベース（リソースＤＢとも記す）６１０、カレンダデータベース（カレンダＤＢとも記す）６２０、ＡＰ履歴データベース（ＡＰ履歴ＤＢとも記す）６３０、エンドユーザデータベース（エンドユーザＤＢとも記す）６４０が記憶される。詳細は後述するが、本実施の形態に係る管理コンピュータ２００は、クライアントシステム３００からアプリケーションプログラム８００の実行要求を受信すると、上記ＡＰ属性データベース６００やリソースデータベース６１０、カレンダデータベース６２０を参照しながら、アプリケーションプログラム８００を実行する際に使用する情報処理システム１１０の構成要素を選出する。
【００２５】
ＡＰ属性データベース６００は、管理コンピュータ２００がクライアントシステム３００から受けたアプリケーションプログラム８００の実行要求に関する情報を記録するためのテーブルである。これらの情報は、アプリケーションプログラム８００の実行要求と共にクライアントシステム３００から送信される。ＡＰ属性データベース６００の例を図５に示す。
【００２６】
図５に示すように、ＡＰ属性データベース６００は、”ＡＰ名称”欄、”スケジュール”欄、”ＡＰタイプ”欄、”ＡＰランク”欄、”リソース割り当て情報”欄、”エンドユーザ属性情報”欄を備える。
【００２７】
”ＡＰ名称”欄には、クライアントシステム３００から実行要求のなされたアプリケーションプログラム８００の識別子が記載される。
【００２８】
”スケジュール”欄には、情報処理システム１１０においてアプリケーションプログラム８００が実行されるスケジュールに関する情報が記載される。スケジュールに関する情報には、例えばアプリケーションプログラム８００を実行する日付、実行開始時刻、実行終了時刻が含まれる。
【００２９】
”ＡＰタイプ”欄には、情報処理システム１１０において実行されるアプリケーションプログラム８００のタイプが記載される。アプリケーションプログラム８００のタイプとしては、例えば「オンラインリアルタイム」、「ディレイドリアルタイム」、「バッチ」がある。「オンラインリアルタイム」は、オンラインバンキング処理や航空機の座席予約処理のように即時処理が求められるアプリケーションプログラム８００の形態を示す。「ディレイドリアルタイム」は、受注した商品の配送処理のように、オンラインリアルタイム処理ほどの即時処理は求められないが、速やかに処理されることが求められるアプリケーションプログラム８００の形態を示す。「バッチ」は、データベースのバックアップ処理のように、即時処理は求められずに夜間や休日などの情報処理システムの負荷が小さいときに実行されればよいアプリケーションプログラム８００の形態を示す。
【００３０】
”ＡＰランク”欄には、実行要求を受けたアプリケーションプログラム８００の優先度が記載される。すなわち、例えば複数のアプリケーションプログラム８００を同時刻に実行する場合において、同一のハードウェアを用いる必要がある場合には、優先度が高い方のアプリケーションプログラム８００を実行するために当該ハードウェアを使用するようにする。本実施の形態においては、優先度は１から２５５の数値で表現され、数値が小さいほど優先度が高い。
【００３１】
”リソース割り当て情報”欄には、アプリケーションプログラム８００に割り当てられるリソース（構成要素）の条件が記載される。例えば、ハードウェアに対する条件としては、サーバ７００のタイプや数量、サーバ７００の性能、ＣＰＵの性能、メモリの容量、ストレージ装置７１０のタイプや記憶容量などを指定することができる。ソフトウェアに対する条件としては、ＯＳ８５０のタイプやバージョン、ミドルソフト８４０等のアプリケーションプログラム８００を実行するためのプログラムプロダクト群を指定することができる。またネットワークに対する条件としては、バンド幅やプロトコルセット、ファイヤウォールのタイプやユーザ認証等を指定することができる。
【００３２】
”エンドユーザ属性情報”欄には、アプリケーションプログラム８００の実行要求を行ったユーザに関する情報が記載される。図５に示す例では、”エンドユーザ属性情報”欄には、さらに”エンドユーザＩＤ”欄、”優先度”欄、”使用権限”欄が設けられている。”エンドユーザＩＤ”欄には、例えばエンドユーザが企業の従業員である場合には社員番号が記載される。”優先度”欄には、エンドユーザに応じて定められた、アプリケーションプログラム８００実行時の優先度が記載される。例えば複数のエンドユーザから実行要求を受けたアプリケーションプログラム８００に関して、リソースが競合した場合には、優先度の高いエンドユーザから要求のあったアプリケーションプログラム８００の実行が優先される。”使用権限”欄には、エンドユーザに応じて定められた権限が記載される。例えば使用権限に応じて、使用可能なリソースを制限するようにすることができる。例えばシステム管理者から実行要求のなされたアプリケーションプログラムを実行する際には、全てのストレージ装置７１０を使用可能とするが、一般ユーザから実行要求のなされたアプリケーションプログラムを実行する際には、特定のストレージ装置７１０については使用させないようにすることができる。
【００３３】
このようにＡＰ属性データベース６００には、アプリケーションプログラム８００実行のための条件を詳細に記載しておくことができる。これにより、各アプリケーションプログラム８００へのリソースの割り当てをきめ細かく行うことが可能となり、各リソースが必要な時に必要な分だけ使用される様にすることができる。このため各リソースの稼働率を向上させることが可能となる。なお、クライアントシステム３００から送信されるアプリケーションプログラム８００実行のための条件の中には、未指定の条件が含まれていてもよい。この場合管理コンピュータ２００は、そのアプリケーションプログラム８００へのリソースの割り当ての際に、条件が未指定の分についてはデフォルトで規定されたリソースを割り当てるようにすることもできる。あるいは未使用のリソースを割り当てるようにすることもできる。さらには、条件を全て指定して再度アプリケーションプログラム８００の実行要求を送信させるためのメッセージをクライアントコンピュータ３００に送信するようにすることもできる。
【００３４】
リソースデータベース６１０は、情報処理システム１１０の各構成要素を示す情報を記憶するテーブルである。リソースデータベース６１０を図６に示す。図６に示す例では、センタ１（１００）が備える”サーバ２”、”ストレージ２”、”ＯＳ１”のそれぞれについて、「容量／機能」、「性能」、「信頼度」、「単価」、「現在の使用状況」が記載されている。管理コンピュータ２００は、クライアントシステム３００からアプリケーションプログラム８００の実行要求を受信した場合に、リソースデータベース６１０を参照することにより、情報処理システム１１０がどんな構成要素を備えているのかを知ることができる。そして管理コンピュータ２００は、リソースデータベース６１０に記載される各構成要素を示す情報に基づいて、アプリケーションプログラム８００を実行するための条件にあてはまるものを、リソースデータベース６１０に記載される各構成要素の中から、情報処理システム１１０が実行要求を受けたアプリケーションプログラム８００を実行する際に使用する各構成要素として選出する。
【００３５】
カレンダデータベース６２０は、情報処理システム１１０の各構成要素の使用予約状況を記録しておくためのテーブルである。カレンダデータベース６２０を図７に示す。管理コンピュータ２００は、アプリケーションプログラム８００の新たな実行要求をクライアントシステム３００から受けた場合に、カレンダデータベース６２０を参照することにより、リソースの使用予定を知ることができる。そして管理コンピュータ２００は、情報処理システム１１０が備える各構成要素のうち、アプリケーションプログラム８００の実行時間中に使用予定のないリソースの中から上記アプリケーションプログラム８００への割り当てを行う。また、アプリケーションプログラム８００へのリソースの割り当てを行った場合には、管理コンピュータ２００は、各リソースを割り当てた結果をカレンダデータベース６２０に記録しておく。また管理コンピュータ２００は、カレンダデータベース６２０に記載された各情報に基づいて、情報処理システム１１０に対して、アプリケーションプログラム８００を実行させるためのコマンドを送信する。つまり、アプリケーションプログラムの実行開始時刻になったら、管理コンピュータ２００は、情報処理システム１１０に対してアプリケーションプログラム８００の実行要求コマンドを送信する。
【００３６】
このように、カレンダデータベース６２０に情報処理システム１１０の各構成要素の使用予約状況を記録しておくことにより、管理コンピュータ２００は、アプリケーションプログラム８００に割り当てられた各リソースを使用して、上記アプリケーションプログラム８００を実行させるためのコマンドを情報処理システムに送信することができる。
【００３７】
ＡＰ履歴データベース６３０は、アプリケーションプログラム８００の実行実績情報を記録しておくためのテーブルである。ＡＰ履歴データベース６３０を図８に示す。これにより管理コンピュータ２００は、アプリケーションプログラム８００毎に、情報処理システム１１０のどの構成要素がどれくらいの時間使用されたかを記録しておくことができる。このため、アプリケーションプログラム８００の実行に伴う情報処理システム１１０の使用料金の管理を容易に行うことができる。
【００３８】
エンドユーザデータベース６４０は、エンドユーザ（クライアント）毎の、アプリケーションプログラム８００の実行実績情報を記録しておくためのテーブルである。エンドユーザデータベース６４０を図９に示す。これにより管理コンピュータ２００は、各エンドユーザのアプリケーションプログラム８００の実行時間を記録しておくことができる。このため、アプリケーションプログラム８００の実行に伴う情報処理システム１１０の使用料金の管理を容易に行うことができる。
【００３９】
図３に戻って、入力装置２５０は管理コンピュータ２００へのデータ入力等のために用いられる装置でありユーザインタフェースとして機能する。入力装置２５０としては例えばキーボードやマウス等を用いることができる。
【００４０】
出力装置２６０は情報を外部に出力するための装置でありユーザインタフェースとして機能する。出力装置２６０としては例えばディスプレイやプリンタ等を用いることができる。
【００４１】
ポート２３０は通信を行うための装置である。例えばネットワーク４００を介して行われる、クライアントシステム３００やサーバ７００、ストレージ装置７１０、さらには他の情報処理システム１１０や他のセンタ１００に含まれる情報処理装置との通信は、ポート２３０を介して行われるようにすることができる。また例えば、管理コンピュータ制御プログラム８３０やマネージャプログラム８１０、スケジューラプログラム８２０をポート２３０を通じて他の情報処理装置からネットワーク４００を介して受信して、メモリ２２０や記憶装置２８０に記憶するようにすることもできる。
【００４２】
＝＝＝処理の流れ＝＝＝
次に、本実施の形態に係る管理コンピュータ２００がクライアントシステム３００からアプリケーションプログラム８００の実行要求を受けた場合に、アプリケーションプログラム８００を実行するための情報処理システム１１０の構成要素を選出し、選出した各構成要素を用いてアプリケーションプログラム８００を実行する際の処理の流れを、図４に示すフローチャートを参照しながら説明する。
【００４３】
まず、管理コンピュータ２００がクライアントシステム３００からアプリケーションプログラム８００の実行要求を受け付けると（S1000）、管理コンピュータ２００はリソース割り当て要求をＡＰ属性データベース６００に記録する（S1010）。ここでリソース割り当て要求は、上述したクライアントシステム３００から送信されるアプリケーションプログラム８００を実行するための条件である。リソース割り当て要求は、アプリケーションプログラム８００の実行要求と共にクライアントシステム３００から送信される。そして管理コンピュータ２００はマネージャプログラム８１０を実行し、リソースの割り当て要求を行う（S1020）。
【００４４】
そうするとマネージャプログラム８１０は、ＡＰ属性データベース６００に記載された情報とリソースデータベース６１０に記載された情報とに基づいて、リソースの割り当て処理を行う（S1030）。条件に適合するリソースの割り当てを行うことができた場合には、S1040において”ＹＥＳ”に進み、マネージャプログラム８１０から各スケジューラプログラム８２０に対して各リソースの割り当てが指示される（S1050）。
【００４５】
そしてスケジューラプログラム８２０は、カレンダデータベース６２０に記載された情報に基づいて、指示されたリソースをアプリケーションプログラム８００に割り当てる（S1070）。割り当てることができた場合には、S1080において”ＹＥＳ”に進み、カレンダデータベース６２０に、割り当てたリソースに関する情報を記録する（S1110）。そしてスケジューラプログラム８２０は、マネージャプログラム８１０から指示されたリソースの割り当てが成功した旨の情報をマネージャプログラム８１０に送信する（S1120）。
【００４６】
一方、マネージャプログラム８１０から指示されたリソースを割り当てることができなかった場合には、スケジューラプログラム８２０はマネージャプログラム８１０に対して割り当てができなかった旨の情報を送信する（S1090）。その場合マネージャプログラム８１０は、S1100において”ＮＯ”に進み、S1030からの処理を繰り返す。そしてリソースデータベース６１０に記載された別のリソースの割り当てを行う。
【００４７】
マネージャプログラム８１０は、各スケジューラプログラム８２０からリソースの割り当てが成功した旨の情報を受信すると、管理コンピュータ制御プログラム８３０に対して、リソースの割り当てが成功した旨の情報を送信する（S1130）。
【００４８】
そうすると管理コンピュータ制御プログラム８３０は、カレンダデータベース６２０を参照し、アプリケーションプログラム８００の実行開始時刻になったら、情報処理システム１１０の各リソースに対して、アプリケーションプログラム８００の実行要求コマンドを送信する（S1140）。
【００４９】
アプリケーションプログラム８００の実行が終了し（S1150）、サーバ７００から実行完了通知が送信されてくると（S1160）、管理コンピュータ２００はマネージャプログラム８１０にアプリケーションプログラム８００の実行が終了した旨の情報を送信する（S1170）。そうするとマネージャプログラム８１０がスケジューラプログラム８２０に対してリソースの開放要求を送信し（S1200）、スケジューラプログラム８２０によりリソースが開放される（S1210）。なおリソースの開放とは、リソースを他のアプリケーションプログラム８００に使用可能な状態にすることを言う。
【００５０】
一方管理コンピュータ制御プログラム８３０は、ＡＰ履歴データベース６００に、リソースの使用履歴を記録する（S1180）。さらに管理コンピュータ制御プログラム８３０は、エンドユーザデータベース６４０に、アプリケーションプログラム８００を実行したエンドユーザに関する情報を記録する（S1190）。そしてクライアントシステム３００にアプリケーションプログラム８００の実行結果を送信して処理を終了する。なお、クライアントシステム３００へのアプリケーションプログラム８００の実行結果の送信は、アプリケーションプログラム８００を実行したサーバ７００が行うようにすることもできる。
【００５１】
ところでS1040において、ＡＰ属性データベース６００に記載された条件に適合するリソースの割り当てを行うことができなかった場合には、もはや情報処理システム１１０の内部にはアプリケーションプログラム８００を実行する際に使用可能なリソースがないことになる。この場合マネージャプログラム８１０は、S1040において”ＮＯ”に進む。そして他の情報処理システム１１０の管理コンピュータ２００に対して各リソースの割り当てを要求する（S1060）。つまりアプリケーションプログラム８００を他の情報処理システム１１０に実行させるためのコマンドを他の情報処理システム１１０の管理コンピュータ２００に送信する。そして他の情報処理システム１１０の管理コンピュータ２００から、リソースを選出することができた旨の情報を受信すると、S1100において”ＹＥＳ”に進む。そして、マネージャプログラム８１０は、管理コンピュータ制御プログラム８３０に対して、リソースの割り当てが成功した旨の情報を送信する（S1130）。そして管理コンピュータ制御プログラム８３０は、カレンダデータベース６２０を参照し、アプリケーションプログラム８００の実行開始時刻になったら、他の情報処理システム１１０の各リソースに対して、アプリケーションプログラム８００の実行要求コマンドを送信する（S1140）。
【００５２】
このように本実施の形態に係る情報処理システム１１０においては、情報処理システム１１０内部に割り当てるリソースがない場合には、他の情報処理システム１１０に対してリソースの割り当てを行うことができる。これにより、リソース不足によるアプリケーションプログラム８００の実行不能を回避することができると共に、各情報処理システム１１０が備えるリソースの稼働率を上げることができる。
【００５３】
さらに、アプリケーションプログラム８００が、複数のプログラムから構成されている場合には、各プログラム単位に異なる情報処理システム１１０のリソースを用いて、アプリケーションプログラム８００全体としての実行が行われるようにすることもできる。
【００５４】
例えば、図１０に示すように、アプリケーションプログラムＡＰ１（８００）が、計算処理を行うプログラムＡＰ１１と、データベース処理を行うプログラムＡＰ１２と、通信処理を行うプログラムＡＰ１３とから構成されている場合において、図１１に示すように、ＡＰ１１についてはセンタ２（１００）の情報処理システム３（１１０）においてＯＳ１（８５０）の制御の下に実行され、ＡＰ１２についてはセンタ３（１００）の情報処理システム５（１１０）においてＯＳ２（８５０）の制御の下に実行され、ＡＰ１３についてはセンタ１（１００）の情報処理システム１（１１０）においてＯＳ３（８５０）の制御の下に実行される様にすることができる。
【００５５】
このようにすることにより、より柔軟にアプリケーションプログラム８００へのリソースの割り当てを行うことが可能となり、よりきめ細やかにリソース割り当て制御を行うことが可能となる。そして各リソースの稼働率をより向上させることも可能となる。
【００５６】
さらにまた、S1070において各スケジューラプログラム８２０がリソースの割り当てを行う際に、ＡＰ履歴データベース６３０に記載された情報やエンドユーザデータベース６４０に記載された情報を参照することにより、マネージャプログラム８１０から指示されたリソースとは異なるリソースを割り当てるようにすることも可能である。例えば、過去に同じエンドユーザから同じアプリケーションプログラム８００の実行要求を受けたことがある場合には、そのときに例えばアプリケーションプログラム実行中にリソースが不足したようなことがあれば、今回はより高性能なリソースやより大容量のリソースを割り当てるようにすることができる。このように、スケジューラプログラム８２０が、アプリケーションプログラム８００に割り当てるリソースを補正するようにすることにより、より適切なリソースの割り当てを行うことも可能となる。
【００５７】
以上本実施の形態について詳細に説明したが、本実施の形態によれば、アプリケーションプログラム８００の実行要求があったときに、アプリケーションプログラム８００を実行するためのリソースをダイナミックに割り当てることが可能となる。これにより各リソースが必要な時に必要な分だけ使用される様にすることができる。このため各リソースの稼働率を向上させることが可能となる。
【００５８】
また、情報処理システム１１０内部に割り当てるリソースがない場合には、他の情報処理システム１１０に対してリソースの割り当てを行うことができる。これにより、リソース不足によるアプリケーションプログラム８００の実行不能を回避することができると共に、各情報処理システム１１０が備える各リソースの稼働率をより上げることができる。
【００５９】
さらに、アプリケーションプログラム８００に割り当てた各リソースの割り当て情報から利用履歴を取得することにより、各リソースの稼働状況の把握の容易化と、エンドユーザに対する課金の容易化を実現することも可能となる。
【００６０】
以上発明を実施するための最良の形態について説明したが、上記実施の形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得ると共に、本発明にはその等価物も含まれる。
【図面の簡単な説明】
【００６１】
【図１】本実施の形態に係るコンピュータシステムの全体構成を示す図である。
【図２】本実施の形態に係るセンタの構成を示す図である。
【図３】本実施の形態に係る情報処理システムの構成を示す図である。
【図４】本実施の形態に係る処理の流れを示すフローチャートである。
【図５】本実施の形態に係るＡＰ属性データベースを示す図である。
【図６】本実施の形態に係るリソースデータベースを示す図である。
【図７】本実施の形態に係るカレンダデータベースを示す図である。
【図８】本実施の形態に係るＡＰ履歴データベースを示す図である。
【図９】本実施の形態に係るエンドユーザデータベースを示す図である。
【図１０】本実施の形態に係るアプリケーションプログラムが複数のプログラムから構成される場合の様子を示す図である。
【図１１】本実施の形態に係るアプリケーションプログラムが複数の情報処理システムにおいて実行される様子を示す図である。
【符号の説明】
【００６２】
１００    センタ
１１０    情報処理システム
２００    管理コンピュータ
３００    クライアントシステム
４００    ネットワーク
５００    基本ソフトウェア環境
５１０    ハードウェア環境
６００    ＡＰ属性データベース
６１０    リソースデータベース
６２０    カレンダデータベース
６３０    ＡＰ履歴データベース
６４０    エンドユーザデータベース
７００    サーバ
７１０    ストレージ
８００    アプリケーションプログラム
８１０    マネージャプログラム
８２０    スケジューラプログラム
８３０    管理コンピュータ制御プログラム
８４０    ミドルソフト
８５０    オペレーティングシステム
【図１】
2006163482.tif 000003
【図２】
2006163482.tif 000004
【図３】
2006163482.tif 000005
【図４】
2006163482.tif 000006
【図５】
2006163482.tif 000007
【図６】
2006163482.tif 000008
【図７】
2006163482.tif 000009
【図８】
2006163482.tif 000010
【図９】
2006163482.tif 000011
【図１０】
2006163482.tif 000012
【図１１】
2006163482.tif 000013