"情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を記憶する記憶部と、前記第1要素の状態変化を検出する検出部と、前記検出部によって前記第1要素の状態変化が検出された場合に前記第2要素の状態を判定する判定部と、前記記憶部によって記憶された対応情報から、前記検出部によって検出された状態変化と、前記判定部によって判定された状態と、の組み合わせに対応する制御規則を検索する検索部と、前記検索部によって検索された制御規則に基づいて前記中央処理装置の動作周波数を制御する制御部と、を備えることを特徴とする情報処理装置。前記第1要素の状態変化は、ユーザが前記情報処理装置の操作を終了する場合のハードウェアの状態変化を含み、前記第2要素の状態は、前記中央処理装置によって実行される特定のソフトウェアが実行中か否かの状態を含み、前記対応情報においては、前記操作を終了する場合のハードウェアの状態変化と前記特定のソフトウェアが実行中の状態との組み合わせに対して、前記操作を終了する場合のハードウェアの状態変化と前記特定のソフトウェアが実行中でない状態との組み合わせよりも前記中央処理装置の処理能力が高くなる制御規則が対応付けられることを特徴とする請求項1に記載の情報処理装置。前記制御規則は、前記制御部が前記動作周波数を制御するためのアルゴリズムおよびパラメータの少なくとも一方の変更を示す情報であり、前記制御部は、前記検索部によって検索された制御規則に基づいて前記アルゴリズムおよびパラメータの少なくとも一方を変更することを特徴とする請求項1または2に記載の情報処理装置。前記第1要素の状態変化は、前記中央処理装置の負荷量の閾値未満から前記閾値以上への負荷増加を含み、前記制御部は、前記検出部によって前記負荷増加が検出された場合に前記動作周波数の上限値を増加させることを特徴とする請求項1~3のいずれか一つに記載の情報処理装置。前記中央処理装置が前記動作周波数の上限値で動作した時間の所定の期間内における割合に基づいて前記負荷量を算出する算出部を備え、前記検出部は、前記算出部によって算出された割合に基づいて前記負荷増加を検出することを特徴とする請求項4に記載の情報処理装置。前記第1要素の状態変化は、前記特定のソフトウェアの動作状態の変化を含み、前記検出部は、前記特定のソフトウェアによる前記中央処理装置の利用時間に基づいて前記動作状態の変化を検出することを特徴とする請求項1~5のいずれか一つに記載の情報処理装置。前記情報処理装置にアプリケーションをインストールするインストーラを備え、前記第1要素の状態変化は前記中央処理装置によって実行される特定のソフトウェアの起動を含み、または、前記第2要素の状態は前記特定のソフトウェアが実行中か否かの状態を含み、前記インストーラは、インストールの対象のアプリケーションの前記情報処理装置に対するアクセス権限が特定のアクセス権限である場合に前記対象のアプリケーションを前記特定のソフトウェアとして記憶することを特徴とする請求項1~6のいずれか一つに記載の情報処理装置。情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を取得し、前記第1要素の状態変化を検出し、前記第1要素の状態変化を検出した場合に前記第2要素の状態を判定し、前記対応情報から、検出した前記状態変化と、判定した前記状態と、の組み合わせに対応する制御規則を検索し、検索した前記制御規則に基づいて前記中央処理装置の動作周波数を制御する、処理をコンピュータに実行させることを特徴とする情報処理プログラム。情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を取得し、前記第1要素の状態変化を検出し、前記第1要素の状態変化を検出した場合に前記第2要素の状態を判定し、前記対応情報から、検出した前記状態変化と、判定した前記状態と、の組み合わせに対応する制御規則を検索し、検索した前記制御規則に基づいて前記中央処理装置の動作周波数を制御する、ことを特徴とする情報処理方法。しかしながら、上述した従来技術では、たとえばスマートフォンなどの多機能な情報処理装置においてはアプリケーションやハードウェアが様々な状態で動作するため、CPUの動作周波数を状況に応じて適切に設定することが困難であるという問題がある。本発明は、上述した従来技術による問題点を解消するため、CPUの動作周波数を状況に応じて適切に設定することができる情報処理装置、情報処理プログラムおよび情報処理方法を提供することを目的とする。開示技術は、情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を取得し、前記第1要素の状態変化を検出し、前記第1要素の状態変化を検出した場合に前記第2要素の状態を判定し、前記対応情報から、検出した前記状態変化と、判定した前記状態と、の組み合わせに対応する制御規則を検索し、検索した前記制御規則に基づいて前記中央処理装置の動作周波数を制御する。本発明の一側面によれば、CPUの動作周波数を状況に応じて適切に設定することができるという効果を奏する。以下に添付図面を参照して、本発明にかかる情報処理装置、情報処理プログラムおよび情報処理方法の実施の形態を詳細に説明する。情報処理装置図1は、本発明にかかる情報処理装置の機能ブロック図である。図1に示すように、本発明にかかる情報処理装置100は、たとえば、記憶部110と、検出部120と、判定部130と、検索部140と、制御部150と、中央処理装置160と、を備えている。記憶部110は、対応情報111を記憶する。対応情報111は、情報処理装置100の第1要素の状態変化イベントと、情報処理装置100の第2要素の状態と、の各組み合わせに対して、中央処理装置160の動作周波数の制御規則が対応付けられる対応情報である。第1要素、第2要素および制御規則については後述する。検出部120は、情報処理装置100の第1要素の状態変化を検出する。検出部120は、第1要素の状態変化を検出した場合に、第1要素の状態変化を検出したことを判定部130および検索部140へ通知する。判定部130は、検出部120から第1要素の状態変化を検出したことを通知されると、情報処理装置100の第2要素の状態を判定する。判定部130は、判定した第2要素の状態を検索部140へ通知する。検索部140は、記憶部110に記憶された対応情報111から、検出部120から検出を通知された第1要素の状態変化と、判定部130から通知された第2要素の状態と、の組み合わせに対応する制御規則を検索する。検索部140は、検索により得られた制御規則を制御部150へ通知する。制御部150は、検索部140から通知された制御規則に基づいて中央処理装置160の動作周波数を制御する。中央処理装置160は、情報処理装置100のCPUである。中央処理装置160は、情報処理装置100のハードウェアを制御したり、情報処理装置100のソフトウェアを実行したりする。<第1要素について>情報処理装置100の第1要素は、たとえば情報処理装置100が備えるハードウェアである。この場合は、第1要素の状態変化の一例として、LCDLiquidCrystalDisplay:液晶ディスプレイのオン/オフ、外部給電の開始/終了、電池残量の閾値未満への低下などを挙げることができる。または、第1要素は、たとえば情報処理装置100の特定のソフトウェアである。この場合は、第1要素の状態変化の一例として、特定のソフトウェアの起動や停止などを挙げることができる。特定のソフトウェアは、たとえば、情報処理装置100にインストールされ中央処理装置160によって実行される各アプリケーションのうちの特定のアプリケーションである。<第2要素について>情報処理装置100の第2要素は、第1要素と異なる情報処理装置100の要素である。たとえば、第2要素は、情報処理装置100が備えるハードウェアである。この場合は、第2要素の状態の一例としては、LCDのオン/オフの状態、外部給電の状態、電池残量などを挙げることができる。または、情報処理装置100の第2要素は、情報処理装置100の特定のソフトウェアである。この場合は、第2要素の状態の一例としては、特定のソフトウェアが実行中か否かの状態などを挙げることができる。<制御規則>制御規則は、たとえば、中央処理装置160の動作周波数を制御するアルゴリズムやパラメータなどの制御ポリシである。中央処理装置160の処理能力および消費電力は、動作周波数の制御ポリシによって変化する。また、制御規則は、制御ポリシの変更方法を指示するアクションなどであってもよい。動作周波数を制御するアルゴリズムとしては、たとえば、中央処理装置160の負荷たとえば利用率や実行中のアプリケーションの数などの変化に基づいて中央処理装置160の動作周波数の変更量を決定するアルゴリズムなどを挙げることができる。動作周波数を制御するパラメータとしては、たとえば、中央処理装置160の動作周波数の上限値や下限値などを挙げることができる。たとえば、中央処理装置160の動作周波数が比較的高くなる制御ポリシを適用すると、中央処理装置160の処理能力および消費電力が比較的高くなる。一方、中央処理装置160の動作周波数が比較的低くなる制御ポリシを適用すると、中央処理装置160の処理能力および消費電力が比較的低くなる。このように、情報処理装置100においては、第1要素の状態変化だけでなく第2要素の状態も参照して中央処理装置160の制御規則を制御する。これにより、情報処理装置100のソフトウェアやハードウェアが様々な状態で動作する場合において、状況に応じて処理能力と消費電力を適切に制御することが可能になる。情報処理装置のハードウェア構成図2は、情報処理装置のハードウェア構成図である。図2に示す情報処理装置100は、図1に示した情報処理装置100の構成例である。情報処理装置100は、たとえばスマートフォンやタブレットPCなどの携帯情報端末である。情報処理装置100は、CPU201と、メインメモリ202と、補助メモリ203と、クロック供給回路204と、電圧供給回路205と、RF部206と、アンテナ207と、電池パック208と、をハードウェアモジュールとして備えている。また、情報処理装置100は、電源回路209と、カメラモジュール210と、ブルートゥースインターフェース211と、GPSモジュール212と、LCD213と、センサ214と、外部給電部215と、をハードウェアモジュールとして備えている。各ハードウェアモジュールは、たとえばバスによって接続されている。CPU201は、図1に示した中央処理装置160に対応する構成である。CPU201は、情報処理装置100の全体の制御を司る。また、CPU201は、クロック供給回路204から供給されるクロック信号および電圧供給回路205から供給される電圧によって動作する。メインメモリ202は、たとえばRAMRandomAccessMemoryである。メインメモリ202は、CPU201のワークエリアとして使用される。補助メモリ203は、たとえば、ハードディスクやフラッシュメモリなどの不揮発メモリである。補助メモリ203には、情報処理装置100を動作させる各種のプログラムが記憶されている。補助メモリ203に記憶されたプログラムは、メインメモリ202にロードされてCPU201によって実行される。クロック供給回路204は、周波数が可変のクロック信号をCPU201へ供給する。クロック供給回路204は、たとえば、クロック信号を発振する水晶振動子およびRTCRealTimeClockなどによって実現することができる。電圧供給回路205は、電源回路209から供給される電力によってCPU201に可変の電圧を供給する。電圧供給回路205は、たとえばボルテージディテクタおよびボルテージレギュレータなどによって実現することができる。RF部206RadioFrequency:高周波は、CPU201からの制御により、高周波信号をアンテナ207から他の無線通信装置へ送信するトランスミッタの機能を有する。また、RF部206は、アンテナ207によって受信された高周波信号をベースバンド信号に変換してCPU201へ出力するレシーバの機能を有する。電池パック208は、電源回路209へ電力を供給する。電池パック208は、たとえばリチウムイオン電池などの電池と電池保護用のICIntegratedCircuit:集積回路などによって実現することができる。電源回路209は、電池パック208から供給される電力を情報処理装置100の各ハードウェアモジュールへ供給する。また、電源回路209は、外部給電部215に外部電源が接続されている場合は、外部給電部215から供給される電力を情報処理装置100の各ハードウェアモジュールへ供給してもよい。電源回路209は、たとえばスイッチングレギュレータおよびボルテージレギュレータによって実現することができる。カメラモジュール210は、CPU201からの制御により、被写体を撮影し、撮影により得られた映像データを取得する。ブルートゥースインターフェース211は、CPU201からの制御により、他の通信装置との間でBluetooth登録商標による無線通信を行う通信インターフェースである。また、情報処理装置100は、ブルートゥースインターフェース211の他に、無線LANLocalAreaNetwork:構内通信網などの無線通信インターフェースを備えていてもよい。GPSモジュール212GlobalPositioningSystem:全地球測位システムは、CPU201からの制御により、人工衛星の発する電波を受信することによって情報処理装置100の地球上の現在位置を示す位置情報を取得する。LCD213は、CPU201からの制御により、ユーザに対して画像を表示する画像表示装置である。また、LCD213は、タッチパッドなどの位置入力機能も兼ね備えたタッチパネルであってもよい。センサ214は、CPU201からの制御により、情報処理装置100の内部の各状態を示す情報を取得する。センサ214としては、たとえば、加速度センサ、ジャイロセンサ、照度センサ、地磁気センサ、傾きセンサ、加圧センサ、接近センサ、温度センサなどを挙げることができる。実施の形態1実施の形態1にかかる情報処理装置の構成図3は、実施の形態1にかかる情報処理装置の機能ブロック図である。図3に示すように、実施の形態1にかかる情報処理装置100は、ハードウェア310としてCPU311および周波数/電圧制御回路312を備えている。CPU311は、図2に示したCPU201に対応する構成である。周波数/電圧制御回路312は、図2に示したクロック供給回路204および電圧供給回路205に対応する構成である。周波数/電圧制御回路312は、カーネル320から出力される制御命令に基づいてCPU311の動作周波数およびCPU311に供給される電圧を制御する。たとえば、周波数/電圧制御回路312は、CPU311の動作周波数を減少させる場合はCPU311の電圧も減少させる。また、周波数/電圧制御回路312は、CPU311の動作周波数を増加させる場合はCPU311の電圧も増加させる。また、情報処理装置100は、カーネル320と、ハードウェア監視モジュール330と、監視対象アプリ一覧341と、アプリ起動/停止監視モジュール342と、ポリシ制御ソフト350と、の機能を有する。また、情報処理装置100は、システム状態調査モジュール360と、制御ポリシ変更ルール表370と、の機能を有する。図1に示した制御部150は、たとえば、周波数/電圧制御回路312、カーネル320およびポリシ制御ソフト350によって実現することができる。カーネル320は、たとえば、CPU311によって実行されるOSOperatingSystem:オペレーティングシステムの一部である。カーネル320は、CPUスケジューラ321と、目標周波数計算モジュール322と、動作周波数設定モジュール323と、システム状態取得用I/F324と、を備えている。CPUスケジューラ321は、CPU311の利用率を定期的に取得し、取得したCPU311の利用率を目標周波数計算モジュール322へ通知する。目標周波数計算モジュール322は、CPU311の動作周波数の制御ポリシと、CPUスケジューラ321から通知された利用率と、に基づいて目標とするCPU311の動作周波数を決定する。また、目標周波数計算モジュール322は、ポリシ制御ソフト350から出力される設定変更命令にしたがって制御ポリシを変更する。目標周波数計算モジュール322は、決定した目標の動作周波数を動作周波数設定モジュール323へ通知する。動作周波数設定モジュール323は、CPU311の動作周波数が、目標周波数計算モジュール322から通知された動作周波数となるように周波数/電圧制御回路312へ制御命令を出力するドライバである。ハードウェア監視モジュール330は、システム状態取得用I/F324から出力されるハードウェア状態を監視し、情報処理装置100のハードウェアの状態変化を検出する。ハードウェア監視モジュール330は、ハードウェアの状態変化を検出すると、ハードウェアの状態変化を検出したことを示すハードウェア状態変化イベントをポリシ制御ソフト350へ通知する。監視対象アプリ一覧341は、CPU311によって実行される情報処理装置100のアプリケーションのうちの監視対象のアプリケーション特定のソフトウェアを示す情報である。監視対象のアプリケーションは、たとえば、音楽や動画の再生アプリ、通話アプリなどの、CPU311の大きな処理能力が要求されるアプリケーションである。監視対象アプリ一覧341は、たとえば図2に示した補助メモリ203に記憶されている。アプリ起動/停止監視モジュール342は、システム状態取得用I/F324から出力されるアプリ/プロセス状態を監視し、監視対象アプリ一覧341に含まれるアプリケーションプロセスなどでもよいの起動または停止を検出する。アプリ起動/停止監視モジュール342は、アプリケーションの起動または停止を検出すると、アプリケーションの起動または停止を検出したことを示すアプリ起動/停止イベントをポリシ制御ソフト350へ通知する。図1に示した検出部120は、たとえばハードウェア監視モジュール330およびアプリ起動/停止監視モジュール342の少なくとも一方によって実現することができる。ポリシ制御ソフト350は、目標周波数計算モジュール322へ設定変更命令を出力することで、CPU311の動作周波数の制御ポリシを制御する。具体的には、ポリシ制御ソフト350は、ハードウェア監視モジュール330からハードウェア状態変化イベントが通知された場合に、システム状態取得用I/F324から出力されるハードウェア状態やアプリ/プロセス状態などのシステム状態を取得する。ポリシ制御ソフト350は、ハードウェア監視モジュール330から通知されたハードウェア状態変化イベントと、システム状態取得用I/F324から取得したシステム状態と、をキーとして制御ポリシ変更ルール表370からアクションリストを検索する。また、ポリシ制御ソフト350は、アプリ起動/停止監視モジュール342からアプリ起動/停止イベントが通知された場合に、システム状態取得用I/F324から出力されるハードウェア状態やアプリ/プロセス状態などのシステム状態を取得する。そして、ポリシ制御ソフト350は、アプリ起動/停止監視モジュール342から通知されたアプリ起動/停止イベントと、システム状態取得用I/F324から取得したシステム状態と、をキーとしてポリシ制御ソフト350からアクションリストを検索する。ポリシ制御ソフト350は、検索したアクションにしたがって制御ポリシを変更することを指示する設定変更命令をカーネル320へ通知する。これにより、カーネル320の目標周波数計算モジュール322によってCPU311の動作周波数の制御ポリシが変更される。図1に示した検索部140は、たとえばポリシ制御ソフト350によって実現することができる。システム状態調査モジュール360は、ポリシ制御ソフト350からの要求に応じて、ハードウェア状態やアプリ/プロセス状態などのシステム状態をシステム状態取得用I/F324から取得する。ハードウェア状態は、情報処理装置100のハードウェアの状態を示す情報である。アプリ/プロセス状態は、情報処理装置100の特定のアプリケーションやプロセスが実行中であるか否かを示す情報である。システム状態調査モジュール360は取得したシステム情報をポリシ制御ソフト350へ出力する。図1に示した判定部130は、たとえばシステム状態調査モジュール360によって実現することができる。制御ポリシ変更ルール表370は、第1要素の状態変化イベントと、第2要素の状態と、の組み合わせごとにアクションリストアクションが対応付けられた対応情報である。第1要素の状態変化には、ハードウェア状態変化イベントやアプリ起動/停止イベントなどが含まれる。第2要素の状態には、ハードウェア状態やアプリ/プロセス状態などが含まれる。アクションリストが示すアクションとしては、たとえば、動作周波数の制御のアルゴリズム処理優先や電力優先などの変更や、動作周波数の制御のパラメータ動作周波数の変更割合、上限値や下限値などの増減などを挙げることができる。制御ポリシ変更ルール表370は、たとえば図2に示した補助メモリ203に記憶されている。テーブル371は、制御ポリシ変更ルール表370の具体例である。テーブル371においては、ハードウェア状態変化イベントやアプリ起動/停止イベントなどのイベントと、ハードウェア状態ハード状態と、アプリ/プロセス状態アプリ状態と、の組み合わせごとにアクションが対応付けられている。このように、実施の形態1にかかる情報処理装置100は、システム状態調査モジュール360を備え、イベント通知時にシステム状態を調査する。そして、情報処理装置100は、イベントとシステム状態の組み合わせをキーとして多次元の制御ポリシ変更ルール表370を検索し、検索結果に基づいて制御ポリシを変更する。これにより、CPU311の動作周波数を状況に応じて適切に設定することができる。たとえば、LCD213をオフ、または外部給電部215からの外部給電を中断などのイベントが発生した場合でも、特定のアプリケーションが起動している場合は、特定のアプリケーションが起動していない場合よりもCPUの動作周波数の上限値を高くする。これにより、特定のアプリケーションの応答性能を向上させることができる。また、制御ポリシ変更ルール表370は、制御ポリシそのものではなく、制御ポリシの変更のアクションを格納する構造とすることにより、制御ポリシ変更ルール表370のエントリ数ルール数を少なくすることができる。たとえば、動作周波数の上限値や下限値などのアクションはそれぞれ1つ1行のエントリに格納することができるため、現在の上限値や下限値ごとに変更後の上限値や下限値を対応付ける場合と比べてエントリ数を少なくすることができる。ただし、制御ポリシ変更ルール表370に制御ポリシそのものを格納する構成とすることも可能である。この場合も、CPU311の動作周波数を状況に応じて適切に設定することができる。情報処理装置による動作周波数の制御図4は、情報処理装置による動作周波数の制御の一例を示すフローチャートである。情報処理装置100は、CPU311の動作周波数の制御として、たとえば図4に示す各ステップを実行する。まず、情報処理装置100は、たとえば補助メモリ203に記憶された設定ルールを読み取るステップS401。設定ルールは、たとえば、情報処理装置100のシステム状態と、CPU311の動作周波数の制御ポリシと、を対応付ける情報である。システム状態には、たとえば、情報処理装置100のハードウェアの状態や、情報処理装置100のアプリケーションの起動または停止の状態などが含まれる。つぎに、情報処理装置100は、情報処理装置100のシステム状態を取得するステップS402。つぎに、情報処理装置100は、CPU311の動作周波数の制御ポリシの初期設定を行うステップS403。具体的には、情報処理装置100は、ステップS401によって読み取った設定ルールにおいて、ステップS402によって取得したシステム状態に対応する制御ポリシをCPU311の動作周波数の制御ポリシとして目標周波数計算モジュール322に設定する。つぎに、情報処理装置100は、情報処理装置100のシステムイベントが発生したか否かを判断しステップS404、システムイベントが発生するまで待つステップS404:Noのループ。システムイベントには、たとえば、特定のハードウェアの状態が所定の状態に変化したことを示すイベントや、特定のアプリケーションの起動や停止などのイベントなどが含まれる。ステップS404において、システムイベントが発生するとステップS404:Yes、情報処理装置100は、発生したシステムイベントが情報処理装置100のシャットダウンのイベントであるか否かを判断するステップS405。シャットダウンのイベントである場合ステップS405:Yesは、情報処理装置100は一連の制御を終了する。ステップS405において、シャットダウンのイベントでない場合ステップS405:Noは、情報処理装置100は、情報処理装置100のシステム状態を取得するステップS406。つぎに、情報処理装置100は、制御ポリシ変更ルール表370から、ステップS404において発生したシステムイベントとステップS406によって取得したシステム状態をキーとしてアクションリストを検索するステップS407。つぎに、情報処理装置100は、ステップS407によって検索したアクションリストが示すアクションを実行しステップS408、ステップS404へ戻る。以上の各ステップにより、システム状態に基づいてCPU311の動作周波数の制御ポリシの初期設定を行うことができる。また、システムイベント発生時に、発生したシステムイベントと、システムイベント発生時のシステム状態と、の組み合わせに基づいてCPU311の動作周波数の制御ポリシを変更することができる。ポリシ制御ソフトによる処理図5は、ポリシ制御ソフトによる処理の一例を示すフローチャートである。図5に示す各ステップは、たとえば図4に示したステップS404,S406~S408に対応する処理である。まず、ポリシ制御ソフト350は、ハードウェア監視モジュール330またはアプリ起動/停止監視モジュール342からシステムイベントが通知されたか否かを判断しステップS501、システムイベントが通知されるまで待つステップS501:Noのループ。ステップS501において、システムイベントが通知されるとステップS501:Yes、ポリシ制御ソフト350は、システム状態調査モジュール360へシステム状態の調査を依頼するステップS502。つぎに、ポリシ制御ソフト350は、ステップS502による調査の依頼に対してシステム状態調査モジュール360から通知されたシステム状態を取得するステップS503。つぎに、ポリシ制御ソフト350は、ステップS501において通知されたシステムイベントと、ステップS503によって取得したシステム状態と、の組み合わせをキーとして制御ポリシ変更ルール表370を検索するステップS504。そして、ポリシ制御ソフト350は、ステップS504による検索において、キーが一致するエントリが制御ポリシ変更ルール表370にあるか否かを判断するステップS505。ステップS505において、一致するエントリがない場合ステップS505:Noは、ポリシ制御ソフト350は、ステップS501へ戻る。一致するエントリがある場合ステップS505:Yesは、ポリシ制御ソフト350は、一致するエントリのアクションリストを制御ポリシ変更ルール表370から取得するステップS506。つぎに、ポリシ制御ソフト350は、ステップS506によって取得したアクションリストの内容を実行しステップS507、ステップS501へ戻る。以上の各ステップにより、ポリシ制御ソフト350は、システムイベントが発生した時のシステム状態を取得し、システムイベントとシステム状態の組み合わせに応じてCPU311の動作周波数の制御ポリシを変更することができる。以上の各ステップにより、システムイベント発生時に、発生したシステムイベントと、システムイベント発生時のシステム状態と、の組み合わせに基づいてCPU311の動作周波数の制御ポリシを変更することができる。システム状態調査モジュールによる処理図6は、システム状態調査モジュールによる処理の一例を示すフローチャートである。システム状態調査モジュール360は、たとえば図6に示す各ステップを実行する。まず、システム状態調査モジュール360は、ポリシ制御ソフト350からシステム状態の調査の依頼があったか否かを判断しステップS601、調査の依頼があるまで待つステップS601:Noのループ。ステップS601において、調査の依頼があるとステップS601:Yes、システム状態調査モジュール360は、調査対象のシステム状態をカーネル320から取得するステップS602。つぎに、システム状態調査モジュール360は、ステップS602によって取得したシステム状態をポリシ制御ソフト350へ通知しステップS603、ステップS601へ戻る。以上の各ステップにより、ポリシ制御ソフト350からのシステム状態の調査の依頼に対して、調査対象のシステム状態をカーネル320から取得してポリシ制御ソフト350へ通知することができる。実施の形態1にかかる制御ポリシ変更ルール表図7は、実施の形態1にかかる制御ポリシ変更ルール表の一例を示す図表である。図7に示す制御ポリシ変更ルール表370は、図3に示した制御ポリシ変更ルール表370の一例である。図7に示すように、制御ポリシ変更ルール表370においては、イベント第1要素の状態変化と、ハード状態および監視対象アプリ状態第2要素の状態と、の組み合わせに対してアクションリストが対応付けられている。制御ポリシ変更ルール表370のANYは任意の状態を示している。イベントのLCDオンは、LCD213がオフからオンになったことを示すイベントである。イベントのLCDオフは、LCD213がオンからオフになったことを示すイベントである。イベントの監視対象アプリ起動は、監視対象のアプリケーションが起動されたことを示すイベントである。監視対象アプリ停止は、監視対象のアプリケーションが停止されたことを示すイベントである。ハード状態は、情報処理装置100の各ハードウェアの状態を示している。LCDは、LCD213のオン/オフの状態を示している。バッテリ残量は、電池パック208の残量を示している。外部給電有無は、電源回路209に接続された外部電源からの給電の有無を示している。装置内部温度は、センサ214によって計測された情報処理装置100の内部の温度を示している。無線は、たとえばブルートゥースインターフェース211や無線LANなどの無線機能のオン/オフの状態を示している。監視対象アプリ状態は、監視対象のアプリケーションのアクティブまたはスリープの状態を示している。アクティブは、監視対象のアプリケーションが起動されていることを示している。スリープは、監視対象のアプリケーションが起動していないことを示している。アクションリストの処理優先アルゴリズムおよび電力優先アルゴリズムは、CPU311の動作周波数の制御のアルゴリズムを示している。処理優先アルゴリズムは、電力優先アルゴリズムよりもCPU311の動作周波数および消費電力が高くなるアルゴリズムであるたとえば図8-1,図8-2参照。図7に示すように、ポリシ制御ソフト350は、LCD213がオンになった場合は、制御ポリシのアルゴリズムを処理優先アルゴリズムにするとともに、CPU311の動作周波数の制限値として上限値1および下限値1を設定する。上限値1は、後述の上限値2より高い上限値である。下限値1は、後述の下限値2より高い下限値である。また、ポリシ制御ソフト350は、LCD213がオフになり、かつ監視対象のアプリケーションの状態がスリープである場合は、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値2および下限値2を設定する。また、ポリシ制御ソフト350は、LCD213がオフになり、かつ監視対象のアプリケーションの状態がアクティブである場合は、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値1および下限値1を設定する。また、ポリシ制御ソフト350は、LCD213がオンの状態で監視対象のアプリケーションが起動すると、監視対象アプリケーション状態をアクティブに設定する。また、ポリシ制御ソフト350は、LCD213がオンの状態で監視対象のアプリケーションが停止すると、監視対象アプリケーション状態をスリープに設定する。また、ポリシ制御ソフト350は、LCD213がオフの状態で監視対象のアプリケーションが起動すると、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値1および下限値1を設定し、監視対象アプリケーション状態をアクティブに設定する。また、ポリシ制御ソフト350は、LCD213がオフの状態で監視対象のアプリケーションが停止すると、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値2および下限値2を設定し、監視対象アプリケーション状態をスリープに設定する。アルゴリズムおよび制限値図8-1は、電力優先アルゴリズムおよび制限値の一例を示す図である。図8-1において、横軸は時間を示し、縦軸はCPU311の動作周波数を示している。タイミングt1からタイミングt2にかけて情報処理装置100が実行中のアプリケーションの数が増加し、タイミングt2より後は情報処理装置100が実行中のアプリケーションの数が減少したとする。上限値811および下限値812は、それぞれ図7に示した上限値1および下限値1を示している。動作周波数変化810は、電力優先アルゴリズムを用いた場合のCPU311の動作周波数の変化を示している。動作周波数変化810に示すように、情報処理装置100が実行中のアプリケーションの数が増加すると、CPU311の動作周波数が上限値811となるまで比較的緩やかに段階的に増加する。また、情報処理装置100が実行中のアプリケーションの数が減少すると、CPU311の動作周波数が下限値812となるまで比較的急峻に段階的に低下する。これにより、CPU311の動作周波数が全体的に低くなる。このため、CPU311の電圧も低くなり、CPU311の消費電力を低くすることができる。なお、CPU311の消費電力は、たとえばCPU311の動作周波数および電圧の2乗に比例して変化する。このため、CPU311の動作周波数や電圧を低下させることでCPU311の消費電力を低下させることができる。図8-2は、処理優先アルゴリズムの一例および制限値を示す図である。図8-2において、図8-1に示した部分と同様の部分については説明を省略する。図8-2に示す上限値821および下限値822は、それぞれ図7に示した上限値2および下限値2を示している。したがって、上限値821および下限値822は図8-1に示した上限値811および下限値812より高い値である。動作周波数変化820は、処理優先アルゴリズムを用いた場合のCPU311の動作周波数の変化を示している。動作周波数変化820に示すように、情報処理装置100が実行中のアプリケーションの数が増加すると、CPU311の動作周波数が上限値821まで急峻に増加する。また、情報処理装置100が実行中のアプリケーションの数が減少すると、CPU311の動作周波数が下限値822となるまで比較的緩やかに段階的に低下する。これにより、CPU311の動作周波数が全体的に高くなり、CPU311の処理能力を高くすることができる。これにより、起動したアプリケーションをスムーズに実行し、たとえばアプリケーションの応答性能を向上させることができる。実施の形態1にかかる動作周波数の制御図9-1~図9-3は、実施の形態1にかかる動作周波数の制御の一例を示す図である。図9-1~図9-3において、横軸は時間を示し、縦軸はCPU311の動作周波数を示している。縦軸の周波数f5は、図7に示した上限値1に対応する周波数であるとする。縦軸の周波数f3は、図7に示した上限値2に対応する周波数であるとする。図9-1に示す動作周波数変化910は、LCD213がオンになった場合に設定される制御ポリシによるCPU311の動作周波数の変化を示している。LCD213がオンになった場合は、図7の制御ポリシ変更ルール表370に示したように、処理優先アルゴリズムおよび動作周波数の上限値1が設定される。このため、動作周波数の上限値は比較的高い周波数f5となり、たとえばアプリケーションの起動に対して動作周波数が急峻に増加する。図9-2に示す動作周波数変化920は、LCD213がオフになり、監視対象のアプリケーションが実行中である場合に設定される制御ポリシによるCPU311の動作周波数の変化を示している。この場合は、図7の制御ポリシ変更ルール表370に示したように、電力優先アルゴリズムおよび動作周波数の上限値1が設定される。このため、動作周波数の上限値は比較的高い周波数f5としつつ、たとえばアプリケーションの起動に対して動作周波数が比較的緩やかに段階的に増加する。図9-3に示す動作周波数変化930は、LCD213がオフになり、監視対象のアプリケーションが実行中でない場合に設定される制御ポリシによるCPU311の動作周波数の変化を示している。この場合は、図7の制御ポリシ変更ルール表370に示したように、電力優先アルゴリズムおよび動作周波数の上限値2が設定される。このため、動作周波数の上限値は比較的低い周波数f1としつつ、たとえばアプリケーションの起動に対して動作周波数が比較的緩やかに段階的に増加する。これにより、たとえば、LCD213がオフになった際に、監視対象のアプリケーションが実行中である場合は、監視対象のアプリケーションが実行中でない場合よりもCPU311の動作周波数の上限値を高く設定することができる。たとえば監視対象のアプリケーションが音楽の再生アプリケーションである場合は、再生アプリケーションを実行中にLCD213がオフになっても、CPU311の動作周波数の上限値を比較的高く設定することができる。これにより、再生アプリケーションのためのCPU311の処理能力を確保し、音飛びなどを回避することができる。このように、実施の形態1にかかる情報処理装置100によれば、第1要素の状態変化だけでなく第2要素の状態も参照してCPU311の動作周波数の制御規則を決定することができる。これにより、アプリケーションやハードウェアが様々な状態で動作する場合においても、状況に応じて処理能力と省電力を適切に制御することができる。具体的には、CPU311の高い処理能力が求められる状況ではCPU311の動作周波数が高くなる制御ポリシを設定することができる。また、CPU311の高い処理能力が求められない状況や省電力が求められる状況ではCPU311の動作周波数が低くなる制御ポリシを設定することができる。たとえば、ユーザが情報処理装置100の操作を終了する場合のハードウェアの状態変化操作終了時の状態変化を第1要素の状態変化とし、特定のソフトウェアが実行中か否かの状態を第2要素の状態とする。そして、対応情報においては、操作終了時の状態変化と特定のソフトウェアが実行中の状態との組み合わせに対して、操作終了時の状態変化と特定のソフトウェアが実行中でない状態との組み合わせよりもCPU311の処理能力が高くなる制御規則を対応付ける。ユーザが情報処理装置100の操作を終了する場合のハードウェアの状態変化は、たとえばLCD213のオンからオフへの変化などである。ただし、ユーザが情報処理装置100の操作を終了する場合のハードウェアの状態変化はこれに限らず、たとえば、傾きセンサによって検知される情報処理装置100の傾きの変化たとえば傾いた状態から水平状態への変化などであってもよい。これにより、たとえば、ユーザが情報処理装置100の操作を終了する場合においても、特定のソフトウェアが実行中である場合は動作周波数が比較的高くなる処理性能が高くなる制御ポリシを適用し、特定のソフトウェアをスムーズに実行することが可能になる。たとえば特定のソフトウェアが音楽再生や通話のアプリケーションである場合は、処理不足による音飛びなどを回避することができる。また、情報処理装置100への外部電源の供給停止などを第1要素の状態変化とし、特定のソフトウェアが実行中か否かの状態を第2要素の状態としてもよい。そして、対応情報においては、供給停止と特定のソフトウェアが実行中の状態との組み合わせに対して、供給停止と特定のソフトウェアが実行中でない状態との組み合わせよりもCPU311の処理能力が高くなる制御規則を対応付ける。これにより、たとえば、外部電源の供給が停止する場合においても、特定のソフトウェアが実行中である場合は動作周波数が比較的高くなる処理性能が高くなる制御ポリシを適用し、特定のソフトウェアをスムーズに実行することが可能になる。また、CPU311によって実行される特定のソフトウェアの起動を第1要素の状態変化とし、情報処理装置100の電池残量が閾値以上であるか否かの状態を第2要素の状態としてもよい。そして、対応情報においては、特定のソフトウェアの起動と電池残量が閾値以上でない状態との組み合わせに対して、特定のソフトウェアの起動と電池残量が閾値以上である状態との組み合わせよりもCPU311の消費電力が低くなる制御規則を対応付ける。これにより、たとえば、特定のソフトウェアを起動する場合においても、電池残量が閾値以上でない場合は動作周波数が比較的低くなる消費電力が低くなる制御ポリシを適用し、消費電力を抑えることが可能になる。たとえば、バッテリ残量が少ないために電力優先の制御ポリシを適用している場合において、CPU311の多くの処理能力が要求されるアプリケーションを起動した場合に、処理能力優先の制御ポリシを適用してしまうことを回避することができる。また、ユーザが情報処理装置100の操作を開始する場合のハードウェアの状態変化操作開始時の状態変化を第1要素の状態変化とし、情報処理装置100の電池残量が閾値以上であるか否かの状態を第2要素の状態としてもよい。そして、対応情報においては、操作開始時の状態変化と電池残量が閾値以上でない状態との組み合わせに対して、操作開始時の状態変化と電池残量が閾値以上である状態との組み合わせよりもCPU311の消費電力が低くなる制御規則を対応付ける。ユーザが情報処理装置100の操作を開始する場合のハードウェアの状態変化は、たとえばLCD213のオフからオンへの変化などである。ただし、ユーザが情報処理装置100の操作を開始する場合のハードウェアの状態変化はこれに限らず、たとえば、傾きセンサによって検知される情報処理装置100の傾きの変化たとえば水平状態から傾いた状態への変化やタッチパネルの操作などであってもよい。これにより、たとえば、ユーザが情報処理装置100の操作を開始する場合においても、電池残量が閾値以上でない場合は動作周波数が比較的低くなる消費電力が低くなる制御ポリシを適用し、消費電力を抑えることが可能になる。また、情報処理装置100のハードウェアのイベントとしては、上記の他に、GPSのオン/オフ、無線LANのオン/オフ、情報処理装置100の内部の温度の変化などを用いてもよい。また、情報処理装置100のハードウェアの状態としては、上記の他に、GPSのオン/オフの状態、無線LANのオン/オフの状態、情報処理装置100の内部の温度などを用いてもよい。また、対応情報において対応付ける制御規則を、動作周波数を制御するためのアルゴリズムおよびパラメータの少なくとも一方の変更を示す情報とすることで、対応情報のエントリ数ルール数を少なくすることができる。これにより、対応情報の記憶に要求されるメモリ容量を削減することができる。また、対応情報を定義するシステム開発者やユーザの負担を軽減することができる。なお、図3に示した情報処理装置100において、ハードウェア監視モジュール330およびアプリ起動/停止監視モジュール342のいずれかを省いた構成としてもよい。この場合は、図7に示した制御ポリシ変更ルール表370において、ハードウェア監視モジュール330およびアプリ起動/停止監視モジュール342のうちの省いたモジュールによって検出されるイベントを省いてもよい。実施の形態2実施の形態2にかかる情報処理装置の構成図10は、実施の形態2にかかる情報処理装置の機能ブロック図である。図10において、図3に示した部分と同様の部分については同一の符号を付して説明を省略する。図10に示すように、実施の形態2にかかる情報処理装置100は、図3に示した構成に加えてシステム負荷監視モジュール1001を備えている。システム負荷監視モジュール1001は、システム状態取得用I/F324からシステム負荷を監視する。システム負荷は、たとえばCPU311の利用率たとえばCPU311が処理を実行している時間の割合である。または、システム負荷は、CPU311の処理待ち状態にあるプロセスの個数などであってもよい。システム負荷監視モジュール1001は、システム負荷の所定の変化が発生すると、負荷変化イベントをポリシ制御ソフト350へ通知する。ポリシ制御ソフト350は、システム負荷監視モジュール1001から負荷変化イベントが通知された場合に、システム状態取得用I/F324から出力されるハードウェア状態やアプリ/プロセス状態などのシステム状態を取得する。そして、ポリシ制御ソフト350は、システム負荷監視モジュール1001から通知された負荷変化イベントと、システム状態取得用I/F324から取得したシステム状態と、をキーとしてポリシ制御ソフト350からアクションリストを検索する。システム負荷監視モジュールによる処理図11は、システム負荷監視モジュールによる処理の一例を示すフローチャートである。システム負荷監視モジュール1001は、たとえば図11に示す各ステップを実行する。まず、システム負荷監視モジュール1001は、一定時間待機するステップS1101。つぎに、システム負荷監視モジュール1001は、システム状態取得用I/F324から現在のCPU311の負荷を取得するステップS1102。つぎに、システム負荷監視モジュール1001は、ステップS1102によって取得した負荷と閾値を比較し、CPU311の負荷の高低を判定するステップS1103。具体的には、システム負荷監視モジュール1001は、負荷が閾値より高い場合は負荷を高と判定し、負荷が閾値より低い場合は負荷を低と判定する。または、システム負荷監視モジュール1001は、負荷が第1閾値より高い場合は負荷を高と判定し、負荷が第2閾値<第1閾値より低い場合は負荷を低と判定してもよい。つぎに、システム負荷監視モジュール1001は、今回のステップS1103による判定結果を情報処理装置100のメモリたとえば補助メモリ203に記憶するステップS1104。つぎに、システム負荷監視モジュール1001は、前回のステップS1103による判定結果を情報処理装置100のメモリたとえば補助メモリ203から取得するステップS1105。つぎに、システム負荷監視モジュール1001は、ステップS1105により取得した前回の判定結果から、今回のステップS1103による判定結果が変化したか否かを判断するステップS1106。ステップS1106において、判定結果が変化していない場合ステップS1106:Noは、システム負荷監視モジュール1001は、ステップS1101へ戻る。判定結果が変化した場合ステップS1106:Yesは、システム負荷監視モジュール1001は、ステップS1107へ移行する。すなわち、システム負荷監視モジュール1001は、CPU311の負荷が低から高、または高から低に変化したことを示す負荷変化イベントをポリシ制御ソフト350へ通知しステップS1107、ステップS1101へ戻る。ポリシ制御ソフト350による処理は、たとえば図5に示した各ステップと同様である。ただし、ポリシ制御ソフト350は、CPU311の負荷が変化したことがシステム負荷監視モジュール1001から通知されると、ステップS501においてシステムイベントが通知されたと判断し、ステップS502へ移行する。これにより、CPU311の負荷の変化を契機として、CPU311の負荷に応じて制御ポリシを変更することができる。これにより、たとえば、電力優先アルゴリズムによりCPU311の動作周波数を制御している場合におけるCPU311の過負荷を回避することが可能になる。実施の形態2にかかる制御ポリシ変更ルール表図12は、実施の形態2にかかる制御ポリシ変更ルール表の一例を示す図表である。図12において、図7に示した部分と同様の部分については説明を省略する。図12に示す制御ポリシ変更ルール表370には、第2要素の状態として情報処理装置100の動作モードが含まれている。動作モードには通常モードおよび省電力モードが含まれる。省電力モードは通常モードより消費電力が少ない動作モードである。ポリシ制御ソフト350は、LCD213がオンになると動作モードを通常モードに設定する。また、ポリシ制御ソフト350は、LCD213がオフになると動作モードを省電力モードに設定する。また、ポリシ制御ソフト350は、LCD213がオフで動作モードが省電力モードの状態でCPU311の負荷が低から高に変化すると、CPU311の動作周波数の上限値を増加させる。また、ポリシ制御ソフト350は、LCD213がオフで動作モードが省電力モードの状態でCPU311の負荷が高から低に変化すると、CPU311の動作周波数の上限値を減少させる。これにより、LCD213がオフの状態で、省電力モードに設定されている場合においても、CPU311の処理量が増加した場合はCPU311の動作周波数の上限値を増加させ、過負荷の状態を回避することができる。実施の形態2にかかる動作周波数の制御図13-1~図13-3は、実施の形態2にかかる動作周波数の制御の一例を示す図である。図13-1~図13-3において、横軸は時間を示し、縦軸はCPU311の動作周波数を示している。図13-1に示す動作周波数変化1310,1320,1330は、電力優先アルゴリズムにおいて動作周波数の上限値がそれぞれ周波数f3,f4,f5である制御ポリシによるCPU311の動作周波数の変化を示している。図12の制御ポリシ変更ルール表370に示したように、CPU311の負荷が低から高になると動作周波数の上限値が増加する。このため、動作周波数変化1310の状態でCPU311の負荷が低から高になると、動作周波数変化1320の状態へ移行する。また、動作周波数変化1320の状態でCPU311の負荷が低から高になると、動作周波数変化1330の状態へ移行する。また、図12の制御ポリシ変更ルール表370に示したように、CPU311の負荷が高から低になると動作周波数の上限値が減少する。このため、動作周波数変化1330の状態でCPU311の負荷が高から低になると、動作周波数変化1320の状態へ移行する。また、動作周波数変化1320の状態でCPU311の負荷が高から低になると、動作周波数変化1310の状態へ移行する。このように、CPU311の負荷に応じてCPU311の動作周波数の上限値を変更し、CPU311が過負荷になることを回避することができる。ここではCPU311の動作周波数の上限値について説明したが、CPU311の負荷に応じてCPU311の動作周波数の下限値を変更してもよい。システム負荷監視モジュールによる処理の変形例図14は、CPUの負荷と動作周波数の関係の一例を示す図である。図14において、横軸は時間を示し、左側の縦軸はCPU311の動作周波数を示し、右側の縦軸はCPU311の利用率負荷を示している。利用率変化1410は、アプリケーションの起動や停止などに起因するCPU311の利用率の変化を示している。動作周波数変化1420は、制御ポリシに基づくCPU311の動作周波数の変化を示している。利用率変化1410および動作周波数変化1420に示すように、CPU311の動作周波数は、CPU311の負荷に追従して変化する性質を有する。この性質を利用して、システム負荷監視モジュール1001算出部は、CPU311の動作周波数をシステム状態取得用I/F324から取得し、取得した動作周波数に基づいてCPU311の負荷を監視してもよい。具体的には、現在の制御ポリシにおける動作周波数の上限値でCPU311が動作している時間の割合を算出することでCPU311の負荷を算出することができる。図15は、システム負荷監視モジュールによる処理の変形例を示すフローチャートである。システム負荷監視モジュール1001は、たとえば図15に示す各ステップを実行してもよい。まず、システム負荷監視モジュール1001は、一定時間待機するステップS1501。つぎに、システム負荷監視モジュール1001は、負荷判定処理を行うことによってCPU311の負荷の高低を判定するステップS1502。負荷判定処理については後述する。図15に示すステップS1503~S1506は、図11に示したステップS1104~S1107と同様である。図16は、図15に示した負荷判定処理の一例を示すフローチャートである。システム負荷監視モジュール1001は、図15に示したステップS1502において、たとえば図16に示す各ステップを実行する。まず、システム負荷監視モジュール1001は、周波数利用時間履歴をシステム状態取得用I/F324から取得するステップS1601。周波数利用時間履歴は、たとえば、カーネル320が動作を開始してから現在までの期間における、CPU311の動作周波数ごとの動作時間を示す情報である。つぎに、システム負荷監視モジュール1001は、今回のステップS1601によって取得した周波数利用時間履歴を情報処理装置100のメモリたとえば補助メモリ203に記憶するステップS1602。つぎに、システム負荷監視モジュール1001は、前回のステップS1601によって取得した周波数利用時間履歴を情報処理装置100のメモリたとえば補助メモリ203から取得するステップS1603。つぎに、システム負荷監視モジュール1001は、今回のステップS1601によって取得した周波数利用時間履歴と、ステップS1603により取得した前回の周波数利用時間履歴と、の差分を算出するステップS1604。具体的には、システム負荷監視モジュール1001は、CPU311の動作周波数ごとに、今回取得した周波数利用時間履歴が示すCPU311の動作時間と、前回取得した周波数利用時間履歴が示すCPU311の動作時間と、の差分を算出する。これにより、前回チェック時から現在までの経過時間におけるCPU311の動作周波数ごとの動作時間を算出することができる。つぎに、システム負荷監視モジュール1001は、ステップS1604によって算出した動作周波数ごとの動作時間のうちの現在のCPU311の上限周波数での動作時間の、前回チェック時から現在までの経過時間に対する比率を算出するステップS1605。つぎに、システム負荷監視モジュール1001は、ステップS1605によって算出した比率が閾値より大きいか否かを判断するステップS1606。ステップS1606において、算出した比率が閾値より大きい場合ステップS1606:Yesは、システム負荷監視モジュール1001は、CPU311の負荷を高と判定しステップS1607、一連の処理を終了する。算出した比率が閾値以下である場合ステップS1606:Noは、システム負荷監視モジュール1001は、CPU311の負荷を低と判定しステップS1608、一連の処理を終了する。以上の各ステップにより、CPU311の負荷の高低をCPU311の動作周波数に基づいて判定することができる。このため、実際のCPU311の負荷に即した負荷状態を判定することが可能になる。図17は、図16に示した負荷判定処理の変形例を示すフローチャートである。システム負荷監視モジュール1001は、図15に示したステップS1502において、たとえば図17に示す各ステップを実行してもよい。図17に示すステップS1701~S1706は、図16に示したステップS1601~S1606と同様である。ただし、ステップS1705において、システム負荷監視モジュール1001は、上限周波数での動作時間の経過時間に対する第1比率を算出するステップS1705。つぎに、システム負荷監視モジュール1001は、ステップS1705によって算出した第1比率が第1閾値より大きいか否かを判断するステップS1706。ステップS1706において、第1比率が第1閾値より大きい場合ステップS1706:Yesは、システム負荷監視モジュール1001は、CPU311の負荷を高と判定しステップS1707、一連の処理を終了する。第1比率が第1閾値以下である場合ステップS1706:Noは、システム負荷監視モジュール1001は、ステップS1708へ移行する。すなわち、システム負荷監視モジュール1001は、ステップS1704によって算出した動作周波数ごとの動作時間のうちの現在のCPU311の下限周波数での動作時間の、前回チェック時から現在までの経過時間に対する第2比率を算出するステップS1708。つぎに、システム負荷監視モジュール1001は、ステップS1708によって算出した第2比率が第2閾値より大きいか否かを判断するステップS1709。第2閾値は、たとえば第1閾値より低い閾値である。第2比率が第2閾値より大きい場合ステップS1709:Yesは、システム負荷監視モジュール1001は、CPU311の負荷を中と判定しステップS1710、一連の処理を終了する。第2比率が第2閾値より大きくない場合ステップS1709:Noは、システム負荷監視モジュール1001は、CPU311の負荷を低と判定しステップS1711、一連の処理を終了する。以上の各ステップにより、CPU311の負荷を高中低と判定することができる。ここでは第1閾値と第2閾値を用いてCPU311の負荷を3段階で判定する場合について説明したが、3つ以上の閾値を用いてCPU311の負荷を4段階以上で判定してもよい。このように、実施の形態2にかかる情報処理装置100によれば、CPU311の負荷量の閾値未満から閾値以上への負荷増加を第1要素の状態変化とし、負荷増加が検出された場合にCPU311の動作周波数の上限値を増加させることができる。これにより、CPU311の負荷に応じてCPU311の動作周波数の上限値を制御し、CPU311が過負荷になることを回避することができる。このため、たとえば、電力優先の制御ポリシを適用している場合に、CPU311の処理能力が多量に要求される状況になると、CPU311の動作周波数の上限値を増加させることができる。また、CPU311の負荷利用率に対してCPU311の動作周波数が追従する場合において、CPU311が動作周波数の上限値で動作した時間の所定の期間内における割合に基づいて負荷増加を検出することで負荷増加を精度よく検出することができる。実施の形態3図18は、実施の形態3にかかる情報処理装置の機能ブロック図である。図13において、図10に示した部分と同様の部分については同一の符号を付して説明を省略する。図18に示すように、実施の形態3にかかる情報処理装置100は、図10に示した構成に加えて、検査対象リスト1801と、プロセス監視モジュール1802と、を備えている。アプリ起動/停止監視モジュール342は、アプリケーションの起動または停止を検出すると、アプリ起動/停止イベントをプロセス監視モジュール1802へ通知する。検査対象リスト1801は、監視対象アプリ一覧341の各アプリケーションのうちの検査中のアプリケーションを示す情報である。検査対象リスト1801は、たとえば図2に示した補助メモリ203に記憶されている。プロセス監視モジュール1802は、アプリ起動/停止監視モジュール342からアプリ起動イベントが通知されると、起動したアプリケーションを検査対象リスト1801に追加する。また、プロセス監視モジュール1802は、アプリ起動/停止監視モジュール342からアプリ停止イベントが通知されると、停止したアプリケーションを検査対象リスト1801から削除する。また、プロセス監視モジュール1802は、検査対象リスト1801が示す各アプリケーションのCPU311の所定期間内の利用時間をシステム状態取得用I/F324から取得する。そして、プロセス監視モジュール1802は、取得した利用時間に基づいて、検査対象リスト1801が示す各アプリケーションが実際に利用されているか否かを定期的に判定する。たとえば、プロセス監視モジュール1802は、取得した利用時間が閾値以上であるか否かによってアプリケーションが実際に利用されているか否かを判定する。プロセス監視モジュール1802は、判定結果が変化すると、アプリ動作状態変化イベントをポリシ制御ソフト350へ通知する。これにより、実行中のアプリケーションについて、ユーザによる利用が開始された場合に、利用が開始された旨のアプリ動作状態変化イベントをポリシ制御ソフト350へ通知することができる。また、実行中のアプリケーションについて、ユーザによる利用が終了した場合に、利用が終了した旨のアプリ動作状態変化イベントをポリシ制御ソフト350へ通知することができる。ポリシ制御ソフト350は、プロセス監視モジュール1802からアプリ動作状態変化イベントが通知された場合に、システム状態取得用I/F324から出力されるハードウェア状態やアプリ/プロセス状態などのシステム状態を取得する。そして、ポリシ制御ソフト350は、プロセス監視モジュール1802から通知されたアプリ動作状態変化イベントと、システム状態取得用I/F324から取得したシステム状態と、をキーとしてポリシ制御ソフト350からアクションリストを検索する。検査対象リスト図19は、検査対象リストの一例を示す図である。図19に示す検査対象リスト1801は、図18に示した検査対象リスト1801の一例である。検査対象リスト1801には、実行中の各アプリケーションプロセス等でもよいが含まれている。また、検査対象リスト1801の各アプリケーションにはCPU利用時間および活動状態が対応付けられている。CPU利用時間は、システム状態取得用I/F324から取得したアプリケーションによるCPU311の所定期間内の累積の利用時間を示す情報である。活動状態はアプリケーションが実際に利用されているか否かを示す情報である。活動状態がアクティブである場合は、アプリケーションが実際に利用されていることを示している。活動状態がスリープである場合は、アプリケーションは実行中起動済みで停止していない状態であるが実際に利用されていないことを示している。たとえば、CPU利用時間が閾値以上であるアプリケーションは活動状態がアクティブとなる。また、CPU利用時間が閾値未満であるアプリケーションは活動状態がスリープとなる。プロセス監視モジュールによる処理図20は、プロセス監視モジュールによる処理の一例を示すフローチャートである。プロセス監視モジュール1802は、たとえば図20に示す各ステップを実行する。まず、プロセス監視モジュール1802は、アプリ起動/停止監視モジュール342からアプリ起動イベントが通知されたか否かを判断するステップS2001。ステップS2001において、アプリ起動イベントが通知された場合ステップS2001:Yesは、プロセス監視モジュール1802は、アプリ起動イベントの対象アプリケーションを検査対象リスト1801に追加しステップS2002、ステップS2005へ移行する。アプリ起動イベントが通知されていない場合ステップS2001:Noは、プロセス監視モジュール1802は、アプリ起動/停止監視モジュール342からアプリ停止イベントが通知されたか否かを判断するステップS2003。ステップS2003において、アプリ停止イベントが通知された場合ステップS2003:Yesは、プロセス監視モジュール1802は、アプリ停止イベントの対象アプリケーションを検査対象リスト1801から削除しステップS2004、ステップS2005へ移行する。アプリ停止イベントが通知されていない場合ステップS2003:Noは、プロセス監視モジュール1802は、検査対象リスト1801の全アプリケーションをステップS2006で処理済みか否かを判断するステップS2005。ステップS2005において、検査対象リスト1801の全アプリケーションを処理済みでない場合ステップS2005:Noは、ステップS1601は、ステップS2006へ移行する。すなわち、プロセス監視モジュール1802は、検査対象リスト1801に含まれる各アプリケーションのうちの未処理のアプリケーションについて活動状態を検査する活動状態検査処理を行うステップS2006。活動状態検査処理についてはたとえば図21において説明する。ステップS2005において、検査対象リスト1801の全アプリケーションを処理済みである場合ステップS2005:Yesは、プロセス監視モジュール1802は、ステップS2007へ移行する。すなわち、プロセス監視モジュール1802は、検査対象リスト1801に基づいて、検査対象リスト1801に含まれる各アプリケーションの活動状態を情報処理装置100のメモリたとえば補助メモリ203に記憶するステップS2007。つぎに、プロセス監視モジュール1802は、前回の各アプリケーションの活動状態を情報処理装置100のメモリたとえば補助メモリ203から読み出すステップS2008。つぎに、プロセス監視モジュール1802は、ステップS2007によって読み出した前回の各アプリケーションの活動状態および検査対象リスト1801に基づいて変化検出処理を行いステップS2009、ステップS2001へ戻る。変化検出処理についてはたとえば図22において説明する。図21は、活動状態検査処理の一例を示すフローチャートである。プロセス監視モジュール1802は、図20に示したステップS2006の活動状態検査処理として、検査対象アプリケーションについてたとえば図21に示す各ステップを実行する。まず、プロセス監視モジュール1802は、検査対象アプリケーションの現在のCPU利用時間をシステム状態取得用I/F324から取得するステップS2101。つぎに、プロセス監視モジュール1802は、今回のステップS2101によって取得したCPU利用時間をメモリたとえば補助メモリ203に記憶するステップS2102。つぎに、プロセス監視モジュール1802は、検査対象アプリケーションの前回のCPU利用時間をメモリたとえば補助メモリ203から取得するステップS2103。つぎに、プロセス監視モジュール1802は、ステップS2101によって取得した今回のCPU利用時間と、ステップS2103によって取得した前回のCPU利用時間と、の差分を算出するステップS2104。つぎに、プロセス監視モジュール1802は、検査対象アプリケーションの活動状態を検査対象リスト1801から取得するステップS2105。つぎに、プロセス監視モジュール1802は、ステップS2105によって取得した前回チェック時の活動状態がアクティブだったか否かを判断するステップS2106。ステップS2106において、前回チェック時の活動状態がアクティブだった場合ステップS2106:Yesは、プロセス監視モジュール1802は、ステップS2104によって算出した差分が第1閾値より小さいか否かを判断するステップS2107。差分が第1閾値より小さい場合ステップS2107:Yesは、プロセス監視モジュール1802は、検査対象リスト1801の活動状態をスリープに設定しステップS2108、一連の処理を終了する。差分が第1閾値以上である場合ステップS2107:Noは、プロセス監視モジュール1802は、一連の処理を終了する。ステップS2106において、前回チェック時の活動状態がアクティブでなくスリープであった場合ステップS2106:Noは、プロセス監視モジュール1802は、ステップS2104によって算出した差分が第2閾値より大きいか否かを判断するステップS2109。差分が第2閾値より大きい場合ステップS2109:Yesは、プロセス監視モジュール1802は、検査対象リスト1801の活動状態をアクティブに設定しステップS2110、一連の処理を終了する。ステップS2109において、差分が第2閾値以下である場合ステップS2109:Noは、プロセス監視モジュール1802は、一連の処理を終了する。以上の各ステップにより、検査対象リスト1801の各アプリケーションの活動状態を検査し、検査結果を検査対象リスト1801に反映させることができる。図22は、変化検出処理の一例を示すフローチャートである。プロセス監視モジュール1802は、図20に示したステップS2009の変化検出処理として、たとえば図22に示す各ステップを実行する。まず、プロセス監視モジュール1802は、検査対象リスト1801に活動状態がアクティブのアプリケーションが存在するか否かを判断するステップS2201。ステップS2201において、検査対象リスト1801に活動状態がアクティブのアプリケーションが存在しない場合ステップS2201:Noは、プロセス監視モジュール1802は、ステップS2202へ移行する。すなわち、プロセス監視モジュール1802は、図20に示したステップS2008によって取得した前回の各アプリケーションの活動状態がアクティブか否かを判断するステップS2202。ステップS2202において、前回の各アプリケーションの活動状態がアクティブでなくスリープである場合ステップS2202:Noは、プロセス監視モジュール1802は、一連の処理を終了する。前回の各アプリケーションの少なくともいずれかの活動状態がアクティブである場合ステップS2202:Yesは、プロセス監視モジュール1802は、ステップS2203へ移行する。すなわち、プロセス監視モジュール1802は、前回の活動状態がアクティブであったアプリケーションがスリープになった旨のイベントアプリ動作状態変化イベントをポリシ制御ソフト350へ通知しステップS2203、一連の処理を終了する。ステップS2201において、検査対象リスト1801に活動状態がアクティブのアプリケーションが存在する場合ステップS2201:Yesは、プロセス監視モジュール1802は、ステップS2204へ移行する。すなわち、プロセス監視モジュール1802は、図20に示したステップS2008によって取得した前回の各アプリケーションの活動状態がスリープか否かを判断するステップS2204。ステップS2204において、前回の各アプリケーションの活動状態がスリープでなくアクティブである場合ステップS2204:Noは、プロセス監視モジュール1802は、一連の処理を終了する。前回の各アプリケーションの少なくともいずれかの活動状態がスリープである場合ステップS2204:Yesは、プロセス監視モジュール1802は、ステップS2205へ移行する。すなわち、プロセス監視モジュール1802は、前回の活動状態がスリープであったアプリケーションがアクティブになった旨のイベントアプリ動作状態変化イベントをポリシ制御ソフト350へ通知しステップS2205、一連の処理を終了する。以上の各ステップにより、プロセス監視モジュール1802の各アプリケーションのうちの活動状態が変化したアプリケーションについてのアプリ動作状態変化イベントをポリシ制御ソフト350へ通知することができる。実施の形態3にかかる制御ポリシ変更ルール表図23は、実施の形態3にかかる制御ポリシ変更ルール表の一例を示す図表である。図22において、図12に示した部分と同様の部分については説明を省略する。図23に示す制御ポリシ変更ルール表370のイベント第1要素の状態変化には、監視対象のアプリケーションの起動や停止に代えて監視対象のアプリケーションのアクティブやスリープが規定されている。ポリシ制御ソフト350は、LCD213がオンの状態で監視対象のアプリケーションがスリープからアクティブになると利用が開始されると、監視対象アプリケーション状態をアクティブに設定する。また、ポリシ制御ソフト350は、LCD213がオンの状態で監視対象のアプリケーションがアクティブからスリープになると利用が終了すると、監視対象アプリケーション状態をスリープに設定する。また、ポリシ制御ソフト350は、LCD213がオフの状態で監視対象のアプリケーションがスリープからアクティブになると利用が開始されると、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値1および下限値1を設定し、監視対象アプリケーション状態をアクティブに設定する。また、ポリシ制御ソフト350は、LCD213がオフの状態で監視対象のアプリケーションがアクティブからスリープになると利用が終了すると、制御ポリシのアルゴリズムを電力優先アルゴリズムにする。また、この場合は、ポリシ制御ソフト350は、CPU311の動作周波数の制限値として上限値2および下限値2を設定し、監視対象アプリケーション状態をスリープに設定する。このように、実施の形態3にかかる情報処理装置100によれば、特定のアプリケーションの動作状態の変化を第1の状態変化とすることで、特定のアプリケーションの実際の利用状態に応じてCPU311の動作周波数の制御ポリシを変更することができる。また、特定のアプリケーションの動作状態の変化は、特定のアプリケーションによるCPU311の利用時間に基づいて検出することができる。たとえば、音楽再生などのアプリケーションを起動しているが実際に利用していないたとえば音楽を再生していない状態で情報処理装置100を持ち運ぶ場合に、処理能力優先の制御ポリシを適用し続けて消費電力が大きくなることを回避することができる。また、特定のアプリケーションの動作状態の変化の検出処理を、特定のアプリケーションが起動すると開始し、特定のアプリケーションが停止すると終了することができる。これにより、特定のアプリケーションが実行中でない場合は検出処理を行わないようにし、情報処理装置100の処理量を低減することができる。なお、図18に示した情報処理装置100において、システム負荷監視モジュール1001を省いた構成としてもよい。この場合は、図23に示した制御ポリシ変更ルール表370において、システム負荷監視モジュール1001によって検出されるイベントを省いてもよい。実施の形態4実施の形態4にかかる情報処理装置の構成図24は、実施の形態4にかかる情報処理装置の機能ブロック図である。図24において、図3に示した部分と同様の部分については同一の符号を付して説明を省略する。図24に示すように、実施の形態4にかかる情報処理装置100は、図3に示した構成に加えて、監視対象アクセス許可情報リスト2401と、インストーラ2402と、ストレージ2403と、を備えている。監視対象アクセス許可情報リスト2401は、監視対象とすべきアプリケーションに含まれるアクセス許可情報を示す情報である。アクセス許可情報は、アプリケーションがアクセスする情報処理装置100の機能周辺機器などや情報個人情報などを示す権限パーミッションを示す情報であり、たとえばアプリケーションのパッケージ内部にあらかじめ格納されている。監視対象アクセス許可情報リスト2401は、たとえば図2に示した補助メモリ203に記憶されている。インストーラ2402には、インストール対象のアプリケーションのパッケージが入力される。インストーラ2402は、入力されたパッケージをストレージ2403に格納することによってアプリケーションを情報処理装置100にインストールする。また、インストーラ2402は、インストールするアプリケーションのパッケージに格納されたアクセス許可情報を取得する。そして、インストーラ2402は、取得したアクセス許可情報が監視対象アクセス許可情報リスト2401に含まれている場合は、インストールしたアプリケーションを監視対象アプリ一覧341に追加する。また、インストーラ2402は、取得したアクセス許可情報が監視対象アクセス許可情報リスト2401に含まれていない場合は、インストールしたアプリケーションを監視対象アプリ一覧341に追加しない。これにより、アプリケーションをインストールする際に、インストールするアプリケーションを監視対象とすべきか否かをアクセス許可情報に基づいて判断し、監視対象とすべきアプリケーションを監視対象アプリ一覧341に追加することができる。たとえば、通話や音楽再生、センサやGPSを利用するアプリケーションなどのCPU311の処理能力が重要なアプリケーションに含まれるアクセス許可情報たとえば通話やGPSの機能へのアクセス権限を監視対象アクセス許可情報リスト2401に格納しておく。これにより、処理能力が重要なアプリケーションをインストールする場合にアプリケーションを監視対象アプリ一覧341に自動的に追加することができる。また、監視対象アプリ一覧341へのアプリケーションの登録を容易にし、たとえばユーザが手動で登録を行う場合に比べてユーザの負担を軽減することができる。また、インストーラ2402は、ストレージ2403に格納されたアプリケーションを削除することによってアプリケーションをアンインストールするアンインストーラの機能を有していてもよい。インストーラ2402は、監視対象アプリ一覧341に含まれるアプリケーションをアンインストールする場合に、アンインストールするアプリケーションを監視対象アプリ一覧341から削除する。これにより、アンインストールされたアプリケーションをアプリ起動/停止監視モジュール342が監視し続けることを回避することができる。また、監視対象アプリ一覧341からのアプリケーションの削除を容易にし、たとえばユーザが手動で削除を行う場合に比べてユーザの負担を軽減することができる。インストーラによる処理図25は、インストーラによる処理の一例を示すフローチャートである。インストーラ2402は、アプリケーションのインストールまたはアンインストールの処理を行う場合に、たとえば図25に示す各ステップを実行する。まず、インストーラ2402は、処理内容がインストールか否かを判断するステップS2501。処理内容がインストールである場合ステップS2501:Yesは、インストーラ2402は、監視対象アクセス許可情報リスト2401を情報処理装置100のメモリたとえば補助メモリ203から読み取るステップS2502。つぎに、インストーラ2402は、インストールの対象アプリケーションのアクセス許可情報を取得するステップS2503。そして、インストーラ2402は、ステップS2503によって取得したアクセス許可情報が、ステップS2502によって読み取った監視対象アクセス許可情報リスト2401に存在するか否かを判断するステップS2504。ステップS2504において、アクセス許可情報が監視対象アクセス許可情報リスト2401に存在しない場合ステップS2504:Noは、インストーラ2402は、一連の処理を終了する。アクセス許可情報が監視対象アクセス許可情報リスト2401に存在する場合ステップS2504:Yesは、インストーラ2402は、監視対象アプリ一覧341に対象アプリケーションを追加しステップS2505、一連の処理を終了する。ステップS2501において、処理内容がインストールでなくアンインストールである場合ステップS2501:Noは、インストーラ2402は、アンインストールの対象アプリケーションが監視対象アプリ一覧341に存在するか否かを判断するステップS2506。ステップS2506において、対象アプリケーションが監視対象アプリ一覧341に存在しない場合ステップS2506:Noは、インストーラ2402は、一連の処理を終了する。対象アプリケーションが監視対象アプリ一覧341に存在する場合ステップS2506:Yesは、インストーラ2402は、監視対象アプリ一覧341から対象アプリケーションを削除しステップS2507、一連の処理を終了する。以上の各ステップにより、インストールの対象アプリケーションのアクセス許可情報に基づいてインストールの対象アプリケーションを監視対象アプリ一覧341に追加するか否かを自動的に判定することができる。また、アンインストールの対象アプリケーションを監視対象アプリ一覧341から自動的に削除することができる。実施の形態4にかかる制御ポリシ変更ルール表370は、たとえば図7に示した制御ポリシ変更ルール表370と同様である。このように、実施の形態4にかかる情報処理装置100によれば、インストールの対象のアプリケーションのアクセス権限が特定のアクセス権限である場合に対象のアプリケーションを特定のアプリケーションとして記憶することができる。これにより、特定のアプリケーションを容易に登録し、ユーザの負担を軽減することができる。また、情報処理装置100によれば、アンインストールの対象のアプリケーションを特定のアプリケーションから除外することができる。これにより、特定のアプリケーションを容易に削除し、ユーザの負担を軽減することができる。実施の形態5図26は、実施の形態5にかかる情報処理装置の機能ブロック図である。図26において、図18または図24に示した部分と同様の部分については同一の符号を付して説明を省略する。図26に示すように、実施の形態5にかかる情報処理装置100は、図18に示した構成に加えて、監視対象アクセス許可情報リスト2401と、インストーラ2402と、ストレージ2403と、を備えている。このように、実施の形態3にかかる情報処理装置100の構成と、実施の形態4にかかる情報処理装置100の構成と、を組み合わせた構成としてもよい。これにより、特定のアプリケーションの実際の利用状態に応じてCPU311の動作周波数の制御ポリシを変更することができるとともに、ユーザの負担を軽減することができる。以上説明したように、情報処理装置、情報処理プログラムおよび情報処理方法によれば、CPUの動作周波数を状況に応じて適切に設定することができる。これにより、たとえば、ソフトウェアの応答性能を確保しつつ消費電力を削減することが可能になる。なお、上記の各実施の形態において説明した情報処理方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD-ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な伝送媒体であってもよい。上述した各実施の形態に関し、さらに以下の付記を開示する。付記1情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を記憶する記憶部と、前記第1要素の状態変化を検出する検出部と、前記検出部によって前記第1要素の状態変化が検出された場合に前記第2要素の状態を判定する判定部と、前記記憶部によって記憶された対応情報から、前記検出部によって検出された状態変化と、前記判定部によって判定された状態と、の組み合わせに対応する制御規則を検索する検索部と、前記検索部によって検索された制御規則に基づいて前記中央処理装置の動作周波数を制御する制御部と、を備えることを特徴とする情報処理装置。付記2前記第1要素の状態変化は、ユーザが前記情報処理装置の操作を終了する場合のハードウェアの状態変化を含み、前記第2要素の状態は、前記中央処理装置によって実行される特定のソフトウェアが実行中か否かの状態を含み、前記対応情報においては、前記操作を終了する場合のハードウェアの状態変化と前記特定のソフトウェアが実行中の状態との組み合わせに対して、前記操作を終了する場合のハードウェアの状態変化と前記特定のソフトウェアが実行中でない状態との組み合わせよりも前記中央処理装置の処理能力が高くなる制御規則が対応付けられることを特徴とする付記1に記載の情報処理装置。付記3前記操作を終了する場合のハードウェアの状態変化は、前記情報処理装置のディスプレイのオンからオフへの変化を含むことを特徴とする付記2に記載の情報処理装置。付記4前記第1要素の状態変化は、前記情報処理装置への外部電源の供給停止を含み、前記第2要素の状態は、前記中央処理装置によって実行される特定のソフトウェアが実行中か否かの状態を含み、前記対応情報においては、前記供給停止と前記特定のソフトウェアが実行中の状態との組み合わせに対して、前記供給停止と前記特定のソフトウェアが実行中でない状態との組み合わせよりも前記中央処理装置の処理能力が高くなる制御規則が対応付けられることを特徴とする付記1~3のいずれか一つに記載の情報処理装置。付記5前記第1要素の状態変化は、前記中央処理装置によって実行される特定のソフトウェアの起動を含み、前記第2要素の状態は、前記情報処理装置の電池残量が閾値以上であるか否かの状態を含み、前記対応情報においては、前記特定のソフトウェアの起動と前記電池残量が閾値以上でない状態との組み合わせに対して、前記特定のソフトウェアの起動と前記電池残量が閾値以上である状態との組み合わせよりも前記中央処理装置の消費電力が低くなる制御規則が対応付けられることを特徴とする付記1~4のいずれか一つに記載の情報処理装置。付記6前記第1要素の状態変化は、ユーザが前記情報処理装置の操作を開始する場合のハードウェアの状態変化を含み、前記第2要素の状態は、前記情報処理装置の電池残量が閾値以上であるか否かの状態を含み、前記対応情報は、前記操作を開始する場合のハードウェアの状態変化と前記電池残量が閾値以上でない状態との組み合わせに対して、前記操作を開始する場合のハードウェアの状態変化と前記電池残量が閾値以上である状態との組み合わせよりも前記中央処理装置の消費電力が低くなる制御規則が対応付けられることを特徴とする付記1~5のいずれか一つに記載の情報処理装置。付記7前記操作を開始する場合のハードウェアの状態変化は、前記情報処理装置のディスプレイのオフからオンへの変化を含むことを特徴とする付記6に記載の情報処理装置。付記8前記制御規則は、前記制御部が前記動作周波数を制御するためのアルゴリズムおよびパラメータの少なくとも一方の変更を示す情報であり、前記制御部は、前記検索部によって検索された制御規則に基づいて前記アルゴリズムおよびパラメータの少なくとも一方を変更することを特徴とする付記1~7のいずれか一つに記載の情報処理装置。付記9前記第1要素の状態変化は、前記中央処理装置の負荷量の閾値未満から前記閾値以上への負荷増加を含み、前記制御部は、前記検出部によって前記負荷増加が検出された場合に前記動作周波数の上限値を増加させることを特徴とする付記1~8のいずれか一つに記載の情報処理装置。付記10前記中央処理装置が前記動作周波数の上限値で動作した時間の所定の期間内における割合に基づいて前記負荷量を算出する算出部を備え、前記検出部は、前記算出部によって算出された割合に基づいて前記負荷増加を検出することを特徴とする付記9に記載の情報処理装置。付記11前記第1要素の状態変化は、前記特定のソフトウェアの動作状態の変化を含み、前記検出部は、前記特定のソフトウェアによる前記中央処理装置の利用時間に基づいて前記動作状態の変化を検出することを特徴とする付記1~10のいずれか一つに記載の情報処理装置。付記12前記検出部は、前記特定のソフトウェアが起動すると前記動作状態の変化の検出処理を開始し、前記特定のソフトウェアが停止すると前記検出処理を終了することを特徴とする付記11に記載の情報処理装置。付記13前記情報処理装置にアプリケーションをインストールするインストーラを備え、前記第1要素の状態変化は前記中央処理装置によって実行される特定のソフトウェアの起動を含み、または、前記第2要素の状態は前記特定のソフトウェアが実行中か否かの状態を含み、前記インストーラは、インストールの対象のアプリケーションの前記情報処理装置に対するアクセス権限が特定のアクセス権限である場合に前記対象のアプリケーションを前記特定のソフトウェアとして記憶することを特徴とする付記1~12のいずれか一つに記載の情報処理装置。付記14前記情報処理装置にアプリケーションをアンインストールするアンインストーラを備え、前記第1要素の状態変化は前記中央処理装置によって実行される特定のソフトウェアの起動を含み、または、前記第2要素の状態は前記特定のソフトウェアが実行中か否かの状態を含み、前記アンインストーラは、アンインストールの対象のアプリケーションを前記特定のソフトウェアから除外することを特徴とする付記1~12のいずれか一つに記載の情報処理装置。付記15情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を取得し、前記第1要素の状態変化を検出し、前記第1要素の状態変化を検出した場合に前記第2要素の状態を判定し、前記対応情報から、検出した前記状態変化と、判定した前記状態と、の組み合わせに対応する制御規則を検索し、検索した前記制御規則に基づいて前記中央処理装置の動作周波数を制御する、処理をコンピュータに実行させることを特徴とする情報処理プログラム。付記16情報処理装置の第1要素の状態変化と、前記第1要素と異なる前記情報処理装置の第2要素の状態と、の各組み合わせに対して、前記情報処理装置の中央処理装置の動作周波数の制御規則が対応付けられる対応情報を取得し、前記第1要素の状態変化を検出し、前記第1要素の状態変化を検出した場合に前記第2要素の状態を判定し、前記対応情報から、検出した前記状態変化と、判定した前記状態と、の組み合わせに対応する制御規則を検索し、検索した前記制御規則に基づいて前記中央処理装置の動作周波数を制御する、ことを特徴とする情報処理方法。"