(57)【要約】【課題】所定のリソースを使用する複数のプログラムを実行中に当該所定のリソースに対する使用率が高い場合、ユーザにとって影響の少ないプログラムを停止または機能縮小させる。【解決手段】情報処理装置１は、複数のリソースそれぞれの使用率に関する閾値、及びそれぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度を記憶しているリソース管理テーブル３３と、複数のリソースそれぞれに対してリソースの使用率を監視するリソース監視部４１と、監視された所定のリソースの使用率が閾値以上の場合には、ユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御部４２と、を備える。【選択図】図１
2013149046.tif 000002
【特許請求の範囲】
【請求項１】
一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置であって、
前記一または複数のリソースの使用率に関する閾値、及びそれぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度を記憶している情報記憶手段と、
前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視手段と、
前記リソース監視手段により監視された所定のリソースの使用率が、前記情報記憶手段に記憶されている前記所定のリソースの閾値以上の場合には、前記情報記憶手段に記憶されているユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記機能プログラム制御手段は、
前記ユーザ影響度の最も小さい機能プログラムを、最初に、停止または機能縮小する機能プログラムとして決定し、決定した機能プログラムを停止しても、前記所定のリソースの使用率が未だ前記所定のリソースの閾値以上の場合には、次に前記ユーザ影響度の小さい機能プログラムを、次に停止または機能縮小する機能プログラムとして決定し、次に決定した機能プログラムを停止または機能縮小するという処理を、前記所定のリソースの使用率が前記所定のリソースの閾値未満になるまで、前記ユーザ影響度の小さい順に順次行うことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記情報記憶手段は、前記複数の機能プログラムごとに、それぞれの機能プログラムが使用する各リソースの使用率の幅に関するリソース使用率情報をさらに備えており、
前記機能プログラム制御手段は、
前記情報記憶手段に記憶されているユーザ影響度及びリソース使用率情報に基づいて、停止または機能縮小する機能プログラムを決定し、
前記情報記憶手段に記憶されている閾値及びリソース使用率情報、並びに現在の前記所定のリソースの使用率に基づいて、決定した機能プログラムを停止するか、機能縮小するかを決定することを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
ユーザからの指示を入力する入力手段と、
前記入力手段を介した指示に基づいて、前記情報記憶手段に記憶されている閾値及びユーザ影響度を更新する情報更新手段と、
をさらに備えることを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置におけるリソース管理方法であって、
前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップと、
前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップと、
を備えたことを特徴とするリソース管理方法。
【請求項６】
一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置におけるリソース管理プログラムであって、
前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップと、
前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップと、
を前記情報処理装置に実行させることを特徴とするリソース管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置のリソースを管理する技術に関し、特に、リソースが潤沢にない環境にある情報処理装置に好適に適用できる。
【背景技術】
【０００２】
従来、コンピュータの動作の異常を検知する技術は種々開示されている。例えば、文献１には、コンピュータにおけるプログラムの異常な動作を検知する精度を向上させるため、ハードウェア制御プログラム（基準プログラム）の動作に関する特徴量、基準プログラムを利用する機能プログラムが基準プログラムの動作に与えた影響から基準プログラムの異常動作を検知し、ユーザに通知する情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−５５１４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した特許文献１が示した従来技術は、基準プログラムの動作状況のみから異常動作を検知する技術であり、ユーザにとっての影響度という観点が欠如している。ここで、ユーザにとっての影響度とは、異常動作を起こした基準プログラムを利用する機能プログラムをそれぞれ停止させた場合、停止させた各機能プログラムによってユーザがどれくらい不利益を被るかという不利益の度合いを意味する。
【０００５】
また、特許文献１が示した従来技術では、基準プログラムに異常があった場合、ユーザに警告を出すに留まっているため、その後の判断、つまり、どの機能プログラムを止めるべきかという判断はユーザが行わなければならない。
【０００６】
このように従来においては、基準プログラムの動作状況、つまりリソース（ハードウェア及びソフトウェアの資源）の使用状況から異常動作を検知するに留まり、ユーザにとっての影響度を考慮して上記リソースを使用するプログラムを停止または機能縮小するという考えはない。
【０００７】
本発明は上記の事情を鑑みてなされたものであり、その課題の一例としては、所定のリソースを使用する複数のプログラムを実行中に、当該所定のリソースに対する使用率が高い場合、ユーザにとって影響の少ないプログラムを停止または機能縮小させることができる情報処理装置、リソース管理方法、及びリソース管理プログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記の課題を達成するため、請求項１に係る発明は、一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置であって、前記一または複数のリソースの使用率に関する閾値、及びそれぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度を記憶している情報記憶手段と、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視手段と、前記リソース監視手段により監視された所定のリソースの使用率が、前記情報記憶手段に記憶されている前記所定のリソースの閾値以上の場合には、前記情報記憶手段に記憶されているユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御手段と、を備えることを特徴とする。
【０００９】
また、請求項５に係る発明は、一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置におけるリソース管理方法であって、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップと、前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップと、を備えたことを特徴とする。
【００１０】
また、請求項６に係る発明は、一または複数のリソースと、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラムと、を備えた情報処理装置におけるリソース管理プログラムであって、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップと、前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップと、を前記情報処理装置に実行させることを特徴とする。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係る情報処理装置の概略構成図である。
【図２】本発明の実施の形態に係る情報処理装置における機能プログラムとリソースとの関係を示す模式図である。
【図３】本発明の実施の形態に係る情報処理装置の閾値データテーブルの内容を示す模式図である。
【図４】本発明の実施の形態に係る情報処理装置のリソース制限許容範囲データテーブルの内容を示す模式図である。
【図５】本発明の実施の形態に係る情報処理装置のリソース管理処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態を図面を用いて説明する。
【００１３】
図１は、本発明の実施の形態に係る情報処理装置１の概略構成図である。情報処理装置１は、ユーザにとっての影響度（以下、ユーザ影響度という）という観点から、リソース（ＣＰＵ、メモリコントローラ、グラフィックエンジンなどのハードウェア及びソフトウェアの資源）を有効に使うことができる装置である。したがって、リソースが潤沢でない情報処理装置に好適であるが、リソースが潤沢な情報処理装置にも適用できることは勿論である。本実施の形態では、情報処理装置１をリソースが潤沢でないナビゲーション装置や携帯電話端末と想定して説明する。
【００１４】
情報処理装置１は、図１に示すように、少なくとも、入力部１０、出力部２０、記憶部３０、及び制御部４０を具備する構成である。
【００１５】
入力部１０は、情報処理装置１に対する指示を入力する装置であり、具体的には、情報処理装置のキー、スイッチ、ボタン、リモコン、音声入力装置などから構成される。本実施の形態では、後述するリソース管理テーブル３３のデータ更新の際に用いられる。
【００１６】
出力部２０は、情報処理装置１の処理結果を出力する装置であり、具体的には、情報処理装置１の液晶ディスプレイなどユーザに対して文字、画像を表示する表示装置やスピーカなど音声を出力する装置などから構成される。本実施の形態では、リソース管理テーブル３３のデータを確認する際に用いられる。また、後述するリソース管理処理の動作状況をログ情報として出力部２０に出力してもよい。
【００１７】
記憶部３０は、情報処理装置１が実行する各種処理に必要なデータやプログラムが記憶されている装置であり、具体的には、ＲＯＭ、ＲＡＭ等からなる主記憶装置（メモリ）やハードディスクなどの補助記憶装置から構成される。
【００１８】
本実施の形態の記憶部３０には、機能プログラム３１、リソース管理プログラム３２、及びリソース管理テーブル３３が記憶されている。
【００１９】
機能プログラム３１は、情報処理装置１の各種リソースを使用するプログラムである。機能プログラム３１は、複数存在し、各機能プログラム３１は、それぞれに必要なリソースを使用して所定の処理を実行する。機能プログラムとリソースとの関係を図２に示す。図２は、機能プログラムとリソースとの関係を示す模式図である。
【００２０】
例えば、機能プログラムＡは、リソースＸ、リソースＹ及びリソースＺを使用し、機能プログラムＢは、リソースＸ及びリソースＹを使用し、機能プログラムＣは、リソースＸ及びリソースＺを使用することを図２は示している。また、図２は、機能プログラムＡ、Ｂ及びＣを実行している場合には、リソースＸは、リソースＸの全資源のうち機能プログラムＡに５％、機能プログラムＢに１０％、機能プログラムＣに５％使用され、リソースＹは、リソースＹの全資源のうち機能プログラムＡに１０％、機能プログラムＢに２％使用され、リソースＺは、リソースＺの全資源のうち機能プログラムＡに１０％、機能プログラムＣに１０％使用されることを示している。すなわち、図２に示す動作状況においては、リソースＸは、全資源の２０％、リソースＹは、全資源の１２％、リソースＺは、全資源の２０％が使用されている。本実施の形態では、この値、つまり、それぞれのリソースにおいて当該リソースを使用する各機能プログラム３１の使用率の合計を当該リソースの使用率という。したがって、図２に示す状況においては、リソースＸの使用率は２０％、リソースＹの使用率は１２％、リソースＺの使用率は２０％である。
【００２１】
リソース管理プログラム３２は、情報処理装置１内の各リソースの使用率をチェックし、リソースの使用率が予め定めた閾値以上の場合には、ユーザ影響度の少ない機能プログラムを優先的に停止または機能縮小することにより、リソースの使用率が閾値未満となるように制御するリソース管理処理を実行するプログラムである。ここで、閾値とは、各リソースごとに定められた上限使用率で、この上限使用率以上となると、異常な動作が引き起こされる可能性が高くなる。また、ユーザ影響度は、その機能プログラム３１を停止または機能縮小した際、ユーザがどの程度不利益を被るか、その機能プログラム３１を停止または機能縮小した際、ユーザがその変化にどの程度気付きやすいかなどの観点に基づいて決定されるパラメータで、機能プログラム３１を停止または機能縮小した際、ユーザが被る不利益が大きいほど、また、ユーザがその変化に気付きやすいほど、ユーザ影響度は大きく設定されている。すなわち、本実施の形態では、その機能プログラム３１を停止または機能縮小しても、ユーザが被る不利益が小さい、または、ユーザがその変化に気付きにくい機能プログラム３１から優先的に停止または機能縮小していく。
【００２２】
機能プログラム３１をナビゲーション装置に用いられる機能プログラムとして、このことを具体的に説明する。例えば、自車位置推定プログラムは、ナビゲーションの核となる機能であり、停止または機能縮小すると、ユーザが被る不利益が大きいので、ユーザ影響度は大きいといえる。一方、音声認識プログラムは、ナビゲーション装置の核となる機能ではないので、停止または機能縮小しても、ユーザが被る不利益が小さいとともに、ユーザもその変化に気付きにくいので、ユーザ影響度は小さいといえる。
【００２３】
また、リソース管理プログラム３２は、リソース管理テーブル３３のデータ値を設定するリソース管理テーブル設定処理を実行するプログラムでもある。リソース管理テーブル設定処理では、ユーザが入力部１０を介してリソース管理プログラム３２のデータ値を変更し、また、出力部２０を介して、変更したデータ値を確認することができる。
【００２４】
なお、上記リソース管理プログラム３２は、上述した記憶部３０に記憶されるほか、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ−ＲＯＭなどのコンピュータ読み取り可能な記録媒体に記録することも、また、通信ネットワークを介して配信することも可能である。
【００２５】
リソース管理テーブル３３は、リソース管理プログラム３２が上述したリソース管理処理を実行する際に参照されるデータテーブルである。すなわち、リソース管理プログラム３２は、このリソース管理テーブル３３のデータ値を参照することにより、各リソースの使用率をチェックし、また、ユーザ影響度の少ない機能プログラムを決定する。
【００２６】
リソース管理テーブル３３は、詳しくは、閾値データテーブル３０１と、リソース制限データテーブル３０２と、を備える。
【００２７】
閾値データテーブル３０１は、上述した閾値を、各リソースごとに保持するデータテーブルである。図３に閾値データテーブル３０１の一例を示す。図３に示す閾値データテーブル３０１によれば、リソースＸの閾値は９０％、リソースＹの閾値は８０％、リソースＺの閾値は８５％である。この閾値は予め定められて閾値データテーブル３０１に記憶されているが、上述したリソース管理テーブル設定処理により入力部１０を介してユーザがこの閾値を変更することも可能である。
【００２８】
リソース制限データテーブル３０２は、各リソースを使用する場合の使用率及び上述したユーザ影響度を、各機能プログラムごとに保持するデータテーブルである。図４にリソース制限データテーブル３０２の一例を示す。図４に示すリソース制限データテーブル３０２によれば、音声認識プログラムは、リソースＷを１０％または５％使用し、リソースＸを５％または３％使用し、リソースＹを１０％または２％を使用し、リソースＺを７％または３％使用する。また、自車位置推定プログラムは、リソースＷを８％、６％または５％使用し、リソースＸを８〜６％使用し、リソースＹを５％使用し、リソースＺを７％または５％使用する。
【００２９】
なお、使用率が複数の値をとる、あるいは使用率が所定の範囲を有する場合は、機能プログラムをフル機能で実行する場合と機能縮小して実行する場合の使用率の違いを示している。例えば、音声認識プログラムを例に挙げると、音声認識プログラムをフル機能で実行する場合には、リソースＷを１０％使用するが、機能縮小して実行する場合にはリソースＷを５％使用する。すなわち、この場合、音声認識プログラムのリソースＷの使用率は離散的な値をとる。同様にして、ＭＰ３デコードプログラムを例に挙げると、ＭＰ３デコードプログラムをフル機能で実行する場合には、リソースＷを１０％使用するが、機能縮小する場合には２％以上１０％未満で使用する。すなわち、この場合、ＭＰ３デコードプログラムのリソースＷの使用率は連続的な値をとる。
【００３０】
また、図４に示すリソース制限データテーブル３０２によれば、音声認識プログラムは、ユーザ影響度が小であり、停止優先度は１、ＵＩエンジンプログラムは、ユーザ影響度は中であり、停止優先度は３である。ここで、停止優先度は、機能プログラムを停止または機能縮小させる優先順位である。すなわち、停止優先度はユーザ影響度と逆の意味を持っており、ユーザ影響度が小さいほど優先順位は高くなる。本実施の形態では、停止優先度が１のものから順次停止または機能縮小させていく。なお、図４に示すように、ユーザ影響度は同一であっても、停止優先度は機能プログラム間で必ず異なるようになっている。例えば、ＵＩエンジンプログラムとＭＰ３デコードプログラムは、ユーザ影響度が中で同一値をとるが、停止優先度はＭＰ３デコードプログラムが２、ＵＩエンジンプログラムが３である。したがって、停止優先度はより詳細なユーザ影響度ともいえる。
【００３１】
制御部４０は、情報処理装置１全体を制御する装置であり、具体的には、演算機能および制御機能を備えた中央演算装置（ＣＰＵ）などから構成される。
【００３２】
本実施の形態の制御部４０は、さらに詳しくは、リソース監視部４１と、機能プログラム制御部４２と、リソース管理テーブル設定部４３と、を備えている。なお、リソース監視部４１、機能プログラム制御部４２及びリソース管理テーブル設定部４３は、リソース管理プログラム３２を実行することにより実現される制御部４０の機能である。すなわち、リソース監視部４１及び機能プログラム制御部４２は、リソース管理処理を具現化した機能であり、リソース管理テーブル設定部４３は、リソース管理テーブル設定処理を具現化した機能である。
【００３３】
リソース監視部４１は、リソース管理テーブル３３の閾値データテーブル３０１を参照して、情報処理装置１内の各リソースの使用率をチェックする。
【００３４】
機能プログラム制御部４２は、リソース監視部４１による各リソース使用率のチェックの結果、所定のリソースの使用率が閾値以上の場合には、リソース管理テーブル３３のリソース制限データテーブル３０２を参照して、当該所定のリソースに対して停止優先度の高い機能プログラムを停止または機能縮小させ、当該所定のリソースの使用率を閾値未満とする。なお、一の機能プログラムを停止または機能縮小させても、当該所定のリソースの使用率を閾値未満とならない場合には、次に停止優先度の高い機能プログラムを停止または機能縮小させ、当該所定のリソースの使用率を閾値未満とする。
【００３５】
リソース管理テーブル設定部４３は、入力部１０を介してユーザから指示された値により、リソース管理テーブル３３の閾値データテーブル３０１及びリソース制限データテーブル３０２のデータ値を設定する。したがって本実施の形態では、既定値として予め設定されていたリソース管理テーブル３３のデータ値を、ユーザの指示に従って変更することができる。
【００３６】
次に、図５を用いて、情報処理装置１のリソース管理処理について説明する。図５は、制御部４０により実行されるリソース管理処理の流れを示すフローチャートである。なお、以下の一部のステップにおいては、図３及び図４に示すテーブル値を用いて具体的に説明する。
【００３７】
まず、制御部４０は、変数Ｎに０を代入し（ステップＳ１０）、次いで、変数Ｎに１を加算する（ステップＳ２０）。ここで、変数Ｎはリソースを一意に識別可能な識別子である。例えば、図５のフローチャートにおいて、Ｎ＝１のリソースＲ（１）は、リソースＸ、Ｎ＝２のリソースＲ（２）はリソースＹ、Ｎ＝３のリソースＲ（３）はリソースＺ、…というように変数Ｎの値によりリソースは一意に特定される。変数Ｎの取り得る最大値は、情報処理装置１の全リソースの数となっている。
【００３８】
次いで、制御部４０は、リソース管理テーブル３３の閾値データテーブル３０１を参照して、リソースＲ（Ｎ）の使用率が閾値以上であるか否かを判定する（ステップＳ３０）。例えば、Ｎ＝１の場合には、リソースＲ（１）に相当するリソースＸの使用率が、閾値として設定された９０％（図３参照）以上であるか否かを判定する。
【００３９】
リソースＲ（Ｎ）の使用率が閾値以上である場合には（ステップＳ３０：ＹＥＳ）、制御部４０は、変数Ｐに０を代入し（ステップＳ４０）、次いで、変数Ｐに１を加算する（ステップＳ５０）。ここで、変数Ｐの値はリソース制限データテーブル３０２の停止優先度の値を示している。
【００４０】
次いで、制御部４０は、停止優先度Ｐの機能プログラムを対象プログラムに決定し（ステップＳ６０）、次いで、この対象プログラムがリソースＲ（Ｎ）を使用しているか否かを判定する（ステップＳ７０）。例えば、Ｎ＝１及びＰ＝１の場合には、停止優先度１の機能プログラムである音声認識プログラムを対象プログラムに決定し、音声認識プログラムがリソースＸを使用しているか否かを判定する。
【００４１】
次いで、制御部４０は、対象プログラムがリソースＲ（Ｎ）を使用している場合には（ステップＳ７０：ＹＥＳ）、この対象プログラムを機能縮小することにより、リソースＲ（Ｎ）の使用率が閾値未満になるか否かを判定し（ステップＳ８０）、対象プログラムの機能縮小によりリソースＲ（Ｎ）の使用率が閾値未満になる場合には（ステップＳ８０：ＹＥＳ）、対象プログラムの機能縮小をし（ステップＳ９０）、対象プログラムの機能縮小によりリソースＲ（Ｎ）の使用率が閾値未満にならない、つまり機能縮小してもリソースＲ（Ｎ）の使用率が閾値以上の場合には（ステップＳ８０：ＮＯ）、対象プログラムを停止する（ステップＳ１００）。
【００４２】
例えば、Ｎ＝１及びＰ＝１であり、現在のリソースＸの使用率が９０％、現在、音声認識プログラムがリソースＸを５％（図４参照）使用している場合には、音声認識プログラムのリソースＸの使用率を３％（図４参照）に減ずることにより、リソースＸの使用率は８８％（閾値である９０％未満）となるので、音声認識プログラムの機能縮小、すなわち、音声認識プログラムのリソースＸに対する使用率を５％から３％に減少させる。一方、Ｎ＝１及びＰ＝１であり、現在のリソースＸの使用率が９３％、現在、音声認識プログラムがリソースＸを５％（図４参照）使用している場合には、音声認識プログラムのリソースＸの使用率を３％（図４参照）に減じても、リソースＸの使用率は９１％（閾値である９０％以上）なので、音声認識プログラムを停止する。なお、この場合には、音声認識プログラムを停止することにより、リソースＸの使用率は８８％となり閾値未満となる。
【００４３】
ステップＳ９０において対象プログラムを機能縮小した場合には、リソースＲ（Ｎ）の使用率が閾値未満となったので、次のリソースの使用率をチェックすべく、ステップＳ１２０に進み、また、ステップＳ１００において、対象プログラムを停止した場合には、当該リソースＲ（Ｎ）の使用率が未だ閾値以上の場合もあり得るので、リソースＲ（Ｎ）の使用率が閾値以上であるか否かを判定する（ステップＳ１１０）。
【００４４】
リソースＲ（Ｎ）の使用率が閾値以上である場合には（ステップＳ１１０：ＹＥＳ）、次に停止優先度が高い機能プログラムを対象プログラムとすべく、ステップＳ５０に進み、リソースＲ（Ｎ）の使用率が閾値未満である場合には（ステップＳ１１０：ＮＯ）、次のリソースの使用率をチェックすべく、ステップＳ１２０に進む。
【００４５】
例えば、Ｎ＝１及びＰ＝１であり、ステップＳ１００において音声認識プログラムを停止しても、リソースＸの使用率が９１％である場合には、ステップＳ５０に進むと、Ｐ＝２となり、ステップＳ６０において、停止優先度２のＭＰ３デコードプログラムが対象プログラムとして決定するので、ＭＰ３デコードプログラムに対して上述したステップＳ７０以下の処理を同様に行う。
【００４６】
なお、ステップＳ７０において、対象プログラムがリソースＲ（Ｎ）を使用していない場合には（ステップＳ７０：ＮＯ）、次に停止優先度が高い機能プログラムを対象プログラムとすべく、ステップＳ５０に進む。
【００４７】
例えば、ステップＳ７０において、Ｎ＝２及びＰ＝２であり、ＭＰ３デコードプログラムがリソースＹを使用していない場合には、ステップＳ５０に進むと、Ｐ＝３となり、ステップＳ６０において、停止優先度３のＵＩエンジンプログラムが対象プログラムとして決定するので、ＵＩエンジンプログラムに対して上述したステップＳ７０以下の処理を同様に行う。
【００４８】
また、ステップＳ３０において、リソースＲ（Ｎ）の使用率が閾値以上でない、つまり閾値未満の場合には（ステップＳ３０：ＮＯ）、次のリソースの使用率をチェックすべく、ステップＳ１２０に進む。
【００４９】
ステップＳ１２０では、制御部４０は、全リソースの使用率をチェックしたか否かを判定し、全リソースの使用率をチェックした場合には（ステップＳ１２０：ＹＥＳ）、処理を終了し、全リソースの使用率をチェックしていない場合には（ステップＳ１２０：ＮＯ）、次のリソースの使用率をチェックすべく、ステップＳ２０に進む。
【００５０】
例えば、ステップＳ１２０において、Ｎ＝１の場合には、ステップＳ２０に進むと、Ｎ＝２となり、ステップＳ３０において、リソースＲ（２）に相当するリソースＹの使用率が閾値以上であるか否かを判定するので、リソースＹに対して上述したステップＳ４０以下の処理を同様に行う。
【００５１】
以上に述べた本実施の形態によれば、情報処理装置が備える所定のリソースの使用率が高い場合、ユーザにとって影響の少ない機能プロプラグムを優先的に停止または機能縮小することができるので、リソースの使用率が高くリソースが不足した状況であっても、異常動作を引き起こすことなく、また、ユーザに不利益を被らせることなく、かつ、ユーザに気付かせることなく、情報処理装置を安定的に動作させることができる。
【００５２】
なお、本実施の形態では、複数のリソースを備えた情報処理装置について説明をしたが、一つのリソースを複数の機能プログラムが使用する構成の情報処理装置においても適用できることは勿論である。この場合にも、一のリソースの使用率が高い場合、ユーザにとって影響の少ない機能プロプラグムを優先的に停止または機能縮小することができるので、一のリソースの使用率が高くリソースが不足した状況であっても、異常動作を引き起こすことなく、また、ユーザに不利益を被らせることない。
【００５３】
＜実施の形態のまとめ＞
本発明の一態様の情報処理装置によれば、一または複数のリソース（例えば、リソースＸ、Ｙ、Ｚ、Ｗなど。具体的には、ＣＰＵ、メモリコントローラ、グラフィックエンジンなど）と、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラム（例えば、機能プログラムＡ、Ｂ、Ｃなど。具体的には、音声認識プログラム、ＵＩエンジプログラム、ＭＰ３デコードプログラムなど）と、を備えた情報処理装置（例えば、情報処理装置１）であって、前記一または複数のリソースの使用率に関する閾値（例えば、閾値データテーブル３０１）、及びそれぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度（例えば、リソース制限データテーブル３０２におけるユーザ影響度、停止優先度）を記憶している情報記憶手段（例えば、リソース管理テーブル３３、記憶部３０）と、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視手段（例えば、リソース監視部４１、制御部４０）と、前記リソース監視手段により監視された所定のリソースの使用率が、前記情報記憶手段に記憶されている前記所定のリソースの閾値以上の場合には、前記情報記憶手段に記憶されているユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御手段（例えば、機能プログラム制御部４２、制御部４０）と、を備えることを基本的構成とする。
【００５４】
この基本的構成の情報処理装置によれば、情報処理装置が備える所定のリソースの使用率が高い場合、ユーザにとって影響の少ない機能プロプラグムを優先的に停止または機能縮小することができるので、リソースの使用率が高くリソースが不足した状況であっても、異常動作を引き起こすことなく、また、ユーザに不利益を被らせることなく、かつ、ユーザに気付かせることなく、情報処理装置を安定的に動作させることができる。
【００５５】
また、上記基本的構成において、前記機能プログラム制御手段は、前記ユーザ影響度の最も小さい機能プログラムを、まず、停止または機能縮小する機能プログラムとして決定し、決定した機能プログラムを停止しても、前記所定のリソースの使用率が未だ前記所定のリソースの閾値以上の場合には、次に前記ユーザ影響度の小さい機能プログラムを、次に停止または機能縮小する機能プログラムとして決定し、次に決定した機能プログラムを停止または機能縮小するという処理を、前記所定のリソースの使用率が前記所定のリソースの閾値未満になるまで、前記ユーザ影響度の小さい順に順次行う（例えば、図５に示すリソース管理処理のステップＳ５０〜Ｓ１１０）ことが好適である。
【００５６】
この場合には、ユーザ影響度の小さい順序で順次機能プログラムを停止または機能縮小していくので、１つの機能プログラムの停止でもリソース不足が解消しない状態であっても、ユーザに不利益を被らせることなく、複数の機能プログラムを停止または縮小させることができる。
【００５７】
また、上述した各構成において、前記情報記憶手段は、前記複数の機能プログラムごとに、それぞれの機能プログラムが使用する各リソースの使用率の幅に関するリソース使用率情報（例えば、リソース制限データテーブル３０２における使用リソース）をさらに備えており、前記機能プログラム制御手段は、前記情報記憶手段に記憶されているユーザ影響度及びリソース使用率情報に基づいて、停止または機能縮小する機能プログラムを決定し（例えば、図５に示すリソース管理処理のステップＳ２０〜Ｓ６０）、前記情報記憶手段に記憶されている閾値及びリソース使用率情報、並びに現在の前記所定のリソースの使用率に基づいて、決定した機能プログラムを停止するか、機能縮小するかを決定する（例えば、図５に示すリソース管理処理のステップＳ７０〜Ｓ１１０）ことが好適である。
【００５８】
この場合には、リソース使用率情報、ユーザ影響度及び閾値を用いて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止するか、機能縮小するかを決定するので、よりきめ細かく、停止または機能縮小する機能プログラムの決定、及び停止または機能縮小の選択を行うことができる。
【００５９】
さらには、上述した各構成において、ユーザからの指示を入力する入力手段（例えば、入力部１０）と、前記入力手段を介した指示に基づいて、前記情報記憶手段に記憶されている閾値及びユーザ影響度を更新する情報更新手段（例えば、リソース管理テーブル設定部４３）と、をさらに備えていてもよい。
【００６０】
この場合には、ユーザ環境に最適な閾値及びユーザ影響度を設定することができるので、ユーザにとってより利便性のよいシステムを構築できる。
【００６１】
また、本発明の一態様のリソース管理方法によれば、一または複数のリソース（例えば、リソースＸ、Ｙ、Ｚ、Ｗなど。具体的には、ＣＰＵ、メモリコントローラ、グラフィックエンジンなど）と、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラム（例えば、機能プログラムＡ、Ｂ、Ｃなど。具体的には、音声認識プログラム、ＵＩエンジプログラム、ＭＰ３デコードプログラムなど）と、を備えた情報処理装置（例えば、情報処理装置１）におけるリソース管理方法（例えば、図５に示すリソース管理処理の流れ）であって、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップ（例えば、図５に示すリソース管理処理のステップＳ１０〜Ｓ３０，Ｓ１２０）と、前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップ（例えば、図５に示すリソース管理処理のステップＳ４０〜Ｓ１１０）と、を備えることを基本的構成とする。
【００６２】
この基本的構成のリソース管理方法によれば、情報処理装置が備える所定のリソースの使用率が高い場合、ユーザにとって影響の少ない機能プロプラグムを優先的に停止または機能縮小することができるので、リソースの使用率が高くリソースが不足した状況であっても、異常動作を引き起こすことなく、また、ユーザに不利益を被らせることなく、かつ、ユーザに気付かせることなく、情報処理装置を安定的に動作させることができる。
【００６３】
また、本発明の一態様のリソース管理プログラムによれば、一または複数のリソース（例えば、リソースＸ、Ｙ、Ｚ、Ｗなど。具体的には、ＣＰＵ、メモリコントローラ、グラフィックエンジンなど）と、前記一または複数のリソースのうち少なくとも一以上のリソースを使用して実行される複数の機能プログラム（例えば、機能プログラムＡ、Ｂ、Ｃなど。具体的には、音声認識プログラム、ＵＩエンジプログラム、ＭＰ３デコードプログラムなど）と、を備えた情報処理装置（例えば、情報処理装置１）におけるリソース管理プログラム（例えば、リソース管理プログラム３２）であって、前記一または複数のリソースに対して、リソースの使用率を監視するリソース監視ステップ（例えば、図５に示すリソース管理処理のステップＳ１０〜Ｓ３０，Ｓ１２０）と、前記リソース監視ステップにより監視された所定のリソースの使用率が閾値以上の場合には、それぞれの機能プログラムを停止または機能縮小した場合にユーザに与えるそれぞれの不利益度合いに関する情報であるユーザ影響度に基づいて、停止または機能縮小する機能プログラムを決定し、決定した機能プログラムを停止または機能縮小する機能プログラム制御ステップ（例えば、図５に示すリソース管理処理のステップＳ４０〜Ｓ１１０）と、を前記情報処理装置に実行させることを基本的構成とする。
【００６４】
この基本的構成のリソース管理プログラムによれば、情報処理装置が備える所定のリソースの使用率が高い場合、ユーザにとって影響の少ない機能プロプラグムを優先的に停止または機能縮小するプログラムを提供できるので、リソースの使用率が高くリソースが不足した状況であっても、異常動作を引き起こすことなく、また、ユーザに不利益を被らせることなく、かつ、ユーザに気付かせることなく、情報処理装置を安定的に動作させることができる。
【００６５】
以上、本発明の実施の形態について説明してきたが、本発明は、上述した実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲において、本発明の実施の形態に対して種々の変形や変更を施すことができ、そのような変形や変更を伴うものもまた、本発明の技術的範囲に含まれるものである。
【符号の説明】
【００６６】
１  情報処理装置
１０  入力部
２０  出力部
３０  記憶部
３１  機能プログラム
３２  リソース管理プログラム
３３  リソース管理テーブル
４０  制御部
４１  リソース監視部
４２  機能プログラム制御部
４３  リソース管理テーブル設定部
３０１  閾値データテーブル
３０２  リソース制限データテーブル
【図１】
2013149046.tif 000003
【図２】
2013149046.tif 000004
【図３】
2013149046.tif 000005
【図４】
2013149046.tif 000006
【図５】
2013149046.tif 000007