プロセッサによって制御されるプロセスの切り替えが検出されたときに、切り替え後のプロセスを特定し、プロセスごとに対応付けて記憶手段に記憶された、各プロセス処理における前記プロセッサの動作特性を示す特性値のうち、特定された前記切り替え後のプロセスに対応する特性値を該記憶手段から取得し、取得した前記切り替え後のプロセスに対応する特性値と所定閾値とを比較し、比較結果に応じて、前記プロセッサのクロック周波数の制御を行う、処理をコンピュータに実行させるクロック周波数制御プログラム。前記クロック周波数の制御を行う処理は、前記比較結果に応じて前記プロセッサのオーバークロック機能を有効又は無効にする請求項1記載のクロック周波数制御プログラム。前記特性値は、所定時間内にプロセス処理において発生する所定イベントの発生回数である一方、前記所定閾値は、イベント内容に応じた値であり、前記クロック周波数の制御を行う処理は、前記所定イベントに応じた判定基準に基づき、前記切り替え後のプロセスにおいて発生する前記所定イベントの発生回数と当該所定イベントの内容に応じた所定閾値との比較結果に応じて、前記プロセッサのクロック周波数の制御を行う請求項1又は2に記載のクロック周波数制御プログラム。前記プロセスを特定する処理は、プロセスの切り替え前まで前記プロセッサによって制御されていた切り替え前のプロセスをさらに特定し、特定した前記切り替え前のプロセスについて計測された特性値を、前記記憶手段に記憶させる処理を、前記コンピュータにさらに実行させる請求項1~3のいずれか1つに記載のクロック周波数制御プログラム。プロセッサによって制御されるプロセスの切り替えが検出されたときに、切り替え後のプロセスを特定する手段と、プロセスごとに対応付けて記憶手段に記憶された、各プロセス処理における前記プロセッサの動作特性を示す特性値のうち、特定された前記切り替え後のプロセスに対応する特性値を該記憶手段から取得する手段と、取得した前記切り替え後のプロセスに対応する特性値と所定閾値とを比較し、比較結果に応じて、前記プロセッサのクロック周波数の制御を行う手段と、を備えたクロック周波数制御装置。ここで、プロセッサで実行されるプロセスによって、プロセス処理におけるプロセッサの動作特性はそれぞれ異なる。そして、プロセスによっては、クロック周波数を増加させてもプロセッサの処理が効果的に高速化しない場合がある。この場合、クロック周波数増加に伴って増加する消費電力に相応するだけの処理効率の向上が図れない。しかし、上述のような従来技術では、プロセスごとにクロック周波数を変更することが難しかった。以上のような問題点に鑑み、本技術は、プロセッサの消費電力を抑制させることを目的とする。本技術は、1つの側面において、プロセッサによる制御を割当てるプロセスの切り替えが検出されたときに、切り替え後にプロセッサによる制御が割当てられる切り替え後プロセスを特定する。さらに、プロセスごとに対応付けて記憶手段に記憶された、プロセス処理におけるプロセッサの動作特性を示す特性値のうち、切り替え後プロセスに対応する特性値を記憶手段から取得する。そして、切り替え後プロセスに対応する特性値と所定閾値とを比較し、比較結果に応じて、プロセッサのクロック周波数の制御を行う。本技術によれば、1つの側面において、プロセッサの消費電力を抑制することが可能となる。本明細書では、マルチタスク処理を行うプロセッサによる制御を割当てるプロセスの切り替え時に、切り替え後のプロセス処理におけるプロセッサの動作特性が所定条件を満たすか否かに基づいて、クロック周波数の制御を行う技術について説明する。かかるクロック周波数制御技術によれば、プロセスごとの動作特性、すなわち、アプリケーションごとの特性に応じたクロック周波数の制御が可能となる。具体的には、例えば、クロック周波数を増加させることで処理速度が効果的に向上する特性を有するアプリケーションのプロセスを実行するときにのみクロック周波数を増加させて処理速度を向上させる。一方で、クロック周波数を増加させても処理速度が効果的に向上しない特性を有するアプリケーションのプロセスを実行するときには、クロック周波数を無駄に増加させることを防ぐ。このため、本明細書で説明するクロック周波数制御技術によれば、プロセスごとの動作特性に応じたクロック周波数の制御が実現されるため、消費電力を抑制しつつ、効果的にプロセッサにおける処理効率を向上させることができる。図1は、上述したクロック周波数制御技術の一実施形態が具現化された情報処理装置のハードウェア構成の一例を示す。本情報処理装置は、プロセッサ1、メモリ2、ストレージ3、可搬記憶媒体駆動装置4、入出力装置5及び通信インタフェース6を備える。プロセッサ1は、制御ユニット、演算ユニット及び命令デコーダ等を含み、実行ユニットが、命令デコーダで解読されたプログラムの命令に従い、制御ユニットより出力される制御信号に応じ、演算ユニットを用いて算術論理演算を実行する。かかるプロセッサ1は、制御に用いる各種情報が格納される制御レジスタ、既にアクセスしたメモリ2等の内容を一時的に格納可能なキャッシュ、及び、仮想記憶のページテーブルのキャッシュとしての機能を果たすTLBを備える。なお、プロセッサ1は、CPUCentralProcessingUnitコアが複数設けられている構成でもよい。メモリ2は、例えばRAMRandomAccessMemory等の記憶手段であり、プロセッサ1で実行されるプログラムがロードされるとともに、プロセッサ1の処理に用いるデータが格納されるメインメモリである。また、ストレージ3は、例えばHDDHardDiskDriveやフラッシュメモリ等の記憶手段であり、プログラムや各種データが格納される。可搬記憶媒体駆動装置4は、可搬記憶媒体7に記憶されたデータやプログラムを読み出す装置である。可搬記憶媒体7は、例えば磁気ディスク、光ディスク、光磁気ディスク又はフラッシュメモリ等である。なお、プロセッサ1は、メモリ2やストレージ3と協働しつつ、ストレージ3や可搬記憶媒体7に格納されたプログラムを実行する。なお、プロセッサ1が実行するプログラムや、アクセス対象となるデータは、当該情報処理装置と通信可能な他の装置に格納されていてもよい。入出力装置5は例えばキーボード等やディスプレイ等であり、ユーザ操作等による動作命令を受け付ける一方、情報処理装置による処理結果を出力する。通信インタフェース6は例えばLANLocalAreaNetworkカード等であり、外部とのデータ通信を可能にする。上述した情報処理装置の各構成要素は、バス8で接続されている。図2は、本実施形態に係るクロック周波数制御装置を含んだ情報処理装置の機能ブロック図の一例である。本情報処理装置は、プロセッサ10、メモリ20、オペレーティングシステム30、デバイスドライバ40及びアプリケーション処理部50を有する。プロセッサ10は、図1のプロセッサ1に対応し、メモリ20は、図1のメモリ2に対応する。プロセッサ10は、性能モニタリングカウンタ11及びオーバークロック機能設定レジスタ12を備えている。性能モニタリングカウンタ11は、プロセッサ10において発生するイベント等の発生回数をカウントするカウンタである。性能モニタリングカウンタ11でカウントするイベントには、プロセッサ内部で発生するイベント及びプロセッサ外部とのやり取りで発生するイベントの両方が含まれる。この性能モニタリングカウンタ11のカウント値は、換言すれば、プロセス処理におけるプロセッサの動作特性を示す特性値である。本実施形態では、性能モニタリングカウンタ11は、クロック周波数の制御をするための判断基準となるプロセッサの動作特性を特定可能なイベントの一例として、実行命令数、メモリアクセス数及びI/Oアクセス数のカウントを行う。また、性能モニタリングカウンタ11には、所定のイベントが発生したときに所定のベクタに割り込み処理を発生させるように設定をすることが可能である。本実施形態では、性能モニタリングカウンタ11が、TLBのエントリの無効化TLBフラッシュを検出したときに、後述する割り込みハンドラ42を呼び出すように設定をする。なお、TLBフラッシュを検出することによりプロセスの切り替えを検出する技術については、特開2009-223451号公報に記載の技術を用いることができる。かかる技術を用いることにより、オペレーティングシステム30を改変することなくプロセスの切り替えを検出でき、オーバーヘッドも少なく抑えることができる。オーバークロック機能設定レジスタ12は、プロセッサ10におけるオーバークロック機能即ち、プロセッサを通常のクロック周波数を上回るクロック周波数で動作させる機能を有効にするか又は無効にするかの制御を行うレジスタである。メモリ20には、閾値テーブル21と、動作特性テーブル22が格納される。閾値テーブル21は、プロセス処理におけるプロセッサの動作特性を示す性能モニタリングカウンタ11のカウント値との比較において、クロック周波数を増加させるか否かを判定するための閾値等が格納されるテーブルである。動作特性テーブル22は、性能モニタリングカウンタ11のカウント値が、プロセスごとに設定されるテーブルである。なお、閾値テーブル21及び動作特性テーブル22に格納されている情報は、テーブル形式に限らず、いかなる形式でメモリ20に記憶されていてもよい。特に、閾値については、少なくともクロック周波数を増加させるか否かの判定処理において使用可能なパラメータであればよい。デバイスドライバ40は、オペレーティングシステム30と連携して動作し、カウンタ設定部41と、割り込みハンドラ42と、を有する。カウンタ設定部41は、後述するアプリケーション処理部50から、性能モニタリングカウンタ11によるイベント発生回数の計測の開始又は終了指示を受信したときに、性能モニタリングカウンタ11のイベント設定を行う。性能モニタリングカウンタ11のイベント設定とは、具体的には、性能モニタリングカウンタ11がカウントを行うイベントや、イベントが発生したときのアクション等の設定である。割り込みハンドラ42は、プロセッサ10による制御の割り当て対象のプロセス、すなわちプロセッサ10により制御されるプロセスが切り替わってTLBフラッシュが発生したときに、割り込み処理を行う。割り込みハンドラ42は、プロセス特定部43、記憶部44及びクロック周波数制御部45を有する。プロセス特定部43は、プロセッサ10による制御の割り当て対象の切り替え前後のプロセスを識別するための情報をオペレーティングシステム30から取得し、切り替え前後のプロセスを特定する。なお、以下、プロセッサ10による制御の割り当て対象の切り替え前のプロセスを切り替え前プロセス、切り替え後のプロセスを切り替え後プロセスという。記憶部44は、プロセス特定部43が特定した切り替え前プロセスにつき、性能モニタリングカウンタ11のカウント値をメモリ20の動作特性テーブル22に格納するすなわち、記憶手段に記憶させる。クロック周波数制御部45は、動作特性テーブル22に格納された性能モニタリングカウンタ11のカウント値のうち、プロセス特定部43が特定した切り替え後プロセスに対応するカウント値を取得する。一方で、クロック周波数制御部45は、閾値テーブル21に格納された閾値を取得する。そして、クロック周波数制御部45は、計測対象となるイベントごとに、動作特性テーブル22から取得した切り替え後プロセスのカウント値と閾値とを比較する。さらに、クロック周波数制御部45は、その比較結果に応じて、オーバークロック機能設定レジスタ12の値を、オーバークロック機能を有効にする値又はオーバークロック機能を無効にする値のいずれかに設定する。これにより、オーバークロック機能が有効又は無効のいずれかに制御される。換言すれば、クロック周波数制御部45は、切り替え後プロセスのプロセス処理におけるプロセッサの動作特性に応じて、オーバークロック機能を有効にするか無効にするかの制御を行う。アプリケーション処理部50は、オペレーティングシステム30上において各種アプリケーションの処理を行う。このアプリケーション処理部50は、アプリケーションの1つとして管理プログラムの処理を行う。管理プログラムは、性能モニタリングカウンタ11によるイベント発生回数の計測の開始又は終了指示、クロック周波数制御の開始指示又は終了指示を行う。さらに、管理プログラムは、閾値テーブル21への閾値の設定等を行う。アプリケーション処理部50は、これらの処理を、入出力装置5を介して受け付けたユーザからの入力に基づいて行ってもよいし、単に管理プログラムの実行が開始されたことを契機として行ってもよい。図3は、本実施形態に係る性能モニタリングカウンタ11の構造を示す。性能モニタリングカウンタ11は、カウント値及びイベント設定の組み合わせで実装されている。イベント設定は、A発生回数をカウントする対象計測対象のイベント、Bイベントが発生したときに割り込み処理を行うか否か、C割り込み処理を発生させる場合、イベントが何回発生するごとに割り込み処理を行うか、の設定を含む。例えば、図3に示す1つめの性能モニタリングカウンタ111のイベント設定には、TLBFlash/割り込みON/1回毎と設定されている。このイベント設定は、ATLBフラッシュの発生回数をカウントするBTLBフラッシュが発生したときに割り込み処理を行うC割り込み処理を、TLBフラッシュが1回発生する毎に行うことを意味している。図3に示す他の性能モニタリングカウンタ112~114も同様であり、2つめの性能モニタリングカウンタ112は、実行命令の発生回数をカウントする。また、3つめの性能モニタリングカウンタ113は、メモリアクセスL2キャッシュ又はL3キャッシュミスの発生回数をカウントする。4つめの性能モニタリングカウンタ114は、I/Oアクセスの発生回数をカウントする。図4は、本実施形態に係る閾値テーブル21の構造を示す。閾値テーブル21は、図4に示すように、性能モニタリングカウンタ11で発生回数をカウントする計測対象のイベントと、そのイベント内容に応じた閾値と、クロック周波数を増加させるか否かを、閾値との比較においてどのように判定するかを示す判定基準と、を含む。なお、この閾値は、イベントのクロック単位すなわち、単位時間1クロックあたりの発生回数と比較するための閾値である。判定基準には、具体的には1又は2のいずれかの値が格納される。判定基準が1の場合には、イベントのクロック単位の発生回数が閾値よりも大きいときに、クロック周波数を増加させる判定基準を満たすものとする。一方、判定基準が2の場合には、イベントのクロック単位の発生回数が閾値以下であるときに、クロック周波数を増加させる判定基準を満たすものとする。図5は、本実施形態に係る動作特性テーブル22の構造を示す。動作特性テーブル22は、図5に示すように、プロセスを一意に特定する識別子PIDと、性能モニタリングカウンタ11による計測期間におけるクロック発生数積算値と、性能モニタリングカウンタ11による計測対象のイベントである実行命令数、メモリアクセス数及びI/Oアクセスと、を含む。実行命令数、メモリアクセス数及びI/Oアクセスは、それぞれ、計測期間における積算値及びクロック単位のカウント値を含む。次に、本実施形態に係るクロック周波数制御装置を含んだ情報処理装置における各構成要素の処理の一例につき、図6の1~7を参照して説明する。1アプリケーション処理部50は、管理プログラムを実行し、性能モニタリングカウンタ11における計測の開始指示及びクロック周波数制御の開始指示を、デバイスドライバ40のカウンタ設定部41に送信する。この送信処理は、上述したように、入出力装置5を介してユーザから指示が入力されたことを契機として行ってもよいし、単に管理プログラムの実行開始を契機として行ってもよい。2また、アプリケーション処理部50は、メモリ20の閾値テーブル21に、計測対象の各イベントの閾値及び判定基準を設定する。ここで、アプリケーション処理部50は、入出力装置5を介してユーザから閾値及び判定基準が入力された場合には入力を受け付け、その入力された閾値及び判定基準を閾値テーブル21に設定してもよい。なお、上述したように、閾値及び判定基準は必ずしもテーブルの形式で保持されている必要はない。また、閾値及び判定基準は、この段階で必ずしもメモリ20に保持される必要があるものでもなく、後述する割り込みハンドラ42におけるカウント値と閾値との比較処理において使用可能であればよい。3カウンタ設定部41は、アプリケーション処理部50から受信した指示に応じ、性能モニタリングカウンタ11の設定を行う。具体的には、性能モニタリングカウンタ11のイベント設定に、図3で示したような内容の設定を行う。さらに、カウンタ設定部41は、TLBフラッシュ発生時、すなわち、プロセス切り替え時に割り込みハンドラ42が呼び出されるように、割り込みハンドラ42のアドレスを割込みベクタ図示略に設定する。そして、デバイスドライバ40及びプロセッサ10は、プロセス処理におけるプロセッサの動作特性の計測及びクロック周波数制御を開始する。4ここで、オペレーティングシステム30によりTLBフラッシュが行われたことを性能モニタリングカウンタ11が検出し、TLBフラッシュのカウント値が増加すると、性能モニタリングカウンタ11のイベント設定に基づき、割り込みハンドラ42の割り込み処理が開始する。換言すれば、プロセッサ10による制御の割り当て対象のプロセスの切り替えが発生したときに、割り込みハンドラ42の割り込み処理が発生する。5割り込みハンドラ42は、切り替え前プロセス及び切り替え後プロセスを特定する。そして、割り込みハンドラ42は、性能モニタリングカウンタ11の計測対象のイベントのカウント値を読み出し、読み出したカウント値を、切り替え前プロセスの動作特性を示すカウント値として動作特性テーブル22に格納する。6一方、割り込みハンドラ42は、動作特性テーブル22を参照して、切り替え後プロセスの動作特性を示す計測対象のイベントのカウント値を取得する一方、閾値テーブル21を参照して、計測対象のイベントの判定基準及び閾値を取得する。そして、計測対象のイベントのそれぞれについて、取得した判定基準に基づき、カウント値と閾値とを比較する。7さらに、割り込みハンドラ42は、6の比較の結果、計測対象のイベントのうちいずれかのカウント値が、クロック周波数を増加させる判定基準を満たす場合には、オーバークロック機能設定レジスタ12に、オーバークロック機能を有効にする値を設定する。一方、割り込みハンドラ42は、6の比較の結果、計測対象の全てのイベントのカウント値が、クロック周波数を増加させる判定基準を満たさない場合には、オーバークロック機能設定レジスタ12に、オーバークロック機能を無効にする値を設定する。換言すれば、割り込みハンドラ42は、切り替え後プロセスにおいて、オーバークロック状態にすることが処理速度の向上に有効である場合には、オーバークロック機能を有効にする一方、オーバークロック状態にすることが処理速度の向上にあまり有効でない場合には、オーバークロック機能を無効にする。なお、図6には示していないが、アプリケーション処理部50は、性能モニタリングカウンタ11における計測の終了指示及びクロック周波数制御の終了指示を、デバイスドライバ40のカウンタ設定部41に送信する。この処理も、上述したように、入出力装置5を介してユーザから指示が入力されたことを契機として行ってもよい。そして、カウンタ設定部41及び割り込みハンドラ42を含むデバイスドライバ40並びに性能モニタリングカウンタ11を含むプロセッサ10は、プロセス処理におけるプロセッサの動作特性の計測及びクロック周波数制御を終了する。次に、割り込みハンドラ42の処理を、図7のフローチャートを参照して詳述する。なお、この処理は、上述した図6の説明における5~7に対応するものである。ステップ1図ではS1と略記する。以下同様では、プロセス特定部43が、切り替え前プロセスのプロセス識別子及び切り替え後プロセスのプロセス識別子をオペレーティングシステム30から取得して、切り替え前プロセス及び切り替え後プロセスを特定する。ステップ2では、記憶部44が、性能モニタリングカウンタ11の計測対象のイベントのカウント値を読み出す。この読み出した値は、切り替え前プロセスについて計測されたカウント値である。記憶部44は、動作特性テーブル22に格納されているカウント値のうち、プロセス特定部43が特定した切り替え前プロセスのプロセス識別子に対応するカウント値に、読み出したカウント値を反映させる。具体的には、記憶部44は、動作特性テーブル22に格納された、切り替え前プロセスのプロセス識別子に対応するクロック発生数の積算値に、前回のプロセス切り替えから今回のプロセス切り替えまでのクロック発生数を加算する。なお、前回のプロセス切り替えから今回のプロセス切り替えまでのクロック発生数は、プロセッサ10においてカウンタ等で保持しておけばよい。また、記憶部44は、動作特性テーブル22に格納されたカウント値のうち、切り替え前プロセスのプロセス識別子に対応する実行命令数の積算値に、性能モニタリングカウンタ11の実行命令数のカウント値を加算する。さらに、記憶部44は、実行命令数の積算値をクロック発生数の積算値で除算して、クロック単位、すなわち、単位時間あたりの実行命令数を算出する。なお、この単位時間あたりの実行命令数は、単位時間あたりの実行命令数の平均値となる。そして、記憶部44は、これらの算出した値で、性能モニタリングカウンタ11のクロック単位の実行命令数を更新する。また、記憶部44は、メモリアクセス数及びI/Oアクセス数についても、実行命令数と同様に処理を行う。なお、動作特性テーブル22に、切り替え前プロセスのプロセス識別子に対応するカウント値が登録されていない場合には、記憶部44は、次のように処理を行う。すなわち、記憶部44は、性能モニタリングカウンタ11から読み出したカウント値を積算値とするとともに、その積算値を、前回のプロセス切り替えから今回のプロセス切り替えまでのクロック発生数で除算してクロック単位のカウント値を算出する。そして、記憶部44は、前回のプロセス切り替えから今回のプロセス切り替えまでのクロック発生数並びにカウント値の積算値及びクロック単位のカウント値を、プロセス識別子に対応付けて動作特性テーブル22に新たに格納する。また、各イベントのカウント値の積算値は、計測している期間全体の積算値に限定されるものではなく、例えば、所定期間分所定数のクロック発生数分のカウント値が積算されるごとに、積算値をリセットしてもよい。さらには、記憶部44は、切り替え前プロセスのプロセス識別子に対応するカウント値が動作特性テーブル22に既に登録されている場合にも、上記のような新たにカウント値を格納する場合における処理と同様に、直近の計測期間のみのカウント値で動作特性テーブル22を更新してもよい。ステップ3では、クロック周波数制御部45が、動作特性テーブル22を参照し、プロセス特定部43により特定された切り替え後プロセスのプロセス識別子に対応するカウント値が動作特性テーブル22に格納されているか否かを判定する。クロック周波数制御部45は、切り替え後プロセスのプロセス識別子に対応するカウンタ値が動作特性テーブル22に登録されていればステップ4に進みYes、登録されていなければステップ7に進むNo。ステップ4では、クロック周波数制御部45が、動作特性テーブル22に格納されているカウント値のうち、切り替え後プロセスのプロセス識別子に対応するカウント値を読み出す。ステップ5では、クロック周波数制御部45が、計測対象のイベントのそれぞれにつき、動作特性テーブル22から読み出した、切り替え後プロセスのプロセス識別子に対応するカウント値と、閾値テーブル21の閾値と、を比較する。具体的には、クロック周波数制御部45は、計測対象のイベントである実行命令数、メモリアクセス数及びI/Oアクセス数のそれぞれにつき、閾値テーブル21に格納された判断基準に基づいて、切り替え後プロセスのクロック単位のカウント値と閾値との比較を行う。そして、クロック周波数制御部45は、計測対象のイベントの少なくともいずれか1つにおけるクロック単位のカウント値が、クロック周波数を増加させる判定基準を満たしているか否かを判定する。具体的には、閾値テーブル21に格納された判定基準が1である実行命令数については、クロック単位の発生回数が閾値よりも大きいか否かを判定する。一方、閾値テーブル21に格納された判定基準が2であるメモリアクセス数及びI/Oアクセス数については、クロック単位の発生回数が閾値以下であるか否かを判定する。そして、クロック周波数制御部45は、計測対象のイベントの少なくともいずれか1つにおけるクロック単位のカウント値が判定基準を満たしていれば、ステップ6に進みYes、計測対象の全てのイベントのクロック単位のカウント値が判定基準を満たしていなければ、ステップ7に進むNo。なお、クロック周波数制御部45は、上述のような判定方法に限らず、例えば、計測対象の全てのイベントにおけるクロック単位のカウント値がクロック周波数を増加させる判定基準を満たしているときにのみ、ステップ6に進むようにしてもよい。ステップ6では、クロック周波数制御部45が、オーバークロック機能設定レジスタ12の値を、オーバークロック機能を有効にする値に設定する。換言すれば、クロック周波数制御部45は、クロック周波数が通常のクロック周波数を超えて増加し得るように制御を行う。ステップ7では、クロック周波数制御部45が、オーバークロック機能設定レジスタ12の値を、オーバークロック機能を無効にする値に設定する。換言すれば、クロック周波数制御部45は、クロック周波数が通常のクロック周波数を超えないように制御を行う。ステップ8では、クロック周波数制御部45が、性能モニタリングカウンタ11のカウント値を初期化する。このように、性能モニタリングカウンタ11のカウント値が、プロセスの切り替えごとに発生する割り込み処理において初期化されることにより、性能モニタリングカウンタ11は、プロセス毎のカウント値を保持できることとなる。かかるクロック周波数制御技術によれば、プロセス毎すなわち、アプリケーション毎のイベントの発生回数が性能モニタリングカウンタ11で計測され、動作特性テーブル22に格納される。そして、プロセスの切り替えが発生したときに、切り替え後プロセスについて動作特性テーブル22に格納された性能モニタリングカウンタ11のカウント値と閾値との比較結果に基づいて、オーバークロック機能を有効にするか無効にするかが決定され、クロック周波数が制御される。このため、マルチタスク処理においてプロセスにプロセッサの制御が割り当てられるときに、そのプロセス処理におけるプロセッサの動作特性に応じて、オーバークロック機能のONとOFFが切り替えられることとなる。具体的には、例えば、単位時間あたりの実行命令数が多くカウントされるプロセスは、クロック周波数を増加させると、効果的に処理速度が向上する傾向にある。逆に、単位時間あたりのメモリアクセス数やI/Oアクセス数が多くカウントされるプロセスは、クロック周波数を増加させても、処理速度が向上しない傾向にある。本実施形態に係るクロック周波数制御技術によれば、プロセスごとにこれらのイベントが発生する回数と閾値とが比較される。そして、イベントに応じた判定基準に基づいて、オーバークロック機能がON又はOFFのいずれかに制御され、クロック周波数が切り替えられる。このため、プロセスの動作特性に応じて、プロセッサにおける処理効率を効果的に向上させる一方で、無駄な消費電力を抑制することができる。なお、上記実施形態では、クロック周波数の制御を、プロセッサに一般的に具備されているオーバークロック機能を有効にするか無効にするかを切り替えることで簡易に実現している。しかしながら、クロック周波数の制御方法はかかる方法に限定されるものではなく、いかなる方法を用いてもよい。また、上記実施形態では、プロセスの切り替えを検出する毎に、切り替え前プロセスについての性能モニタリングカウンタ11のカウント値を動作特性テーブル22に格納している。これにより、直近のプロセッサにおける動作状態を動作特性テーブル22に反映させることができ、動作特性テーブル22の各プロセスのカウント値の精度が高くなる。しかしながら、動作特性テーブル22のカウント値の初期化はプロセスの切り替え毎に行う必要があるものの、動作特性テーブル22への格納については、必ずしもプロセスの切り替え時に行う必要があるものではない。例えば、処理のオーバーヘッドを低減させるべく、プロセスの切り替えが複数回行われる毎に、動作テーブル22へのカウント値の反映を行ってもよい。さらには、例えば、予め管理プログラムで、アプリケーションごとにプロセスの動作特性を示す特性値を保持しておき、アプリケーション実行時に、その特性値をプロセス識別子に対応付けて動作特性テーブル22に格納するようにしてもよい。さらに、計測対象とするイベントを、ユーザにより設定可能としてもよい。具体的には、例えば、アプリケーション処理部50の管理プログラムが、入出力装置5から入力されたイベント設定情報を受け付け、入力されたイベント設定情報で指定されたイベントを、動作特性テーブル22の項目として設定してもよい。一方で、管理プログラムは、カウンタ設定部41に対し、性能モニタリングカウンタ11において当該入力されたイベントの発生回数をカウントするように指示を送信し、カウンタ設定部41が、かかる指示内容を性能モニタリングカウンタ11のイベント設定に反映させればよい。このように、計測対象のイベントをユーザが任意に切り替えることができるようにすることで、クロック周波数制御における汎用性及び柔軟性が向上する。上述した情報処理装置の機能的構成及び物理的構成は、上述の態様に限るものではなく、例えば、各機能や物理資源を統合して実装したり、逆に、さらに分散して実装したりすることも可能である。以上の実施形態に関し、更に以下の付記を開示する。付記1プロセッサによって制御されるプロセスの切り替えが検出されたときに、切り替え後のプロセスを特定し、プロセスごとに対応付けて記憶手段に記憶された、各プロセス処理における前記プロセッサの動作特性を示す特性値のうち、特定された前記切り替え後のプロセスに対応する特性値を該記憶手段から取得し、取得した前記切り替え後のプロセスに対応する特性値と所定閾値とを比較し、比較結果に応じて、前記プロセッサのクロック周波数の制御を行う処理をコンピュータに実行させるクロック周波数制御プログラム。付記2前記クロック周波数の制御を行う処理は、前記比較結果に応じて前記プロセッサのオーバークロック機能を有効又は無効にする付記1に記載のクロック周波数制御プログラム。付記3前記特性値は、所定時間内にプロセス処理において発生する所定イベントの発生回数である一方、前記所定閾値はイベント内容に応じた値であり、前記クロック周波数の制御を行う処理は、前記所定イベントに応じた判定基準に基づき、前記切り替え後のプロセスにおいて発生する前記所定イベントの発生回数と当該所定イベントの内容に応じた所定閾値との比較結果に応じて、前記プロセッサのクロック周波数の制御を行う付記1又は2に記載のクロック周波数制御プログラム。付記4前記所定イベントは、ユーザによる入力で指定されたイベントである付記3に記載のクロック周波数制御プログラム。付記5前記特性値及び所定閾値は、クロック単位の実行命令数である付記1~4のいずれか1つに記載のクロック周波数制御プログラム。付記6前記特性値及び所定閾値は、クロック単位のメモリアクセス数である付記1~5のいずれか1つに記載のクロック周波数制御プログラム。付記7前記特性値及び所定閾値は、クロック単位のI/Oアクセス数である付記1~6のいずれか1つに記載のクロック周波数制御プログラム。付記8前記プロセスを特定する処理は、プロセスの切り替え前まで前記プロセッサによって制御されていた切り替え前のプロセスをさらに特定し、特定した前記切り替え前のプロセスについて計測された特性値を、前記記憶手段に記憶させる処理を、前記コンピュータにさらに実行させる付記1~7のいずれか1つに記載のクロック周波数制御プログラム。付記9前記クロック周波数の制御を行う処理は、ユーザにより入力された閾値と前記特性値とを比較する付記1~8のいずれか1つに記載のクロック周波数制御プログラム。付記10プロセッサによって制御されるプロセスの切り替えが検出されたときに、切り替え後のプロセスを特定する手段と、プロセスごとに対応付けて記憶手段に記憶された、各プロセス処理における前記プロセッサの動作特性を示す特性値のうち、特定された前記切り替え後のプロセスに対応する特性値を該記憶手段から取得する手段と、取得した前記切り替え後のプロセスに対応する特性値と所定閾値とを比較し、比較結果に応じて、プロセッサのクロック周波数の制御を行う手段と、を備えたクロック周波数制御装置。