(57)【要約】【課題】  複数の情報処理装置のうちアプリケーションのデータ処理に適した装置を選択し、その装置にて処理を実施する。【解決手段】  情報処理装置は、クライアント装置に接続され、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置およびクライアント装置から取得した各処理能力に関する情報とに基づいて、クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備える。【選択図】      図２
2011180816.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置に接続され、
アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、前記クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、
前記処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段と
を備えた情報処理装置。
【請求項２】
前記処理装置判定手段は、自装置および前記クライアント装置のうち、前記処理能力情報に定められた処理能力が高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記制御手段は、前記処理装置判定手段により、前記アプリケーションのデータ処理を、自装置にて実施すると判定された場合は、該アプリケーションのデータ処理を実施し、前記クライアント装置にて実施すると判定された場合は、前記クライアント装置に対して処理前の前記アプリケーションのデータを送信することを特徴とする請求項１または２記載の情報処理装置。
【請求項４】
前記処理能力情報は、アプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、いずれの装置にて前記処理を実施するかを定めた処理装置情報をさらに含み、
前記処理装置判定手段は、前記指定されたアプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、前記処理装置情報に基づいていずれの装置にて実施するかを判定することを特徴とする請求項１ないし３のいずれか1項記載の情報処理装置。
【請求項５】
前記処理装置判定手段は、前記指定されたアプリケーションが、前記処理能力情報に定められていない場合は、自装置および前記クライアント装置のうち所定の処理能力の高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする請求項１ないし４のいずれか１項記載の情報処理装置。
【請求項６】
前記所定の処理能力は、演算処理能力であることを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記所定の処理能力は、グラフィック処理能力であることを特徴とする請求項５記載の情報処理装置。
【請求項８】
クライアント装置と、
前記クライアント装置と接続され、
アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、前記クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、
前記処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備えた情報処理装置と
備えた情報処理システム。
【請求項９】
アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、接続されるクライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定し、
前記判定結果に基づいて、アプリケーションのデータ処理の実施を制御する
ことを備えた情報処理方法。
【請求項１０】
請求項９に記載された情報処理方法をコンピュータにより実現するための、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、情報処理方法および情報処理プログラムに関するものである。
【背景技術】
【０００２】
近年、情報保護の観点から、シンクライアントシステムが注目されている。シンクライアントシステムでは、主な処理をサーバ装置が行い、その処理結果がシンクライアントに送信される。シンクライアントは、サーバ装置から取得した処理結果の表示を行う。また、シンクライアントは、サーバ装置への入力装置として使用される。このようなシンクライアントシステムでは、重要な情報はサーバ装置のみに保存し、シンクライアントには保存しないように構成できるので、シンクライアントが携帯されたとしても置き忘れ等による情報漏えいを防ぐことができるといった利点がある。
【０００３】
一方、クライアントとして、年々高性能を有する装置が製造および出荷されている。しかしながら、上述したような通常のシンクライアントシステムでは、アプリケーション実行の際にクライアントのリソースを使用しないので、クライアントの高度な処理能力を十分に活用できていないという問題がある。クライアントのリソースとして、例えばＣＰＵ（Central Processing Unit）リソースやＧＰＵ（Graphics Processing Unit）リソースがある。
【０００４】
特に、近年は、高いＧＰＵ能力を必要とするゲームやエンコーダソフトウエア等が増えているため、ＣＰＵ能力だけでなくＧＰＵ能力も考慮してアプリケーションを実行する装置を決定することは、システム全体の処理効率を上げるために重要である。
【０００５】
例えば、特許文献１には、サーバがＯＳ（Operating System）からＣＰＵ使用率を取得し、ＣＰＵ使用率が設定値以上であれば、クライアントノードとサーバーノードとの間で処理を実行するノードを切り替える分散処理システムが開示されている。
【０００６】
しかしながら、上記特許文献１に記載の発明では、予め決められた設定値とサーバの処理能力とを比較しており、クライアントの処理能力は考慮されていない。したがって、クライアントの処理能力に応じたフレキシブルな切り替え動作ができないという問題がある。
【０００７】
これに対して、特許文献２には、ネットワークを介して接続されるサーバとクライアントとの間で負荷分散を行う分散処理システムが開示されている。サーバが備える負荷分散モジュールは、サーバ能力データとクライアント能力データを読込み、これらのデータを比較する。サーバ能力データがクライアント能力データよりも大きい場合、すなわちサーバの処理能力のほうがクライアントの処理能力よりも高い場合には、負荷分散モジュールは、サーバにて処理するモジュールを増やす。
【０００８】
また、特許文献３には、サーバの負荷分散制御部がアプリケーションプログラム毎の負荷レベル情報に基づいて負荷分散処理を行う負荷分散処理装置が開示されている。この装置は、アプリケーションプログラムの実行毎にサーバの負荷情報を取得し、その負荷情報に応じてアプリケーションを実行するサーバを決定する。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平１１−０５３３２６号公報
【特許文献２】特開２００３−０５８５１９号公報
【特許文献３】特開２００１−１６７０７４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上述した特許文献２に記載の発明では、負荷分散モジュールが、サーバとクライアントの処理能力を比較し、処理能力が高い装置がより多くの処理を実行するように複数の処理を分配している。このように、このシステムはサーバまたはクライアントの処理能力に応じて複数の処理を分配しているので、その処理の実行に適した装置がその実行に当たるとは限らない。すなわち、サーバとクライアントのそれぞれのトータルの処理能力が高い方が処理の実行に当たるので、例えばＧＰＵ能力を多く要する処理をＧＰＵ能力が高い装置で実行するというように、処理の性質によって実行装置を決定するといったことができないという課題がある。
【００１１】
また、特許文献３に記載の発明には、複数のサーバの負荷を考慮して分散処理を行うことが開示されるが、クライアントの負荷を考慮して分散処理を行うことは開示されていない。
【００１２】
本願発明は、上記課題を鑑みてなされたものであり、複数の情報処理装置のうち、アプリケーションのデータ処理に適した装置を選択し、その装置にて処理を実施する情報処理装置、情報処理システム、情報処理方法および情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明に係る情報処理装置は、クライアント装置に接続され、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置およびクライアント装置から取得した各処理能力に関する情報とに基づいて、クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備える。
【００１４】
本発明に係る情報処理システムは、クライアント装置と、クライアント装置と接続され、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備えた情報処理装置とを備える。
【００１５】
本発明に係る情報処理方法は、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置およびクライアント装置から取得した各処理能力に関する情報とに基づいて、接続されるクライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定し、判定結果に基づいて、アプリケーションのデータ処理の実施を制御する。
【００１６】
本発明に係る情報処理プログラムは、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置およびクライアント装置から取得した各処理能力に関する情報とに基づいて、接続されるクライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理と、判定結果に基づいて、アプリケーションのデータ処理の実施を制御する処理とを、コンピュータに実行させる。
【発明の効果】
【００１７】
本発明によれば、複数の情報処理装置のうち、アプリケーションのデータ処理に適した装置を選択し、その装置にて処理を実施することができるという効果が得られる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態に係る情報処理システムの動作の概要を説明する図である。
【図２】本発明の第１の実施形態に係る情報処理システムの構成を示すブロック図である。
【図３】アプリケーションテーブルの例を示す図である。
【図４】本発明の第１実施形態に係る情報処理システムの第１の動作を示すタイミングチャートである。
【図５】本発明の第１実施形態に係る情報処理システムの第２の動作を示すタイミングチャートである。
【図６】本発明の第２実施形態に係る情報処理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１９】
第１実施形態
次に、本発明の実施形態について図面を参照して詳細に説明する。
【００２０】
図１は、本発明の第１の実施形態に係る情報処理システム１０の動作の概要を説明する図である。情報処理システム１０は、ネットワークを介して接続されたクライアント２０とサーバ３０とを備える。本実施形態では、クライアント２０およびサーバ３０のいずれか一方がアプリケーションのデータ処理を実施する。サーバ３０がアプリケーションのデータ処理を実施する状態を装置状態１、クライアント２０がアプリケーションのデータ処理を実施する状態を装置状態２と称する。
【００２１】
図１（ａ）は装置状態１を示し、図１（ｂ）は装置状態２をそれぞれ示す。以下に、各装置状態におけるクライアント２０とサーバ３０の動作について説明する。
【００２２】
装置状態１では、まず、クライアント２０のキーボードまたはマウスのような入力手段から、サーバ３０に対して指示が送信される。サーバ３０は、上記指示に応答して、アプリケーションのデータ処理を実施する。そして、サーバ３０は、処理後の画面イメージデータをクライアント２０に送信する。クライアント２０は、受信した画面イメージを出力手段に表示する。
【００２３】
一方、装置状態２では、クライアント２０からサーバ３０に対して送信された指示に応答して、サーバ３０は処理前のアプリケーションデータをクライアント２０に送信する。クライアント２０は、受信したアプリケーションデータの処理を実施し、処理後の画面イメージを出力手段に表示する。
【００２４】
以下、情報処理システム１０の構成および動作について具体的に説明する。
【００２５】
図２は、本発明の第１の実施形態に係る情報処理システムの構成を示すブロック図である。図２に示すように、クライアント２０は、制御手段２１、送受信手段２２、アプリケーション処理手段２３、入力手段２４、出力手段２５、処理能力算出手段２６およびリソース監視手段２７を備える。
【００２６】
サーバ３０は、制御手段３１、送受信手段３２、アプリケーション処理手段３３、アプリケーションデータ記憶手段３４、処理装置判定手段３５、処理能力算出手段３６、リソース監視手段３７およびアプリケーションテーブル記憶手段３８を備える。
【００２７】
制御手段２１、３１は、それぞれクライアント２０、サーバ３０の各構成要素を制御する。送受信手段２２、３２は、ネットワークを介して互いにデータの送受信を行う。入力手段２４、出力手段２５は、それぞれユーザからの入力を受け付ける手段、ユーザへのデータの出力を行う手段である。アプリケーション処理手段２３は、サーバ３０から送信されたアプリケーションデータの処理を実施する。リソース監視手段２７、３７は、それぞれクライアント２０、サーバ３０のＣＰＵおよびＧＰＵの使用率を監視する。処理能力算出手段２６、３６は、それぞれリソース監視手段２７、３７からのデータに基づいてクライアント２０、サーバ３０のＣＰＵ能力、ＧＰＵ能力を算出する。
【００２８】
サーバ３０のアプリケーションデータ記憶手段３４は、アプリケーションを実行するためのアプリケーションデータおよびユーザデータを記憶する。アプリケーション処理手段３３は、アプリケーションデータ記憶手段３４のアプリケーションデータおよびユーザデータを使用してアプリケーションのデータ処理を実施する。
【００２９】
アプリケーションテーブル記憶手段３８は、アプリケーションのデータ処理に関わる情報を規定したアプリケーションテーブルを格納する。図３は、アプリケーションテーブルの例を示す図である。ここで、アプリケーションテーブルについて説明する。図３に示すように、アプリケーションテーブルは、アプリケーション名、必要能力、処理装置の各項目を有する。「アプリケーション名」には、実施されるアプリケーションの名称が記載される。
【００３０】
「必要能力」には、「アプリケーション名」に記載されたアプリケーションのデータ処理のために主に必要とされる処理能力の種類が記載される。主に必要とされる処理能力の種類とは、そのアプリケーションのデータ処理を実施するにあたり、他の能力よりも多く必要とされる能力の種類である。例えば、３Ｄゲームのように高いＧＰＵ能力を要するアプリケーションについては、「必要能力」に「ＧＰＵ」と記載されてもよい。また、動画再生のように高解像度を要するアプリケーションや動画のエンコードを行うアプリケーションなどのように高いＣＰＵ能力を要するアプリケーションについては、「必要能力」に「ＣＰＵ」と記載されてもよい。また、「必要能力」には複数の処理能力の種類が記載されてもよい。例えば、ビデオのエンコード処理等を行うアプリケーションについては、ＣＰＵ能力とＧＰＵ能力のトータルの高い処理能力を必要とするので、「必要能力」に「ＣＰＵ＋ＧＰＵ」と記載されてもよい。
【００３１】
「処理装置」には、「必要能力」に定められた処理能力の値が、クライアント２０とサーバ３０との間で同一である場合に、そのアプリケーションのデータ処理を実施する装置が記載される。ユーザは、情報処理システム１０全体の負荷を考慮して、「処理装置」を登録する。上記のように、ユーザは予めアプリケーションテーブルを規定しておく。
【００３２】
処理装置判定手段３５は、アプリケーションテーブル、およびクライアント２０とサーバ３０の処理能力に基づいて、アプリケーションのデータ処理を実施する装置を判定する。アプリケーション処理手段３３は、アプリケーションデータ記憶手段３４に格納されるデータに基づいて、アプリケーションのデータの処理を実施する。
【００３３】
次に、情報処理システム１０の動作について説明する。
【００３４】
図４は、情報処理システム１０の第１の動作を示すタイミングチャートである。図２と図４を参照して、情報処理システム１０の第１の動作について説明する。ここでは、アプリケーションテーブル記憶手段３８に、図３に示したアプリケーションテーブルが格納されているとする。
【００３５】
クライアント２０とサーバ３０は、図１に示した装置状態１の状態であるとする。すなわち、サーバ３０は、アプリケーション処理手段３３においてアプリケーションデータの処理を実施し、処理結果、すなわち画面データをクライアント２０に送信する（ステップＳＴ１０１）。クライアント２０は、入力手段２４を介してユーザから入力された入力情報をサーバ３０に送信する（ステップＳＴ１０２）。以上の装置状態１にてクライアント２０とサーバ３０は動作している。
【００３６】
続いて、ユーザから「アプリケーション１」の起動指示がクライアント２０の入力手段２４に入力されたとする。制御手段２１は、アプリケーション１の起動指示を受け取り、送受信手段２２を介してサーバ３０に送信する（ステップＳＴ１０３）。サーバ３０の送受信手段３２は、上記指示を受信し、制御手段３１に通知する。制御手段３１は、上記指示を処理装置判定手段３５に通知する。処理装置判定手段３５は、上記指示に応答して、アプリケーション１のデータ処理を実施する装置を判定する。
【００３７】
まず、処理装置判定手段３５は、アプリケーションテーブルを参照し、アプリケーション１のデータ処理に関わる情報を読み出す（ステップＳＴ１０４）。ここでは、図３に示すように、アプリケーション１のデータ処理の主な「必要能力」の種類は「ＣＰＵ」であり、処理能力がサーバ３０とクライアント２０とで同一である場合の「処理装置」は「クライアント」であることが読み出される。
【００３８】
次に、処理装置判定手段３５は、必要とされる主な処理能力の種類がＣＰＵ能力であるとの前提の下で、クライアント２０とサーバ３０の処理能力とに応じて、いずれの装置にてアプリケーション１のデータ処理を実施するかを判定する。
【００３９】
処理装置判定手段３５は、制御手段３１に対してクライアント２０とサーバ３０の処理能力に関する調査を指示する。制御手段３１は、上記指示に応答して、サーバ３０の処理能力がどのぐらいあるかを調査する（ステップＳＴ１０５）。すなわち、制御手段３１は、処理能力算出手段３６に対して処理能力の算出を要求する。処理能力算出手段３６は、上記要求に応答して、リソース監視手段３７からリソースに関する情報を取得する。リソース監視手段３７は、サーバ３０のリソースとしてＣＰＵ使用率とＧＰＵ使用率を監視している。処理能力算出手段３６は、取得したＣＰＵ使用率とＧＰＵ使用率に基づいて、サーバ３０の処理能力を算出し、制御手段３１に通知する。
【００４０】
制御手段３１はまた、送受信手段３２を介してクライアント２０に処理能力に関する調査を指示する（ステップＳＴ１０６）。クライアント２０の送受信手段２２は、上記指示を受信すると、それを制御手段２１に通知する。制御手段２１は、上記指示に応答して、処理能力算出手段２６に処理能力の算出を要求する。処理能力算出手段２６は、上記要求に応答して、リソース監視手段２７からリソースに関する情報を取得する。リソース監視手段２７は、クライアント２０のリソースとしてＣＰＵ使用率とＧＰＵ使用率を監視している。処理能力算出手段２６は、取得したＣＰＵ使用率とＧＰＵ使用率に基づいて、クライアント２０の処理能力を算出し、制御手段２１に通知する。
【００４１】
制御手段２１は、受け取ったクライアント２０の処理能力を、送受信手段２２を介してサーバ３０に送信する（ステップＳＴ１０７）。サーバ３０の送受信手段３２はクライアント２０の処理能力を受信し、それを制御手段３１を介して処理装置判定手段３５に通知する。
【００４２】
処理装置判定手段３５は、ステップＳＴ１０４にて読み出した、必要とされる主な処理能力の種類と、ステップＳＴ１０５およびステップＳＴ１０７にて取得したサーバ３０とクライアント２０のＣＰＵ能力とＧＰＵ能力とに基づいて、アプリケーション１のデータ処理をいずれの装置にて実施するかを判定する（ステップＳＴ１０８）。ここでは、アプリケーション１の主な必要能力の種類であるＣＰＵの能力は、クライアント２０の方がサーバ３０よりも高いとする。このとき、処理装置判定手段３５は、アプリケーション１のデータ処理をクライアント２０にて実施すると判定する。そして、処理装置判定手段３５は、その旨を制御手段３１に通知する。制御手段３１は、上記通知に応答して、アプリケーション処理手段３３に、アプリケーション１０のデータおよびユーザデータをアプリケーションデータ記憶手段３４から読み出すように指示する。制御手段３１は、上記データをアプリケーション処理手段３３から受け取ると、送受信手段３２を介してクライアント２０に送信する（ステップＳＴ１０９）。ここで送信されるデータは、処理前のアプリケーション１０のデータである。
【００４３】
クライアント２０の送受信手段２２は、受信した上記データを制御手段２１に通知する。制御手段２１は、受け取ったデータをアプリケーション処理手段２３に通知する。アプリケーション処理手段２３は、受け取ったデータの処理を実施する（ステップＳＴ１１０）。アプリケーション処理手段２３は、処理結果、すなわち画面データを制御手段２１に通知する。制御手段２１は、受け取った画面データを出力手段２５に表示させる（ステップＳＴ１１１）。
【００４４】
以上が、情報処理システム１０の第１の動作である。このように、クライアント２０から指定されたアプリケーションのデータ処理を、処理装置判定手段３５がクライアント２０にて処理すると判定した場合、情報処理システム１０は、ステップＳＴ１０１とステップ１０２の装置状態１からステップＳＴ１１０とステップＳＴ１１１の装置状態２に、装置状態を切り替えて動作を実施する。
【００４５】
なお、ステップＳＴ１０５とステップＳＴ１０７において、処理装置判定手段３５は、サーバ３０とクライアント２０の処理能力としてＣＰＵ能力とＧＰＵ能力の両方を取得しているが、アプリケーションテーブルに「必要能力」の種類として定められている能力のみを取得してもよい。そして、処理装置判定手段３５は、取得した能力を比較することによって、データ処理を実施する装置を判定してもよい。
【００４６】
次に、情報処理システム１０の第２の動作について説明する。図５は、情報処理システム１０の第２の動作を示すタイミングチャートである。第２の動作は、ユーザがクライアント２０に対して「アプリケーション２」の起動指示を入力した場合の動作である。図５を参照して、情報処理システム１０の第２の動作について説明する。
【００４７】
図５のステップＳＴ１１２に示すように、クライアント２０はサーバ３０に、アプリケーション２の起動指示を送信する（ステップＳＴ１１２）。サーバ３０の送受信手段３２は、上記指示を受信し、制御手段３１に通知する。制御手段３１は、上記指示を処理装置判定手段３５に通知する。処理装置判定手段３５は、上記指示に応答して、アプリケーション２のデータ処理を実施する装置を判定する。処理装置判定手段３５は、第１の動作と同様に、まず、アプリケーションテーブルを参照し、アプリケーション２のデータ処理に関わる情報を読み出す（ステップＳＴ１１３）。ここでは、図３に示すように、アプリケーション２のデータ処理の主な「必要能力」の種類は「ＣＰＵ＋ＧＰＵ」であり、必要能力がサーバ３０とクライアント２０とで同一である場合の「処理装置」は「サーバ」であることが読み出される。
【００４８】
続いて処理装置判定手段３５は、必要とされる主な処理能力がＣＰＵとＧＰＵであるとの前提の下で、クライアント２０およびサーバ３０の処理能力とに応じて、いずれの装置にてアプリケーション２のデータ処理を実施するかを判定する。
【００４９】
処理装置判定手段３５は、サーバ３０の処理能力とクライアント２０の処理能力に関する調査を、ステップＳＴ１１４からステップＳＴ１１６の手順にて実施する。これらの処理は、図４のステップＳＴ１０５からステップＳＴ１０７の処理と同様であるため、その説明を省略する。
【００５０】
処理装置判定手段３５は、ステップＳＴ１１３にて読み出した必要能力の種類と、ステップＳＴ１１４およびステップＳＴ１１６にて取得したサーバ３０とクライアント２０のＣＰＵ能力とＧＰＵ能力とに基づいて、アプリケーション２のデータ処理をいずれの装置にて実施するかを判定する（ステップＳＴ１１７）。ここでは、ＣＰＵ能力とＧＰＵ能力のトータルの能力は、サーバ３０の方がクライアント２０よりも高いとする。このとき、処理装置判定手段３５は、アプリケーション２のデータ処理をサーバ３０にて実施すると判定する。処理装置判定手段３５は、その旨を制御手段３１に通知する。制御手段３１は、上記通知に応答して、アプリケーション処理手段３３に、アプリケーション２のデータ処理の実施を指示する。
【００５１】
アプリケーション処理手段３３は、上記指示に応答して、アプリケーションデータ記憶手段３４に記憶されるアプリケーション２のデータ処理を実施する（ステップＳＴ１１８）。アプリケーション処理手段３３は、処理結果、すなわち画面データを制御手段３１に返す。制御手段３１は、受け取った画面データを送受信手段３２を介して、クライアント２０に送信する（ステップＳＴ１１９）。クライアント２０の送受信手段２２は、画面データを受信し、それを制御手段２１に通知する。制御手段２１は、受け取った画面データを出力手段２５に表示させる（ステップＳＴ１２０）。
【００５２】
以上が、情報処理システム１０の第２の動作である。このように、処理装置判定手段３５が、指定されたアプリケーションのデータ処理をサーバ３０にて実施すると判定した場合、情報処理システム１０は、ステップＳＴ１０１からステップ１２０まで、装置状態１にて動作する。
【００５３】
次に、情報処理システム１０の第３の動作について説明する。第３の動作は、ユーザがクライアント２０に対して「アプリケーション４」の起動指示を入力した場合の動作である。図３に示すように、アプリケーション４のデータ処理には、主にＧＰＵ能力が必要とされる。ここでは、ＧＰＵの処理能力の値が、サーバ３０とクライアント２０との間で同一である場合について、図５の「アプリケーション２」を「アプリケーション４」に読み替えて、図５を参照して説明する。
【００５４】
サーバ３０は、クライアント２０からアプリケーション４の起動指示を受信したとする。処理装置判定手段３５は、第２の動作と同様に、アプリケーションテーブルを参照し、アプリケーション４のデータ処理に関わる情報を読み出す（ステップＳＴ１１３）。ここでは、図３に示すように、アプリケーション４のデータ処理の主な「必要能力」の種類は「ＧＰＵ」であり、必要能力がサーバ３０とクライアント２０とで同一である場合の「処理装置」は「サーバ」であることが読み出される。
【００５５】
続いて、図５のステップＳＴ１１４からステップＳＴ１１６に示したように、処理装置判定手段３５は、サーバ３０の処理能力とクライアント２０の処理能力に関する調査を実施する。そして、処理装置判定手段３５は、ステップＳＴ１１３にて読み出した必要能力の種類と、ステップＳＴ１１４およびステップＳＴ１１６にて取得したサーバ３０とクライアント２０のＣＰＵ能力とＧＰＵ能力とに基づいて、アプリケーション４のデータ処理をいずれの装置にて実施するかを判定する（ステップＳＴ１１７）。
【００５６】
ここでは、クライアント２０のＧＰＵ能力とサーバ３０のＧＰＵ能力が同一であるとする。このとき、処理装置判定手段３５は、ステップＳＴ１１３にて読み出した「処理装置」、すなわちサーバ３０にてデータ処理を実施すると判定する。そして、処理装置判定手段３５は、その旨を制御手段３１に通知する。制御手段３１は、上記通知に応答して、アプリケーション処理手段３３に、アプリケーション４のデータ処理の実施を指示する。以降、サーバ３０とクライアント２０は、ステップＳＴ１１８からステップＳＴ１２０まで、第２の動作と同様の動作を実施する。
【００５７】
以上が、情報処理システム１０の第３の動作である。このように、アプリケーションテーブルに規定される種類の処理能力の値が、クライアント２０とサーバ３０との間で同一であった場合、処理装置判定手段３５は、アプリケーションテーブルに規定される「処理装置」にてデータ処理を実施するように判定する。
【００５８】
次に、情報処理システム１０の第４の動作について説明する。第４の動作は、ユーザがクライアント２０に対して「アプリケーション１０」の起動指示を入力した場合の動作である。図５の「アプリケーション２」を「アプリケーション１０」に読み替えて、図５を参照して第４の動作について説明する。
【００５９】
第３の動作と同様に、処理装置判定手段３５は、図５のステップＳＴ１１３にてアプリケーションテーブルを参照し、アプリケーション１０のデータ処理に関わる情報を読み出す。図３に示すように、アプリケーション１０はアプリケーションテーブルに規定されていない。ここで、処理装置判定手段３５は、アプリケーションテーブルに規定されていないアプリケーションの起動指示を受けた場合は、いずれの装置にてデータ処理を実施するかを予め規定されている。ここでは、例えばＣＰＵ能力の高い装置にてデータ処理を実施するように予め規定されているとする。
【００６０】
サーバ３０の処理装置判定手段３５は、ステップＳＴ１１４からステップＳＴ１１６の手順により、サーバ３０とクライアント２０のＣＰＵ能力、ＧＰＵ能力を取得する。上述したように、アプリケーション１０はアプリケーションテーブルに規定されておらず、かつ、処理装置判定手段３５はアプリケーションテーブルに規定されていないアプリケーションのデータ処理はＣＰＵ能力の高い装置にて実施すると規定されている。よって、処理装置判定手段３５は、ステップＳＴ１１７にて、サーバ３０とクライアント２０のＣＰＵ能力を比較し、それが高い装置にてデータ処理の実施を行うように判断する。サーバ３０のＣＰＵ能力の方がクライアント２０のＣＰＵ能力よりも高い場合、処理装置判定手段３５はサーバ３０にてデータ処理の実施を行うように判断する。そして、サーバ３０とクライアント２０は、ステップＳＴ１１８からステップＳＴ１２０の処理を実施する。一方、クライアント２０のＣＰＵ能力の方がサーバ３０のＣＰＵ能力よりも高い場合、処理装置判定手段３５はクライアント２０にてデータ処理の実施を行うように判断する。そして、サーバ３０とクライアント２０は、図４のステップＳＴ１０９からステップＳＴ１１１に示した処理を行う。
【００６１】
以上が、情報処理システム１０の第４の動作である。このように、指定されたアプリケーションがアプリケーションテーブルに規定されない場合、処理装置判定手段３５は、予め定められた処理能力が高い装置にてデータ処理を実施するように判定する。
【００６２】
以上のように、この実施形態によれば、サーバ３０は、アプリケーションのデータ処理に主に必要とされる処理能力の種類と、その処理能力の値がサーバ３０とクライアント２０との間で同一である場合にデータ処理を実施する処理装置とを定めたアプリケーションテーブルを備える。サーバ３０は、クライアント２０からアプリケーションの起動指示を受けると、処理装置判定手段３５においてアプリケーションテーブルを参照する。また処理装置判定手段３５は、クライアント２０とサーバ３０のＣＰＵ能力およびＧＰＵ能力を取得する。そして、処理装置判定手段３５は、アプリケーションテーブルに定められた種類の処理能力が高い装置にて、アプリケーションのデータ処理を実施するよう判定する。また、処理装置判定手段３５は、アプリケーションテーブルに定められた種類の処理能力の値がサーバ３０とクライアント２０との間で同一である場合は、アプリケーションテーブルに定められた処理装置にてデータ処理を実施するよう判定する。この構成により、情報処理システム１０は、アプリケーションの起動ごとにそのアプリケーションのデータ処理に適した装置を判定し、その装置にて処理を実施することができるという効果が得られる。
【００６３】
第２の実施形態
図６は、本発明の第２実施形態に係る情報処理システム４０の構成を示すブロック図である。情報処理装置４０は、クライアント装置に接続される。図６に示すように、情報処理装置４０は、処理装置判定手段４１、制御手段４２を備える。処理装置判定手段４１は、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置およびクライアント装置から取得した各処理能力に関する情報とに基づいて、クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する。制御手段４２は、処理装置判定手段４１による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する。
【００６４】
以上のように、第２の実施形態によれば、情報処理装置４０は上記構成を有するので、複数の情報処理装置のうちアプリケーションのデータ処理に適した装置を選択し、その装置にて処理を実施することができるという効果が得られる。
【産業上の利用可能性】
【００６５】
本発明は、互いに接続されるサーバとクライアントを備えたシステムに適用できる。
【００６６】
（付記１）クライアント装置に接続され、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、前記クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、前記処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備えた情報処理装置。
【００６７】
（付記２）前記処理装置判定手段は、自装置および前記クライアント装置のうち、前記処理能力情報に定められた処理能力が高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記１記載の情報処理装置。
【００６８】
（付記３）  前記制御手段は、前記処理装置判定手段により、前記アプリケーションのデータ処理を、自装置にて実施すると判定された場合は、該アプリケーションのデータ処理を実施し、前記クライアント装置にて実施すると判定された場合は、前記クライアント装置に対して処理前の前記アプリケーションのデータを送信することを特徴とする付記１または２記載の情報処理装置。
【００６９】
（付記４）  前記処理能力情報は、アプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、いずれの装置にて前記処理を実施するかを定めた処理装置情報をさらに含み、前記処理装置判定手段は、前記指定されたアプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、前記処理装置情報に基づいていずれの装置にて実施するかを判定することを特徴とする付記１ないし３のいずれか1項記載の情報処理装置。
【００７０】
（付記５）  前記処理装置判定手段は、前記指定されたアプリケーションが、前記処理能力情報に定められていない場合は、自装置および前記クライアント装置のうち所定の処理能力の高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記１ないし４のいずれか１項記載の情報処理装置。
【００７１】
（付記６）  前記所定の処理能力は、演算処理能力であることを特徴とする付記５記載の情報処理装置。
【００７２】
（付記７）  前記所定の処理能力は、グラフィック処理能力であることを特徴とする付記５記載の情報処理装置。
【００７３】
（付記８）  クライアント装置と、前記クライアント装置と接続され、アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、前記クライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定する処理装置判定手段と、前記処理装置判定手段による判定結果に基づいて、アプリケーションのデータ処理の実施を制御する制御手段とを備えた情報処理装置と備えた情報処理システム。
【００７４】
（付記９）  前記処理装置判定手段は、自装置および前記クライアント装置のうち、前記処理能力情報に定められた処理能力が高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記８記載の情報処理システム。
【００７５】
（付記１０）  前記制御手段は、前記処理装置判定手段により、前記アプリケーションのデータ処理を、自装置にて実施すると判定された場合は、該アプリケーションのデータ処理を実施し、前記クライアント装置にて実施すると判定された場合は、前記クライアント装置に対して処理前の前記アプリケーションのデータを送信することを特徴とする付記８または９記載の情報処理システム。
【００７６】
（付記１１）  前記処理能力情報は、アプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、いずれの装置にて前記処理を実施するかを定めた処理装置情報をさらに含み、前記処理装置判定手段は、前記指定されたアプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、前記処理装置情報に基づいていずれの装置にて実施するかを判定することを特徴とする付記８ないし１０のいずれか1項記載の情報処理システム。
【００７７】
（付記１２）  前記処理装置判定手段は、前記指定されたアプリケーションが、前記処理能力情報に定められていない場合は、自装置および前記クライアント装置のうち所定の処理能力の高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記８ないし１１のいずれか１項記載の情報処理システム。
【００７８】
（付記１３）  前記所定の処理能力は、演算処理能力であることを特徴とする付記１２記載の情報処理システム。
【００７９】
（付記１４）  前記所定の処理能力は、グラフィック処理能力であることを特徴とする付記１２記載の情報処理システム。
【００８０】
（付記１５）  アプリケーションのデータ処理に主に必要とされる処理能力の種類を定めた処理能力情報と、自装置および前記クライアント装置から取得した各処理能力に関する情報とに基づいて、接続されるクライアント装置により指定されたアプリケーションのデータ処理をいずれの装置にて実施するかを判定し、前記判定結果に基づいて、アプリケーションのデータ処理の実施を制御する
ことを備えた情報処理方法。
【００８１】
（付記１６）  自装置および前記クライアント装置のうち、前記処理能力情報に定められた処理能力が高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記１５記載の情報処理方法。
【００８２】
（付記１７）  前記アプリケーションのデータ処理を、自装置にて実施すると判定された場合は、該アプリケーションのデータ処理を実施し、前記クライアント装置にて実施すると判定された場合は、前記クライアント装置に対して処理前の前記アプリケーションのデータを送信することを特徴とする付記１５または１６記載の情報処理方法。
【００８３】
（付記１８）  前記処理能力情報は、アプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、いずれの装置にて前記処理を実施するかを定めた処理装置情報をさらに含み、前記指定されたアプリケーションのデータ処理に主に必要とされる処理能力の値が、自装置および前記クライアント装置との間で同一である場合に、前記処理装置情報に基づいていずれの装置にて実施するかを判定することを特徴とする付記１５ないし１７のいずれか１項記載の情報処理方法。
【００８４】
（付記１９）  前記指定されたアプリケーションが、前記処理能力情報に定められていない場合は、自装置および前記クライアント装置のうち所定の処理能力の高い装置にて、前記アプリケーションのデータ処理を実施すると判定することを特徴とする付記１５ないし１８のいずれか１項記載の情報処理方法。
【００８５】
（付記２０）  前記所定の処理能力は、演算処理能力であることを特徴とする付記１９記載の情報処理方法。
【００８６】
（付記２１）  前記所定の処理能力は、グラフィック処理能力であることを特徴とする付記１９記載の情報処理方法。
【００８７】
（付記２２）付記１５乃至２１の何れかに記載された情報処理方法をコンピュータにより実現するための、情報処理プログラム。
【符号の説明】
【００８８】
１０、４０  情報処理システム
２０  クライアント
２１、３１、４２  制御手段
２２、３２  送受信手段
２３、３３  アプリケーション処理手段
２４  入力手段
２５  出力手段
２６、３６  処理能力算出手段
２７、３７  リソース監視手段
３０  サーバ
３４  アプリケーションデータ記憶手段
３５、４１  処理装置判定手段
３８  アプリケーションテーブル記憶手段
【図１】
2011180816.tif 000003
【図２】
2011180816.tif 000004
【図３】
2011180816.tif 000005
【図４】
2011180816.tif 000006
【図５】
2011180816.tif 000007
【図６】
2011180816.tif 000008