(57)【要約】【課題】  システムで実行されているソフトウエアの状況に応じて必要かつ十分なパフォーマンス（適切な動作電圧及び動作周波数）でハードウエアを動作させ、情報処理装置の低消費電力化を計ること。【解決手段】所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報が組み込まれたソフトウエアが実行される情報処理装置（２０，３０）であって、起動されたソフトウエア５０から当該ソフトウエアのパフォーマンス値情報５２を受け取る手段と、受け取ったパフォーマンス値情報５２及びハードウエア情報２２に基づき、情報処理装置のパフォーマンスを決定するパフォーマンス決定手段４０と、決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段とを含む。【選択図】        図１
2005258662.tif 000002
【特許請求の範囲】
【請求項１】
所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報が組み込まれたソフトウエアが実行される情報処理装置であって、
起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段と、
を含むことを特徴とする情報処理装置。
【請求項２】
請求項１において、
前記パフォーマンス決定手段は、
受け取ったパフォーマンス値を、情報処理装置のハードウエア情報に基づき当該情報処理装置用のパフォーマンス値に補正して、補正後のパフォーマンス値を用いて情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする情報処理装置。
【請求項３】
請求項１乃至２のいずれかにおいて、
前記パフォーマンス決定手段は、
複数のソフトウエアが実行される場合には、複数のソフトウエアから受け取ったパフォーマンス値に基づき情報処理装置に必要なシステムパフォーマンス値を演算し、システムパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする情報処理装置。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記パフォーマンス決定手段は、
新たにソフトウエアが起動された場合又は現在実行中のソフトウエアからパフォーマンス値の変更にかかる情報を受け取った場合に、新たに起動されたソフトウエアからパフォーマンス値情報を受け取り、受け取ったパフォーマンス値と起動前のシステムパフォーマンス値に基づき起動後のシステムパフォーマンス値を求め、起動後のシステムパフォーマンス値に基づき、情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする情報処理装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記パフォーマンス決定手段は、
ソフトウエアの実行終了を検出した場合に、実行が終了したソフトウエアのパフォーマンス値と終了前の前記システムパフォーマンス値に基づき終了後のシステムパフォーマンス値を求め、終了後のシステムパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする情報処理装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記パフォーマンス決定手段は、
新たなソフトウエアの起動の指示を検出した場合に、新たなソフトウエア起動後のシステムパフォーマンス値を演算し、新たなソフトウエア起動後のシステムパフォーマンス値と、システムの最大可能パフォーマンス値とを比較する手段を含み、
比較結果に基づきに、新たなソフトウエアの起動の中止又は延期を情報処理装置に指示するために必要な処理を行う手段と、
を含むことを特徴とする情報処理装置。
【請求項７】
請求項１乃至６のいずれかに記載の情報処理装置と、
前記情報処理装置の処理対象となるデータの入力手段と、
前記情報処理装置により処理されたデータを出力するためのＬＣＤ出力手段とを含むことを特徴とする電子機器。
【請求項８】
情報処理装置で起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段としてコンピュータを機能させることを特徴とするプログラム。
【請求項９】
コンピュータ読み取り可能な情報記憶媒体であって、請求項８のプログラムが記憶されていることを特徴とする情報記憶媒体。
【請求項１０】
所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報が組み込まれたソフトウエアと、
情報処理装置で起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段と、
を含むことを特徴とする処理能力調整システム。
【請求項１１】
ハードウエアとソフトウエアが協働して情報処理を行う情報処理装置の処理能力調整方法であって、
情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報を持たせるパフォーマンス値情報設定ステップと、
情報処理装置で起動されたソフトウエアのパフォーマンス値情報に基づき情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定ステップと、
決定されたパフォーマンスで情報処理装置のハードウエアを動作させるために必要な設定処理を行うステップとを含むことを特徴とする処理能力調整方法。
【請求項１２】
請求項１１において、
前記パフォーマンス値情報設定ステップにおいて、
情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報をソフトウエアの実行段階に応じて持たせ、
前記パフォーマンス決定ステップにおいて、
ソフトウエアが各実行段階に達した場合に、各実行段階に対応したパフォーマンス値情報を受け取り、各実行段階に対応したパフォーマンス値情報に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする処理能力調整方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、電子機器、プログラム、情報記憶媒体、処理能力調整システム及び処理能力調整方法に関する。
【背景技術】
【０００２】
ハードウエアとソフトウエアが協働して情報処理を行う情報処理装置においては、システムで実行されているソフトウエアの状況に応じて必要なハードウエアでパフォーマンスは異なってくる。
【０００３】
情報処理装置の低消費電力化を計るためには、その時システムで実行されているソフトウエアの状況に応じて必要かつ十分なパフォーマンス（適切な動作電圧及び動作周波数）でシステムを動作させることが好ましい。
【特許文献１】特開平４−３１６１１２号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところがシステムを必要かつ十分なパフォーマンス（適切な動作電圧及び動作周波数）でシステムを動作させるためには、ソフトウェア（アプリケーションソフトやＯＳソフト）が実行される際、実際にシステムで必要なパフォーマンスがどれくらい必要かを解析する必要があり、この解析が非常に困難な為、最適な動作電圧及び動作周波数でシステムを動作させる低消費電力のシステムを構築することは困難であった。
【０００５】
本発明は以上のような問題点に鑑みてなされたものであり、その目的とするところは、システムで実行されているソフトウエアの状況に応じて必要かつ十分なパフォーマンス（適切な動作電圧及び動作周波数）でハードウエアを動作させ、情報処理装置の低消費電力化を計ることが可能な情報処理装置、電子機器、プログラム、情報記憶媒体、処理能力調整システム及び処理能力調整方法の提供を目的とする。
【課題を解決するための手段】
【０００６】
（１）本発明は、所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報が組み込まれたソフトウエアが実行される情報処理装置であって、
起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段と、
を含むことを特徴とする。
【０００７】
パフォーマンス値情報が組み込まれたソフトウエアは、アプリケーションソフトでもよしオペレーティングシステムのソフトウエアでもよい。
【０００８】
本発明によれば、情報処理装置で実行されるソフトウエアには基準となるハードウエア（基準ハードウエア）に対応したパフォーマンス値を保持している。基準ハードウエアとは、所定のアーキテクチャ、動作周波数、動作電圧を有するハードウエアのことであり、各ソフトウエアはかかる基準ハードウエアで実行される際の必要パフォーマンス値情報を有している。
【０００９】
ソフトウエアに組み込まれたパフォーマンス値情報は例えば、ソフトウエアの起動時又はソフトウエアでパフォーマンス情報告知命令が実行された時等に受け取ることが可能である。
【００１０】
ソフトウエアに設定されているパフォーマンス値は、１つの値でもよいし、所定の範囲を持った値でもよい。また例えば異なるハードウエアに対応して複数のパフォーマンス値が設定されている場合でもよい。
【００１１】
受け取ったパフォーマンス値を用いて所定のアルゴリズムで演算を行い、演算結果に基づき情報処理装置を動作させるためのパフォーマンスを決定するようにしてもよい。例えばソフトウエアから受け取ったパフォーマンス値を用いて関数演算を行い演算結果に基づき情報処理装置を動作させるためのパフォーマンスを決定するようにしてもよい。
【００１２】
また受け取ったパフォーマンス値とパフォーマンスの対応テーブルを持たせておいて、受け取ったパフォーマンス値に対応するパフォーマンスをテーブルから読み出す構成でもよい。
【００１３】
ここにおいて情報処理装置を動作させるためのパフォーマンスとは例えば情報処理装置を動作させるための周波数、動作電圧、電源電圧等であり、これらのいずれか一つ又は複数を決定するようにしてもよい。
【００１４】
ここにおいて決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理とは、クロック周波数又は動作電圧の情報処理装置に対してクロック周波数又は動作電圧等の設定を指示する信号を出力する処理等である。
【００１５】
本発明によれば、システムで実行されているソフトウエアの状況に応じて必要かつ十分なパフォーマンス（適切な動作電圧及び動作周波数）でハードウエアを動作させ、情報処理装置の低消費電力化を計ることが可能である。
【００１６】
（２）本発明の情報処理装置は、
前記パフォーマンス決定手段は、
受け取ったパフォーマンス値を、情報処理装置のハードウエア情報に基づき当該情報処理装置用のパフォーマンス値に補正して、補正後のパフォーマンス値を用いて情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする。
【００１７】
情報処理装置のハードウエア情報とは、情報処理装置のハードウエアのアーキテクチャや動作周波数や動作電圧や電源電圧に関する情報等である。
【００１８】
本発明によれば、ソフトウエアは基準となるハードウエア（標準ハードウエア）に対応したパフォーマンス値を保持している。そして実際にソフトウエアが起動される際に、実行されるの情報処理装置のハードウエア情報に基づきパフォーマンス値を修正して（実際のハードウエアと標準ハードウエアの乖離を調整するための修正）、修正したパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定することができる。
【００１９】
従ってソフトウエアが実行される情報処理装置のハードウエアの相違を吸収した汎用的なシステムを提供することができる。
【００２０】
（３）本発明の情報処理装置は、
前記パフォーマンス決定手段は、
複数のソフトウエアが実行される場合には、複数のソフトウエアから受け取ったパフォーマンス値に基づき情報処理装置に必要なシステムパフォーマンス値を演算し、システムパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする。
【００２１】
例えば複数のソフトウエアから受け取ったパフォーマンス値を集計したパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。
【００２２】
また複数のソフトウエアから受け取ったパフォーマンス値を用いて所定のアルゴリズムで演算を行い、演算結果に基づき情報処理装置を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。例えば複数のソフトウエアから受け取ったパフォーマンス値を用いて関数演算を行い演算結果に基づき情報処理装置を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。また検算結果とパフォーマンス（クロック周波数又は動作電圧）の対応テーブルを野たせて、演算結果に基づき対応するパフォーマンス（クロック周波数又は動作電圧）をテーブルから読み出す構成でもよい。
【００２３】
（４）本発明の情報処理装置は、
前記パフォーマンス決定手段は、
新たにソフトウエアが起動された場合又は現在実行中のソフトウエアからパフォーマンス値の変更にかかる情報を受け取った場合に、新たに起動されたソフトウエアからパフォーマンス値情報を受け取り、受け取ったパフォーマンス値と起動前のシステムパフォーマンス値に基づき起動後のシステムパフォーマンス値を求め、起動後のシステムパフォーマンス値に基づき、情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする。
【００２４】
現在実行中のソフトウエアからパフォーマンス値の変更にかかる情報を受け取った場合とは、例えば情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報をソフトウエアの実行段階に応じて持たせ、ソフトウエアが各実行段階に達した場合に、各実行段階に対応したパフォーマンス値情報を受け取った場合等である。
【００２５】
（５）本発明の情報処理装置は、
前記パフォーマンス決定手段は、
ソフトウエアの実行終了を検出した場合に、実行が終了したソフトウエアのパフォーマンス値と終了前の前記システムパフォーマンス値に基づき終了後のシステムパフォーマンス値を求め、終了後のシステムパフォーマンス値に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする。
【００２６】
（６）本発明の情報処理装置は、
前記パフォーマンス決定手段は、
新たなソフトウエアの起動の指示を検出した場合に、新たなソフトウエア起動後のシステムパフォーマンス値を演算し、新たなソフトウエア起動後のシステムパフォーマンス値と、システムの最大可能パフォーマンス値とを比較する手段を含み、
比較結果に基づきに、新たなソフトウエアの起動の中止又は延期を情報処理装置に指示するために必要な処理を行う手段と、
を含むことを特徴とする。
【００２７】
（７）本発明は、上記のいずれかに記載の情報処理装置と、
前記情報処理装置の処理対象となるデータの入力手段と、
前記情報処理装置により処理されたデータを出力するためのＬＣＤ出力手段とを含むことを特徴とする。
【００２８】
（８）本発明は、
情報処理装置で起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段としてコンピュータを機能させることを特徴とするプログラムである。
【００２９】
（９）本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記のプログラムが記憶されていることを特徴とする情報記憶媒体である。
【００３０】
（１０）本発明は、
所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報が組み込まれたソフトウエアと、
情報処理装置で起動されたソフトウエアから当該ソフトウエアのパフォーマンス値情報を受け取る手段と、
受け取ったパフォーマンス値情報及び情報処理装置のハードウエア情報に基づき、情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定手段と、
決定されたパフォーマンスで情報処理装置を動作させるために必要な設定処理を行う手段と、
を含むことを特徴とする処理能力調整システムである。
【００３１】
（１１）本発明は、ハードウエアとソフトウエアが協働して情報処理を行う情報処理装置の処理能力調整方法であって、
情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報を持たせるパフォーマンス値情報設定ステップと、
情報処理装置で起動されたソフトウエアのパフォーマンス値情報に基づき情報処理装置を動作させるためのパフォーマンスを決定するパフォーマンス決定ステップと、
決定されたパフォーマンスで情報処理装置のハードウエアを動作させるために必要な設定処理を行うステップとを含むことを特徴とする。
【００３２】
（１２）本発明の処理能力調整方法は、
前記パフォーマンス値情報設定ステップにおいて、
情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報をソフトウエアの実行段階に応じて持たせ、
前記パフォーマンス決定ステップにおいて、
ソフトウエアが各実行段階に達した場合に、各実行段階に対応したパフォーマンス値情報を受け取り、各実行段階に対応したパフォーマンス値情報に基づき情報処理装置を動作させるためのパフォーマンスを決定することを特徴とする処理能力調整方法である。
【発明を実施するための最良の形態】
【００３３】
以下、本発明の好適な実施形態について図面を用いて詳細に説明する。
【００３４】
図１は本実施の形態の情報処理装置、処理能力調整システムについて説明するためのブロック図の一例である。
【００３５】
１０は、本実施の形態の処理能力調整システムである。
【００３６】
２０は情報処理装置を構成するハードウエアであり、３０は情報処理装置で実行されるオペレーティングシステム（ソフトウエア）である。狭義の情報処理装置１２はハードウエア２０とオペレーティングシステム３０で構成される。５０−１〜５０−３は、情報処理装置１０で実行されるソフトウエア（アプリケーションソフトウエア）１〜３（プログラム）である。広義の情報処理装置１４はハードウエア２０とオペレーティングシステム３０とソフトウエア（アプリケーションソフトウエア）１〜３（プログラム）で構成される。
【００３７】
ソフトウエア（アプリケーションソフトウエア）１〜３（プログラム）５０−１〜５０−３には、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報５２−１〜５２−３が組み込まれている。またパフォーマンス値情報５２−１〜５２−３は、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報をソフトウエアの実行段階に応じて持たせるようにしてもよい。
【００３８】
基準ハードウエアとは、所定の基準アーキテクチャ、所定の基準周波数、所定の基準電圧で当該ソフトウエアを実行させる場合の必要パフォーマンス値に関する情報である。
【００３９】
またオペレーティングシステム３０にも、当該オペレーティングシステム（ソフトウエア）が所定の基準ハードウエアで実行された場合のＯＳパフォーマンス値情報３２が組み込まれている。
【００４０】
オペレーティングシステム３０は、システムパフォーマンス決定部４０を含む。
【００４１】
システムパフォーマンス決定部４０は、情報処理装置１０で起動されたソフトウエア（アプリケーションソフト、ＯＳソフト）３０、５０−１〜５０−３から当該ソフトウエアのパフォーマンス値情報３２、５２−１〜５２−３を受け取る手段と、受け取ったパフォーマンス値情報３２、５２−１〜５２−３及び当該情報処理装置のハードウエア情報２２に基づきハードウエア２０を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するパフォーマンス決定手段と、決定されたパフォーマンス（クロック周波数又は動作電圧）でハードウエア２０を動作させるために必要な処理を行う手段として機能する。
【００４２】
ソフトウエア１〜３（５０−１〜５０−３）に設定されているパフォーマンス値は、１つの値でもよいし、所定の範囲を持った値でもよい。また例えば異なるハードウエアに対応して複数のパフォーマンス値が設定されている場合でもよい。
【００４３】
システムパフォーマンス決定部４０は、受け取ったパフォーマンス値３２、５２−１〜５２−３を、情報処理装置１０のハードウエア情報２２に基づき当該ハードウエア用のパフォーマンス値に補正して、補正後のパフォーマンス値を用いてハードウエアを動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。
【００４４】
システムパフォーマンス決定部４０は、複数のソフトウエア３０、５０−１〜５０−３が実行される場合には、複数のソフトウエアから受け取ったパフォーマンス値に基づきシステムパフォーマンス値を演算し、システムパフォーマンス値に基づきハードウエア２０を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。
【００４５】
システムパフォーマンス決定部４０は、新たにソフトウエアが起動された場合又は現在実行中のソフトウエアからパフォーマンス値の変更にかかる情報を受け取った場合に、新たに起動されたソフトウエアからパフォーマンス値情報を受け取り、受け取ったパフォーマンス値と起動前のシステムパフォーマンス値に基づき起動後のシステムパフォーマンス値を求め、起動後のシステムパフォーマンス値に基づき、ハードウエア２０を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。
【００４６】
システムパフォーマンス決定部４０は、ソフトウエアの実行終了を検出した場合に、実行が終了したソフトウエアのパフォーマンス値と終了前の前記システムパフォーマンス値に基づき終了後のシステムパフォーマンス値を求め、終了後のシステムパフォーマンス値に基づきハードウエアを動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定するようにしてもよい。
【００４７】
システムパフォーマンス決定部４０は、新たなソフトウエアの起動の指示を検出した場合に、新たなソフトウエア起動後のシステムパフォーマンス値を演算し、新たなソフトウエア起動後のシステムパフォーマンス値と、システムの最大許容パフォーマンス値とを比較する手段と、比較結果に基づきに、新たなソフトウエアの起動の中止又は延期をハードウエアに指示するために必要な処理を行う手段として機能するように構成してもよい。
【００４８】
本実施の形態の処理能力調整システムは広義には、ハードウエア２０、オペレーティングシステム３０、ソフトウエア５０−１〜５０−３を含んで実現され、狭義にはシステムパフォーマンス決定部によって実現される。
【００４９】
本実施の形態では複数のソフトウエアはマルチタスクにて実行することが可能である。システムパフォーマンス決定部は、各タスクで必要なパフォーマンスをソフトウエアから受け取ったパフォーマンス情報にハードウェア情報２２を加味して計算し、すべてのタスクを処理するのに必要なシステムパフォーマンス値に基づき情報処理装置のハードウエアを動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定する。
【００５０】
なおシステムパフォーマンス値が情報処理装置のハードウェアの処理能力（最大可能パフォーマンス値）を越えた場合、各タスク（で実行されているソフトウエア）の優先順位を判定して有線順位の低いタスク（で実行されているソフトウエア）の停止を指示する構成としてもよい。そしてハードウェアの処理能力に余裕が出た際(いくつかのタスクが終了した際)に停止していたタスクの再始動を指示する構成としてもよい。
【００５１】
まず起動された各ソフトウェア１〜３（５０−１〜５０−３）は、所定の基準ハードウエアで実行する際に必要なパフォーマンス値情報（５２−１〜５２−３）をオペレーティング・システム３０に告知する。オペレーティング・システム３０は、各ソフトウェア１〜３（５０−１〜５０−３）、タスクスイッチ、オペレーティング・システム等で必要なパフォーマンスの合計（システムパフォーマンス値）を計算し、ハードウェアの処理能力に応じて必要なクロック周波数、電源電圧を決定し、ハードウェアを最適な値にセットする。
【００５２】
オペレーティング・システム３０は、各ソフトウェア１〜３（５０−１〜５０−３）の内、終了したタスクを検知した際は、必要なパフォーマンス（システムパフォーマンス値）の合計を再計算し、ハードウェアの処理能力に応じて必要なクロック周波数、電源電圧を決定し、ハードウェアを最適な値にセットする。
【００５３】
なおここでは本実施の形態で実行されるソフトウェア１〜３（５０−１〜５０−３）を例にとり説明したが、起動されるソフトウエアの数はこれに限られるものではない。
【００５４】
情報処理装置は例えばＰＣ等のコンピュータでもよいし、組み込み用途、ＰＤＡ、携帯電話等で動画や音声等の複数のアプリケーションを有するシステムに活用することが可能である。
【００５５】
図２（Ａ）（Ｂ）は、パフォーマンス値が組み込まれたソフトウエアについて説明するための図である。
【００５６】
本実施の形態では、情報処理装置で実行されるソフトウエアに、当該ソフトウエアが所定の基準ハードウエアで実行された場合のパフォーマンス値情報を持たせる。パフォーマンス値情報は、例えばプログラムに命令やコマンドや引数として組み込んでおくことができる。
【００５７】
図２（Ａ）は、プログラム２１０の先頭に当該ソフトウエア（プログラム）２１０が所定の基準ハードウエアで実行された場合に必要なパフォーマンス値の通知命令２１２が組み込まれている様子を模式的に示した図である。プログラム２１０が起動されると、パフォーマンスの通知命令２１２が実行され、当該ソフトウエアの実行に必要なパフォーマンス値情報２１４がオペレーティングシステム（システムパフォーマンス決定部）に通知される。
【００５８】
図２（Ｂ）は、情報処理装置で実行されるソフトウエア（プログラム）２３０に、当該ソフトウエア（プログラム）２３０が所定の基準ハードウエアで実行された場合のパフォーマンス値情報をソフトウエアの実行段階に応じて持たせている様子を模式的に示した図である。プログラム２３０が起動されると、まず処理Ａ（２２０）が実行される前に処理Ａを実行するために必要なパフォーマンス値の通知命令２２２が実行され、処理Ａの実行に必要なパフォーマンス値情報２２４がオペレーティングシステム（システムパフォーマンス決定部）に通知される。
【００５９】
次に処理Ｂ（２４０）が実行される前に処理Ｂを実行するために必要なパフォーマンス値の通知命令２４２が実行され、処理Ｂの実行に必要なパフォーマンス値情報２４４がオペレーティングシステム（システムパフォーマンス決定部）に通知される。
【００６０】
システムパフォーマンス決定部は、ソフトウエア（プログラム）が各実行段階に達した場合に、各実行段階に対応したパフォーマンス値情報を受け取り、各実行段階に対応したパフォーマンス値情報に基づき情報処理装置を動作させるためのパフォーマンス（クロック周波数又は動作電圧）を決定することになる。
【００６１】
ソフトウエアに組み込むパフォーマンス値情報は、所定の基準ハードウエアで当該ソフトウエアを実行する際に必要なパフォーマンス値である。
【００６２】
基準ハードウエアとは所定のアーキテクチャ（情報処理装置のＣＰＵやＤＳＰ）、所定の動作周波数、所定の動作電圧を有するハードウエアである。
【００６３】
パフォーマンス値はCPU及びDSPのアーキテクチャが同じ場合は、動作周波数で決定するようにしてもよい。またCPU及びDSPのアーキテクチャが同じ場合でも、パイプライン段数や本数が異なる場合は、標準のCPUまたはDSPを決定し、標準との相対値に基づき決定するようにしてもよい。またOSに搭載されたベンチマーク・テストの結果で決定するようにしてもよいし、標準ベンチマーク値の相対値で決定するようにしてもよい。
【００６４】
図３は本実施の形態の動作のパフォーマンス決定動作（ソフトウエアの起動指示が発生した場合の動作）を説明するためのフローチャート図である。
【００６５】
ソフトウエアの起動指示が発生すると、ソフトウエアからパフォーマンス値情報を受け取る（ステップＳ１０、Ｓ２０）。
【００６６】
受け取ったパフォーマンス値を、情報処理装置のハードウエア情報に基づき当該情報処理装置用のパフォーマンス値に修正する（ステップＳ３０）。
【００６７】
修正後のパフォーマンス値と起動前のシステムパフォーマンス値に基づき起動後のシステムパフォーマンス値を求める（ステップＳ４０）。
【００６８】
起動後のシステムパフォーマンス値とハードウエアのピークパフォーマンス値を比較し、起動後のシステムパフォーマンス値とハードウエアのピークパフォーマンス値を比較し、起動後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を越えていない場合には、起動後のシステムパフォーマンス値に基づき、周波数、電源電圧を設定し（ステップＳ５０、Ｓ６０）、起動指示の発生したソフトウエアを起動する（ステップＳ７０）。
【００６９】
起動後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を越えている場合には、起動指示の発生したソフトウエアの起動を中止又は延期する（ステップＳ５０、Ｓ８０）。
【００７０】
図４は本実施の形態の動作のパフォーマンス決定動作（ソフトウエアが終了した場合の動作）を説明するためのフローチャート図である。
【００７１】
ソフトウエアの実行終了を検出した場合に、実行が終了したソフトウエアのパフォーマンス値と終了前の前記システムパフォーマンス値に基づき終了後のシステムパフォーマンス値を求める（ステップＳ１１０、Ｓ１２０）。
【００７２】
起動後のシステムパフォーマンス値に基づき、周波数、電源電圧を設定する（ステップＳ１３０）。
【００７３】
図５は本実施の形態の動作のパフォーマンス決定動作を説明するためのフローチャート図である。
【００７４】
まずオペレーティングシステム（ＯＳ）起動に必要なパフォーマンスに応じた周波数、電源電圧（ハードウエアのパフォーマンス）を設定する（ステップＳ２１０）。ここでは、ＯＳが保持しているパフォーマンス値をまだうけとっていないので、予め設定している標準値（デフォルト値）を設定する（ステップＳ２１０）。
【００７５】
次にＯＳ起動後にＯＳからパフォーマンス値情報を受け取り、システムパフォーマンス決定部が現在設定されているいハードウエアのパフォーマンス（性能）で良いか否か確認する（ステップＳ２２０）。修正が必要で有る場合にはＯＳから受け取ったパフォーマンス値情報及びハードウエア情報に基づきＯＳが動作するために必要なシステムパフォーマンス値を演算し、演算されたシステムパフォーマンス値に基づきハードウエアの周波数、電源電圧（ハードウエアのパフォーマンス）を再設定するようにしてもよい。
【００７６】
アプリケーション１（ソフトウエア）起動の指示が発生すると、アプリケーション１（ソフトウエア）からパフォーマンス値情報を受け取り、現状のシステムパフォーマンス値にアプリケーション１（ソフトウエア）で必要なパフォーマンス値を加算する（ステップＳ２３０、Ｓ２４０）。ここでアプリケーション１（ソフトウエア）で必要なパフォーマンス値は、アプリケーション１（ソフトウエア）から受け取ったパフォーマンス値を情報処理装置のハードウエア情報に基づき修正して求めるようにしてもよい。
【００７７】
加算後のシステムパフォーマンス値とハードウエアのピークパフォーマンス値を比較して、加算後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を超えている場合にはアプリケーション１の起動を中止又は延期する（ステップＳ２５０、Ｓ２６０）。
【００７８】
加算後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を超えていない場合には、加算後のシステムパフォーマンス値に応じた周波数、電源電圧を設定し（ステップＳ２７０）、アプリケーション１を起動する（ステップＳ２８０）。
【００７９】
アプリケーション２（ソフトウエア）起動の指示が発生すると、アプリケーション２（ソフトウエア）からパフォーマンス値情報を受け取り、現状のシステムパフォーマンス値にアプリケーション２（ソフトウエア）で必要なパフォーマンス値を加算する（ステップＳ２９０、Ｓ３００）。ここでアプリケーション２（ソフトウエア）で必要なパフォーマンス値は、アプリケーション２（ソフトウエア）から受け取ったパフォーマンス値を情報処理装置のハードウエア情報に基づき修正して求めるようにしてもよい。
【００８０】
加算後のシステムパフォーマンス値とハードウエアのピークパフォーマンス値を比較して、加算後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を超えている場合にはアプリケーション２の起動を中止又は延期する（ステップＳ３１０、Ｓ３２０）。
【００８１】
加算後のシステムパフォーマンス値がハードウエアのピークパフォーマンス値を超えていない場合には、加算後のシステムパフォーマンス値に応じた周波数、電源電圧を設定し（ステップＳ３３０）、アプリケーション１を起動する（ステップＳ３４０）。
【００８２】
図６に、本実施の形態の電子機器のブロック図の一例を示す。本電子機器８００は、情報処理装置８１０、入力部８２０、メモリ８３０、電源生成部８４０、ＬＣＤ８５０、音出力部８６０を含む。
【００８３】
ここで、入力部８２０は、種々のデータを入力するためのものである。情報処理装置８１０は、この入力部８２０により入力されたデータに基づいて種々の処理を行うことになる。メモリ８３０は、情報処理装置８１０などの作業領域となるものである。電源生成部８４０は、電子機器８００で使用される各種電源を生成するためのものである。ＬＣＤ８５０は、電子機器が表示する各種の画像（文字、アイコン、グラフィック等）を出力するためのものである。  音出力部８６０は、電子機器８００が出力する各種の音（音声、ゲーム音等）を出力するためのものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００８４】
ここで情報処理装置８１０は、例えば図１から図５で説明したような構成を有している。
【００８５】
図７（Ａ）に、電子機器の１つである携帯電話９５０の外観図の例を示す。この携帯電話９５０は、入力部として機能するダイヤルボタン９５２や、電話番号や名前やアイコンなどを表示するＬＣＤ９５４や、音出力部として機能し音声を出力するスピーカ９５６を備える。
【００８６】
図７（Ｂ）に、電子機器の１つである携帯型ゲーム装置９６０の外観図の例を示す。この携帯型ゲーム装置９６０は、入力部として機能する操作ボタン９６２、十字キー９６４や、ゲーム画像を表示するＬＣＤ９６６や、音出力部として機能しゲーム音を出力するスピーカ９６８を備える。
【００８７】
図７（Ｃ）に、電子機器の１つであるパーソナルコンピュータ９７０の外観図の例を示す。このパーソナルコンピュータ９７０は、入力部として機能するキーボード９７２や、文字、数字、グラフィックなどを表示するＬＣＤ９７４、音出力部９７６を備える。
【００８８】
なお、本実施形態を利用できる電子機器としては、図７（Ａ）（Ｂ）（Ｃ）に示すもの以外にも、携帯型情報端末、ページャー、電子卓上計算機、タッチパネルを備えた装置、プロジェクタ、ワードプロセッサ、ビューファインダ型又はモニタ直視型のビデオテープレコーダ、カーナビゲーション装置等のＬＣＤを使用する種々の電子機器を考えることができる。
【００８９】
なお、本発明は本実施形態に限定されず、本発明の要旨の範囲内で種々の変形実施が可能である。
【００９０】
例えば本実施の形態ではハードウエアのパフォーマンス（性能）として、ハードウエアの動作周波数や動作電圧（電源電圧）を例にとり説明したがこれに限られず、他の性能に関する設定でもよい。
【図面の簡単な説明】
【００９１】
【図１】本実施の形態の情報処理装置、処理能力調整システムについて説明するためのブロック図の一例である。
【図２】図２（Ａ）（Ｂ）は、パフォーマンス値が組み込まれたソフトウエアについて説明するための図である。
【図３】本実施の形態の動作のパフォーマンス決定動作（ソフトウエアの起動指示が発生した場合の動作）を説明するためのフローチャート図である。
【図４】本実施の形態の動作のパフォーマンス決定動作（ソフトウエアが終了した場合の動作）を説明するためのフローチャート図である。
【図５】本実施の形態の動作のパフォーマンス決定動作を説明するためのフローチャート図である。
【図６】本実施の形態の電子機器のブロック図の一例を示す。
【図７】図７（Ａ）（Ｂ）（Ｃ）は、種々の電子機器の外観図の例である。
【符号の説明】
【００９２】
１０  処理能力調整システム、２０  情報処理装置のハードウエア、２２  ハードウエア情報、３０  情報処理装置のオペレーティングシステム、３２  ＯＳパフォーマンス値情報、４０  システムパフォーマンス決定部、５０−１〜５０−３  ソフトウエア、５２−１〜５２−３  パフォーマンス値情報
８００  電子機器
【図１】
2005258662.tif 000003
【図２】
2005258662.tif 000004
【図３】
2005258662.tif 000005
【図４】
2005258662.tif 000006
【図５】
2005258662.tif 000007
【図６】
2005258662.tif 000008
【図７】
2005258662.tif 000009