(57)【特許請求の範囲】
【請求項１】
中央処理装置ＣＰＵを制御する方法であって、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
前記１個のＣＰＵの前記動作周波数がコア・オフライン周波数未満であるか否かを判定することと、
前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数未満である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じることと、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数以上である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵ各々に対して前記ステップをＮ回実行することと、
前記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得することと、
前記Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止することと、
を含む方法。
【請求項２】
中央処理装置ＣＰＵを制御する方法であって、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
前記１個のＣＰＵの前記動作周波数がコア・オフライン周波数未満であるか否かを判定することと、
前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数未満である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じることと、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数以上である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、前記１個のＣＰＵに対して前記ステップをＮ回実行することと、
前記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得することと、
前記Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止することと、
を含む方法。
【請求項３】
中央処理装置ＣＰＵを制御する方法であって、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
前記１個のＣＰＵの前記動作周波数がコア・オンライン周波数より大きいか否かを判定することと、
前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数より大きい場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じることと、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数以下である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して前記ステップを実行し、Ｎ回繰り返すことと、
前記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得することと、
前記Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することと、
を含む方法。
【請求項４】
中央処理装置ＣＰＵを制御する方法であって、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
前記１個のＣＰＵの前記動作周波数がコア・オンライン周波数より大きいか否かを判定することと、
前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数より大きい場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じることと、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの動作周波数が前記コア・オンライン周波数以下である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、前記１個のＣＰＵに対して前記ステップをＮ回実行することと、
前記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得することと、
前記Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することと、
を含む方法。
【請求項５】
前記Ｍ個の動作中のＣＰＵそれぞれに対して前記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して前記ステップをＮ回実行することを含む、請求項１または３に記載の方法。
【請求項６】
ｎ番目の動作中のＣＰＵに対して前記ステップをＮ回実行することは、
前記ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、前記タイマｎの前記計時時点に連続してＮ回達したときに前記ステップがＮ回実行されるように、前記ステップを実行することを含む、請求項５に記載の方法。
【請求項７】
前記１個のＣＰＵに対して前記ステップをＮ回実行することは、
前記１個のＣＰＵに対応するタイマａの計時時点に達したとき、前記タイマａの前記計時時点に連続してＮ回達したときに前記ステップがＮ回実行されるように、前記ステップを実行することを含む、請求項２または４に記載の方法。
【請求項８】
システムが待機状態であるとき、前記タイマによって、計時を停止すること、または、
前記システムが待機状態でないとき、前記タイマによって、計時を開始すること
をさらに含む、請求項６または７に記載の方法。
【請求項９】
前記タイマの前記計時時点に連続して達したとき、前記タイマに対応する前記ＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、前記動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より大きい場合、前記タイマによって、計時を停止することをさらに含む、請求項７または８に記載の方法。
【請求項１０】
前記最大周波数持続期間閾値は、前記周波数重みが前記第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、前記動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より大きいということは、
前記動作周波数が全て最大周波数値である回数が前記最大周波数持続期間閾値に１を加えたものであるということである、請求項９に記載の方法。
【請求項１１】
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止することは、
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、前記動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満であるとして、少なくとも１個の動作中のＣＰＵを停止することを含む、請求項１から１０のいずれか１項に記載の方法。
【請求項１２】
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵをオンにすることは、
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、前記動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含む、請求項３から１１のいずれか１項に記載の方法。
【請求項１３】
プロセッサを備える端末であって、前記プロセッサは、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
前記１個のＣＰＵの前記動作周波数がコア・オフライン周波数未満であるか否かを判定し、
前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数未満である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じ、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数以上である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して前記ステップをＮ回実行し、
前記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得し、
前記Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている、端末。
【請求項１４】
プロセッサを備える端末であって、前記プロセッサは、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
前記１個のＣＰＵの前記動作周波数がコア・オフライン周波数未満であるか否かを判定し、
前記１個のＣＰＵの前記動作周波数がコア・オフライン周波数未満である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じ、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オフライン周波数以上である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、前記１個のＣＰＵに対して前記ステップをＮ回実行し、
前記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
前記Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている、端末。
【請求項１５】
プロセッサを備える端末であって、前記プロセッサは、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
前記１個のＣＰＵの前記動作周波数がコア・オンライン周波数より大きいか否かを判定し、
前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数より大きい場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じ、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数以下である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して前記ステップを実行し、Ｎ回繰り返し、
前記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得し、
前記Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている、端末。
【請求項１６】
プロセッサを備える端末であって、前記プロセッサは、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、前記動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
前記１個のＣＰＵの前記動作周波数がコア・オンライン周波数より大きいか否かを判定し、
前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数より大きい場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に第１の重みを乗じ、
前記第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、前記１個のＣＰＵの前記動作周波数が前記コア・オンライン周波数以下である場合、前記１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために前記１個のＣＰＵの前記使用率に前記第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、前記１個のＣＰＵに対して前記ステップをＮ回実行し、
前記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
前記Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている、端末。
【請求項１７】
前記プロセッサがＭ個の動作中のＣＰＵそれぞれに対して前記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して前記ステップをＮ回実行することを含む、請求項１３または１５に記載の端末。
【請求項１８】
前記プロセッサがｎ番目の動作中のＣＰＵに対して前記ステップをＮ回実行することは、
前記ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、前記タイマｎの前記計時時点に連続してＮ回達したときに前記ステップがＮ回実行されるように、前記ステップを実行することを含む、請求項１７に記載の端末。
【請求項１９】
前記プロセッサが前記１個のＣＰＵに対して前記ステップをＮ回実行することは、
前記１個のＣＰＵに対応するタイマａの計時時点に達したとき、前記タイマａの計時時点に連続してＮ回達したときに前記ステップがＮ回実行されるように、前記ステップを実行することを含む、請求項１４または１６に記載の端末。
【請求項２０】
前記プロセッサは、システムが待機状態であるとき、計時を停止するために前記タイマを制御するように、または、
前記システムが待機状態でないとき、計時を開始するために前記タイマを制御するようにさらに構成されている、請求項１８または１９に記載の端末。
【請求項２１】
前記プロセッサは、前記タイマの計時時点に連続して達したとき、前記タイマに対応する前記ＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、前記動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より大きい場合、計時を停止するために前記タイマを制御するようにさらに構成されている、請求項１８、１９、または２０に記載の端末。
【請求項２２】
前記最大周波数持続期間閾値は、前記周波数重みが前記第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、前記動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より大きいということは、前記動作周波数が全て最大周波数値である回数が前記最大周波数持続期間閾値に１を加えたものであるということである、請求項２１に記載の端末。
【請求項２３】
前記平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、前記プロセッサが少なくとも１個の動作中のＣＰＵを停止することは、
前記平均が前記ＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、前記動作中のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含む、請求項１３から２２のいずれか１項に記載の端末。
【請求項２４】
前記平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、前記プロセッサが非動作状態にある少なくとも１個のＣＰＵを起動することは、
前記平均が前記ＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、前記動作中のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含む、請求項１５から２３のいずれか１項に記載の端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信の分野、詳しくは、中央処理装置を制御する方法および装置に関する。
【背景技術】
【０００２】
継続的な計算需要、特に、モバイルコンピューティングの分野の増加に伴って、プロセッサは、高い主周波数およびマルチコアに向かって発展するので、単位時間内の並列処理能力が著しく増大され、かつ、同時に、深刻な消費電力負荷がさらに発生する。従来型のシングルコア・プロセッサの規定方式は、もはやマルチコア・プロセッサに適用できない。コンピューティングシステム、特に、携帯型のモバイルコンピューティング機器に対し、プロセッサの非効率的な消費電力の問題を低減することが非常に重要である。
【０００３】
従来技術では、マルチコア・プロセッサの消費電力を削減し、かつ、同時に、ＣＰＵ性能への影響を低減するために、ＣＰＵホットスワップについて、使用率および中央処理装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、略称ＣＰＵ）のリアルタイム・プロセスの数のような情報に従って、インテリジェント・マネジメントが実行される１つの技術的解決手法が提案されている。具体的には、システム内のリアルタイム・プロセッサの台数が２以上かつ５未満の場合、起動（またはオン）にされているＣＰＵの台数は、リアルタイム・プロセスの個数である。システム内のリアルタイム・プロセスの個数が５以上であるとき、全てのＣＰＵを起動する。しかし、リアルタイム・プロセスの「バースト」特性およびシステムのＣＰＵ使用率のため、この技術的解決手法は、複数個のＣＰＵを短期間内に頻繁に起動および停止（またはオフ）させやすく、システムの消費電力の削減に反する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の実施形態は、ＣＰＵが短期間内に頻繁に起動および／または停止されることに起因する消費電力を削減することが可能な、中央処理装置を制御する方法および装置を提供する。
【課題を解決するための手段】
【０００５】
本発明の第１の態様によれば、中央処理装置ＣＰＵを制御する方法は、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定することと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じることと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することと、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得することと、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止することと、
を含む。
【０００６】
第１の態様の第１の可能な実現方式では、Ｍ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【０００７】
第１の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【０００８】
第１の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この方法は、
システムが待機状態であるとき、タイマによって、計時を停止することをさらに含む。
【０００９】
第１の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第１の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この方法は、
システムが待機状態でないとき、タイマによって、計時を開始することをさらに含む。
【００１０】
本発明の第１の態様、または、第１の態様の第１の可能な実現方式、または、第１の態様の第２の可能な実現方式、または、第１の態様の第３の可能な実現方式、または、第１の態様の第４の可能な実現方式、または、第１の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵをオフにすることは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含む。
【００１１】
本発明の第２の態様によれば、中央処理装置ＣＰＵを制御する方法は、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中の複数個のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定することと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じることと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、当該１個のＣＰＵに対して上記ステップをＮ回実行することと、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得することと、
当該Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
当該平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止することと、
を含む。
【００１２】
第２の態様の第１の可能な実現方式では、当該１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００１３】
第２の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、この方法は、
システムが待機状態であるとき、タイマによって、計時を停止することをさらに含む。
【００１４】
第２の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、または、第２の態様の第３の可能な実現方式と組み合わせて、第４の可能な実現方式では、この方法は、
システムが待機状態でないとき、タイマによって、計時を開始することをさらに含む。
【００１５】
本発明の第２の態様、または、第２の態様の第１の可能な実現方式、または、第２の態様の第２の可能な実現方式、または、第２の態様の第３の可能な実現方式、または、第２の態様の第４の可能な実現方式と組み合わせて、第５の可能な実現方式では、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵをオフにすることは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含む。
【００１６】
本発明の第３の態様によれば、中央処理装置ＣＰＵを制御する方法は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定することと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じることと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して上記ステップを実行し、Ｎ回繰り返すことと、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得することと、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを停止することと、
を含む。
【００１７】
第３の態様の第１の可能な実現方式では、Ｍ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【００１８】
第３の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点にＮ回連続して達したときに上記ステップがＮ回実行されるように上記ステップを実行することを含む。
【００１９】
第３の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この方法は、
システムが待機状態にあるとき、タイマによって、計時を停止することをさらに含む。
【００２０】
第３の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第３の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この方法は、
システムが待機状態でないとき、タイマによって、計時を開始することをさらに含む。
【００２１】
第３の態様の第２の可能な実現方式、または、本発明の第３の態様の第３の可能な実現方式、または、本発明の第３の態様の第４の可能な実現方式、または、本発明の第３の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、この方法は、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマによって、計時を停止することをさらに含む。
【００２２】
第３の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００２３】
本発明の第３の態様、または、第３の態様の第１の可能な実現方式、または、第３の態様の第２の可能な実現方式、または、第３の態様の第３の可能な実現方式、または、第３の態様の第４の可能な実現方式、または、第３の態様の第５の可能な実現方式、または、第３の態様の第６の可能な実現方式、または、第３の態様の第７の可能な実現方式と組み合わせて、第８の可能な実現方式では、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することは、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含む。
【００２４】
本発明の第４の態様によれば、中央処理装置ＣＰＵを制御する方法は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得することと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定することと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じることと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じることと、
Ｎが１以上の正の整数であるとして、当該１個のＣＰＵに対して上記ステップをＮ回実行することと、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得することと、
Ｎ個のＣＰＵ消費電力感度係数の平均を取得することと、
平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することと、
を含む。
【００２５】
第４の態様の第１の可能な実現方式では、当該１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００２６】
第４の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、この方法は、
システムが待機状態であるとき、タイマによって、計時を停止することをさらに含む。
【００２７】
第４の態様の第１の可能な実現方式と組み合わせて、または、第４の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この方法は、
システムが待機状態でないとき、タイマによって、計時を開始することをさらに含む。
【００２８】
第４の態様の第１の可能な実現方式、または、本発明の第４の態様の第２の可能な実現方式、または、本発明の第４の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この方法は、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマによって、計時を停止することをさらに含む。
【００２９】
第４の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００３０】
本発明の第４の態様、または、第４の態様の第１の可能な実現方式、または、第４の態様の第２の可能な実現方式、または、第４の態様の第３の可能な実現方式、または、第４の態様の第４の可能な実現方式、または、第４の態様の第５の可能な実現方式、または、第４の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することは、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含む。
【００３１】
本発明の第５の態様によれば、端末はプロセッサを含み、プロセッサは、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１の個ＣＰＵの使用率および動作周波数を取得し、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定し、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じ、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得し、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【００３２】
第５の態様の第１の可能な実現方式では、プロセッサがＭ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【００３３】
第５の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、プロセッサがｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００３４】
第５の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、プロセッサは、
システムが待機状態であるとき、計時を停止するためにタイマを制御するようにさらに構成されている。
【００３５】
第５の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第５の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、プロセッサは、
システムが待機状態でないとき、計時を開始するためにタイマを制御するようにさらに構成されている。
【００３６】
本発明の第５の態様、または、第５の態様の第１の可能な実現方式、または、第５の態様の第２の可能な実現方式、または、第５の態様の第３の可能な実現方式、または、第５の態様の第４の可能な実現方式、または、第５の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵをオフにすることは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個ＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵをオフにすることを含む。
【００３７】
本発明の第６の態様によれば、端末はプロセッサを含み、プロセッサは、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定し、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じ、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、当該１個のＣＰＵに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
当該Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【００３８】
第６の態様の第１の可能な実現方式では、プロセッサが当該１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００３９】
第６の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、プロセッサは、
システムが待機状態であるとき、タイマが計時を停止するようにさらに構成されている。
【００４０】
第６の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、または、第６の態様の第３の可能な実現方式と組み合わせて、第４の可能な実現方式では、プロセッサは、
システムが待機状態でないとき、タイマが計時を開始するようにさらに構成されている。
【００４１】
本発明の第６の態様、または、第６の態様の第１の可能な実現方式、または、第６の態様の第２の可能な実現方式、または、第６の態様の第３の可能な実現方式、または、第６の態様の第４の可能な実現方式と組み合わせて、第５の可能な実現方式では、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、プロセッサが少なくとも１個の動作中のＣＰＵを停止することは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含む。
【００４２】
本発明の第７の態様によれば、端末はプロセッサを含み、プロセッサは、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定し、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じ、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以下である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して上記ステップを実行し、Ｎ回繰り返し、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得し、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
当該平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【００４３】
第７の態様の第１の可能な実現方式では、プロセッサがＭ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【００４４】
第７の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、プロセッサがｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点にＮ回連続して達したときに上記ステップがＮ回実行されるように上記ステップを実行することを含む。
【００４５】
第７の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、プロセッサは、
システムが待機状態にあるとき、タイマが計時を停止するようにさらに構成されている。
【００４６】
第７の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第７の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、プロセッサは、
システムが待機状態でないとき、タイマが計時を開始するようにさらに構成されている。
【００４７】
第７の態様の第２の可能な実現方式、または、本発明の第７の態様の第３の可能な実現方式、または、本発明の第７の態様の第４の可能な実現方式、または、本発明の第７の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、プロセッサは、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、計時を停止するためにタイマを制御するようにさらに構成されている。
【００４８】
第７の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００４９】
本発明の第７の態様、または、第７の態様の第１の可能な実現方式、または、第７の態様の第２の可能な実現方式、または、第７の態様の第３の可能な実現方式、または、第７の態様の第４の可能な実現方式、または、第７の態様の第５の可能な実現方式、または、第７の態様の第６の可能な実現方式、または、第７の態様の第７の可能な実現方式と組み合わせて、第８の可能な実現方式では、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、プロセッサが非動作状態にある少なくとも１個のＣＰＵを起動することは、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含む。
【００５０】
本発明の第８の態様によれば、端末はプロセッサを含み、プロセッサは、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定し、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じ、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、１台のＣＰＵに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
当該Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
当該平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【００５１】
第８の態様の第１の可能な実現方式では、プロセッサが１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００５２】
第８の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、プロセッサは、
システムが待機状態であるとき、タイマが計時を停止するようにさらに構成されている。
【００５３】
第８の態様の第１の可能な実現方式と組み合わせて、または、第８の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、プロセッサは、
システムが待機状態でないとき、タイマが計時を開始するようにさらに構成されている。
【００５４】
第８の態様の第１の可能な実現方式、または、本発明の第８の態様の第２の可能な実現方式、または、本発明の第８の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、プロセッサは、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、計時を停止するためにタイマを制御するようにさらに構成されている。
【００５５】
第８の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００５６】
本発明の第８の態様、または、第８の態様の第１の可能な実現方式、または、第８の態様の第２の可能な実現方式、または、第８の態様の第３の可能な実現方式、または、第８の態様の第４の可能な実現方式、または、第８の態様の第５の可能な実現方式、または、第８の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、プロセッサが非動作状態にある少なくとも１個のＣＰＵを起動することは、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動することを含む。
【００５７】
本発明の第９の態様によれば、装置は、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている第１のユニットと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定するように構成されている第２のユニットと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１台のＣＰＵの使用率に第１の重みを乗じるように構成されている第３のユニットと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上であるとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じるように構成されている第４のユニットと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている第５のユニットと、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている第６のユニットと、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、少なくとも１個の動作中のＣＰＵを停止するように構成されている第７のユニットと、
を含む。
【００５８】
第９の態様の第１の可能な実現方式では、第５のユニットがＭ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【００５９】
第９の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、ｎ番目の動作中のＣＰＵに対応するタイマｎがさらに含まれ、第５のユニットがｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００６０】
第９の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この装置は、
システムが待機状態であるとき、タイマが計時を停止するように構成されている第８のユニットをさらに含む。
【００６１】
第９の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第９の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この装置は、
システムが待機状態でないとき、タイマが計時を開始するように構成されている第９のユニットをさらに含む。
【００６２】
本発明の第９の態様、または、第９の態様の第１の可能な実現方式、または、第９の態様の第２の可能な実現方式、または、第９の態様の第３の可能な実現方式、または、第９の態様の第４の可能な実現方式、または、第９の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、第７のユニットは、具体的には、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【００６３】
本発明の第１０の態様によれば、装置は、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている第１のユニットと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定するように構成されている第２のユニットと、
当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じるように構成されている第３のユニットと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上であるとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じるように構成されている第４のユニットと、
Ｎが１以上の正の整数であるとして、当該１個のＣＰＵに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている第５のユニットと、
Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている第６のユニットと、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、少なくとも１個の動作中のＣＰＵを停止するように構成されている第７のユニットと、
を含む。
【００６４】
第１０の態様の第１の可能な実現方式では、当該１個のＣＰＵに対応するタイマａがさらに含まれ、第５のユニットが当該１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００６５】
第１０の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、この装置は、
システムが待機状態であるとき、タイマが計時を停止するように構成されている第８のユニットをさらに含む。
【００６６】
第１０の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、または、第１０の態様の第３の可能な実現方式と組み合わせて、第４の可能な実現方式では、この装置は、
システムが待機状態でないとき、タイマが計時を開始するように構成されている第９のユニットをさらに含む。
【００６７】
本発明の第１０の態様、または、第１０の態様の第１の可能な実現方式、または、第１０の態様の第２の可能な実現方式、または、第１０の態様の第３の可能な実現方式、または、第１０の態様の第４の可能な実現方式と組み合わせて、第５の可能な実現方式では、第７のユニットは、具体的には、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵをオフにするように構成されている。
【００６８】
本発明の第１１の態様によれば、装置は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている第１のユニットと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定するように構成されている第２のユニットと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じるように構成されている第３のユニットと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じるように構成されている第４のユニットと、
Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して上記ステップを実行し、Ｎ回繰り返し、上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている第５のユニットと、
当該Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている第６のユニットと、
平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動にするために構成されている第７のユニットと、
を含む。
【００６９】
第１１の態様の第１の可能な実現方式では、第５のユニットがＭ個の動作中のＣＰＵそれぞれに対して上記ステップをＮ回実行することは、
ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含む。
【００７０】
第１１の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、ｎ番目の動作中のＣＰＵに対応するタイマｎがさらに含まれ、第５のユニットがｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、
ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、タイマｎの計時時点にＮ回連続して達したときに上記ステップがＮ回実行されるように上記ステップを実行することを含む。
【００７１】
第１１の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この装置は、
システムが待機状態にあるとき、タイマが計時を停止するように構成されている第８のユニットをさらに含む。
【００７２】
第１１の態様の第２の可能な実現方式と組み合わせて、第４の可能な実現方式では、または、第１１の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この装置は、
システムが待機状態でないとき、タイマが計時を開始するように構成されている第９のユニットをさらに含む。
【００７３】
第１１の態様の第２の可能な実現方式、または、本発明の第１１の態様の第３の可能な実現方式、または、本発明の第１１の態様の第４の可能な実現方式、または、本発明の第１１の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、この装置は、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、計時を停止するためにタイマを制御するように構成されている第１０のユニットをさらに含む。
【００７４】
第１１の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００７５】
本発明の第１１の態様、または、第１１の態様の第１の可能な実現方式、または、第１１の態様の第２の可能な実現方式、または、第１１の態様の第３の可能な実現方式、または、第１１の態様の第４の可能な実現方式、または、第１１の態様の第５の可能な実現方式、または、第１１の態様の第６の可能な実現方式、または、第１１の態様の第７の可能な実現方式と組み合わせて、第８の可能な実現方式では、第７のユニットは、具体的には、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【００７６】
本発明の第１２の態様によれば、装置は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている第１のユニットと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定するように構成されている第２のユニットと、
当該１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じるように構成されている第３のユニットと、
第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、当該１個のＣＰＵの動作周波数がコア・オンライン周波数以下であるとき、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じるように構成されている第４のユニットと、
Ｎが１以上の正の整数であるとして、当該１個のＣＰＵに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている第５のユニットと、
当該Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている第６のユニットと、
当該平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動にするように構成されている第７のユニットと、
を含む。
【００７７】
第１２の態様の第１の可能な実現方式では、当該１個のＣＰＵに対応するタイマａがさらに含まれ、第５のユニットが当該１個のＣＰＵに対して上記ステップをＮ回実行することは、
当該１個のＣＰＵに対応するタイマａの計時時点に達したとき、タイマａの計時時点に連続してＮ回達したときに上記ステップがＮ回実行されるように、上記ステップを実行することを含む。
【００７８】
第１２の態様の第１の可能な実現方式と組み合わせて、第２の可能な実現方式では、この装置は、
システムが待機状態であるとき、タイマが計時を停止するように構成されている第８のユニットをさらに含む。
【００７９】
第１２の態様の第１の可能な実現方式と組み合わせて、または、第１２の態様の第２の可能な実現方式と組み合わせて、第３の可能な実現方式では、この装置は、
システムが待機状態でないとき、タイマが計時を開始するように構成されている第９のユニットをさらに含む。
【００８０】
第１２の態様の第１の可能な実現方式、または、本発明の第１２の態様の第２の可能な実現方式、または、本発明の第１２の態様の第３の可能な実現方式と組み合わせて、第５の可能な実現方式では、この装置は、
タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、計時を停止するためにタイマを制御するように構成されている第１０のユニットをさらに含む。
【００８１】
第１２の態様の第５の可能な実現方式と組み合わせて、第６の可能な実現方式では、最大周波数持続期間閾値は、周波数重みが第１の重みであるとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
であり、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【００８２】
本発明の第１２の態様、または、第１２の態様の第１の可能な実現方式、または、第１２の態様の第２の可能な実現方式、または、第１２の態様の第３の可能な実現方式、または、第１２の態様の第４の可能な実現方式、または、第１２の態様の第５の可能な実現方式、または、第１２の態様の第６の可能な実現方式と組み合わせて、第７の可能な実現方式では、第７のユニットは、具体的には、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで動いているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【００８３】
本発明の第１３の態様によれば、プログラムコードを担持するコンピュータプログラムが提供され、ここで、コンピュータプログラムがコンピュータで動かされるとき、プログラムコードは、本発明の第１の態様、または、第１の態様の第１の可能な実現方式、または、第１の態様の第２の可能な実現方式、または、第１の態様の第３の可能な実現方式、または、第１の態様の第４の可能な実現方式、または、第１の態様の第５の可能な実現方式、または、第１の態様の第６の可能な実現方式、または、本発明の第２の態様、または、第２の態様の第１の可能な実現方式、または、第２の態様の第２の可能な実現方式、または、第２の態様の第３の可能な実現方式、または、第２の態様の第４の可能な実現方式、または、第２の態様の第５の可能な実現方式、または、本発明の第３の態様、または、第３の態様の第１の可能な実現方式、または、第３の態様の第２の可能な実現方式、または、第３の態様の第３の可能な実現方式、または、第３の態様の第４の可能な実現方式、または、第３の態様の第５の可能な実現方式、または、第３の態様の第６の可能な実現方式、または、第３の態様の第７の可能な実現方式、または、第３の態様の第８の可能な実現方式、または、本発明の第４の態様、または、第４の態様の第１の可能な実現方式、または、第４の態様の第２の可能な実現方式、または、第４の態様の第３の可能な実現方式、または、第４の態様の第４の可能な実現方式、または、第４の態様の第５の可能な実現方式、または、第４の態様の第６の可能な実現方式、または、第４の態様の第７の可能な実現方式と組み合わせて方法を実行する。
【００８４】
本発明の第１４の態様によれば、コンピュータ読み取り可能な記憶媒体が提供され、ここで、コンピュータがコンピュータ・プログラム・コードを記憶し、コンピュータ・プログラム・コードがコンピュータによって実行されるとき、コンピュータ・プログラム・コードは、コンピュータが本発明の第１の態様、または第１の態様の第１の可能な実現方式、または第１の態様の第２の可能な実現方式、または第１の態様の第３の可能な実現方式、または第１の態様の第４の可能な実現方式、または第１の態様の第５の可能な実現方式、または第１の態様の第６の可能な実現方式、または本発明の第２の態様、または第２の態様の第１の可能な実現方式、または第２の態様の第２の可能な実現方式、または第２の態様の第３の可能な実現方式、または第２の態様の第４の可能な実現方式、または第２の態様の第５の可能な実現方式、または本発明の第３の態様、または第３の態様の第１の可能な実現方式、または第３の態様の第２の可能な実現方式、または第３の態様の第３の可能な実現方式、または第３の態様の第４の可能な実現方式、または第３の態様の第５の可能な実現方式、または第３の態様の第６の可能な実現方式、または第３の態様の第７の可能な実現方式、または第３の態様の第８の可能な実現方式、または本発明の第４の態様、または第４の態様の第１の可能な実現方式、または第４の態様の第２の可能な実現方式、または第４の態様の第３の可能な実現方式、または第４の態様の第４の可能な実現方式、または第４の態様の第５の可能な実現方式、または第４の態様の第６の可能な実現方式、または第４の態様の第７の可能な実現方式と組み合わせて方法を実行することを可能にすることがある。
【００８５】
本発明の第１５の態様によれば、コンピュータ・プログラム・プロダクトが提供され、ここで、コンピュータ・プログラム・プロダクトは、コンピュータ・プログラム・コードを含み、コンピュータ・プログラム・コードがコンピュータによって実行されるとき、コンピュータ・プログラム・コードは、コンピュータが本発明の第１の態様、または第１の態様の第１の可能な実現方式、または第１の態様の第２の可能な実現方式、または第１の態様の第３の可能な実現方式、または第１の態様の第４の可能な実現方式、または第１の態様の第５の可能な実現方式、または第１の態様の第６の可能な実現方式、または本発明の第２の態様、または第２の態様の第１の可能な実現方式、または第２の態様の第２の可能な実現方式、または第２の態様の第３の可能な実現方式、または第２の態様の第４の可能な実現方式、または第２の態様の第５の可能な実現方式、または本発明の第３の態様、または第３の態様の第１の可能な実現方式、または第３の態様の第２の可能な実現方式、または第３の態様の第３の可能な実現方式、または第３の態様の第４の可能な実現方式、または第３の態様の第５の可能な実現方式、または第３の態様の第６の可能な実現方式、または第３の態様の第７の可能な実現方式、または第３の態様の第８の可能な実現方式、または本発明の第４の態様、または第４の態様の第１の可能な実現方式、または第４の態様の第２の可能な実現方式、または第４の態様の第３の可能な実現方式、または第４の態様の第４の可能な実現方式、または第４の態様の第５の可能な実現方式、または第４の態様の第６の可能な実現方式、または第４の態様の第７の可能な実現方式と組み合わせて方法を実行することを可能にすることがある。
【００８６】
上記解決手法から分かるように、本発明の実施形態において提供された中央処理装置を制御する方法および装置では、重み概念が導入されている。重みは、ＣＰＵ消費電力感度係数を取得するためにＣＰＵの使用率が乗じられ、ＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵが停止される。あるいは、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵが起動される。その結果、重みおよび平均を使用することにより、ＣＰＵを起動または／および停止するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【００８７】
本発明の実施形態または従来技術における技術的解決手法をより明瞭に示すために、実施形態または従来技術を説明するため必要な添付図面を以下に簡単に紹介する。
【図面の簡単な説明】
【００８８】
【図１】本発明の第１の実施形態によるＣＰＵを制御する方法の第１のフローチャートである。
【図２】本発明の第２の実施形態によるＣＰＵを制御する方法の第２のフローチャートである。
【図３】本発明の第３の実施形態によるＣＰＵを制御する方法の第３のフローチャートである。
【図４】本発明の第４の実施形態によるＣＰＵを制御する方法の第４のフローチャートである。
【図５】本発明の第９の実施形態による端末の概略構造図である。
【図６】本発明の第１７の実施形態による携帯電話機の部分構造のブロック図である。
【図７】本発明の第１８の実施形態による装置の一般的な構造の概略図である。
【図８】本発明の第１２の実施形態による装置の詳細構造の概略図である。
【発明を実施するための形態】
【００８９】
本発明の目的、技術的解決手法、および利点をより分かりやすくするために、添付図面を参照して本発明の実施形態を以下でより詳細に説明する。
【００９０】
本発明の第１の実施形態は、ＣＰＵを制御する方法を提供し、この方法は、図１に示されるように、以下のステップを含む。
【００９１】
ステップ１０１：動作中の複数個のＣＰＵのうちの１台のＣＰＵの使用率および動作周波数を得る。動作中の複数個のＣＰＵの個数はＭであり、Ｍは、２以上の正の整数である。ＣＰＵの使用率および動作周波数は、検出により取得することができる。ＣＰＵの使用率は、システム内で実行されるプログラムによって占有されているＣＰＵ資源の相対的なパーセンテージを意味する。
【００９２】
ステップ１０２：当該１個のＣＰＵの動作周波数がコア・オフライン周波数（ｃｏｒｅ  ｏｆｆ−ｌｉｎｅ  ｆｒｅｑｕｅｎｃｙ）未満であるか否かを判定する。当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、ステップ１０３へ進み、そうではない場合、ステップ１０４へ進む。コア・オフライン周波数は、４８６メガヘルツ（ＭＨｚ）でもよい。
【００９３】
ステップ１０３：当該１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、１台のＣＰＵに対応するＣＰＵ消費電力感度係数（ＣＰＵ  ｐｏｗｅｒ  ｃｏｎｓｕｍｐｔｉｏｎ  ｓｅｎｓｉｔｉｖｅ  ｆａｃｔｏｒ）を取得するために当該１個のＣＰＵの使用率に第１の重みを乗じる。第１の重みは、小さい重みでもよく、この重みの値は、１でもよい。ＣＰＵ消費電力感度係数は、ＣＰＵによって消費される電力に対するＣＰＵの感度の度合い（寄与度、貢献度）であり、この感度係数の値は、現在のＣＰＵの使用率にＣＰＵ周波数重みを乗じた積である。
【００９４】
ステップ１０４：当該１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、当該１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために当該１個のＣＰＵの使用率に第２の重みを乗じる。第２の重みは、中間重みでもよく、この重みの値は、小さい重みの値より大きく、たとえば、２でもよい。第１の重みと第２の重みとは、等しくはなく、どちらも１以上の正の整数である。
【００９５】
ステップ１０５：Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行する。通常は、Ｎの値は、５でもよい。
【００９６】
ステップ１０６：上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を得る。
【００９７】
ステップ１０７：Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を得る。平均は、以下の数種類：算術平均、幾何平均、調和平均、２乗平均平方根、移動平均、算術幾何平均、および算術２乗平均平方根を含むことがある。上記の様々な種類の平均を計算する方法は、当業者によって周知であり、ここではこれ以上説明しない。
【００９８】
ステップ１０８：ステップ１０７で得た平均がＣＰＵターンオフ消費電力感度係数閾値（ＣＰＵ  ｔｕｒｎ−ｏｆｆ  ｐｏｗｅｒ  ｃｏｎｓｕｍｐｔｉｏｎ  ｓｅｎｓｉｔｉｖｅ  ｆａｃｔｏｒ  ｔｈｒｅｓｈｏｌｄ）未満である場合、少なくとも１個の動作中のＣＰＵを停止する（又はオフにする）。ＣＰＵを停止するためのポリシーは、最後に起動したＣＰＵを停止すること、または、最初に起動したＣＰＵを停止することでもよい。代替的に、動作中の各ＣＰＵの使用率にしたがって、使用率が最も低いＣＰＵを停止してもよい。あるいは、動作中の各ＣＰＵの動作周波数にしたがって、動作周波数が最も低いＣＰＵを停止してもよい。さらに、ここでは限定されないその他のポリシーにしたがって、ＣＰＵを停止してもよい。以下の記述において、ＣＰＵを停止するため、動作について、ここでのターンオフ・ポリシー（ｔｕｒｎ−ｏｆｆ  ｐｏｌｉｃｙ）が参照されることがある。
【００９９】
本発明の第１の実施形態において提供されたＣＰＵを制御する方法では、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率は、ＣＰＵ消費電力感度係数を取得するために乗じられ、複数のＣＰＵ消費電力感度係数についての平均が計算され、ＣＰＵ消費電力感度係数閾値（ＣＰＵ  ｐｏｗｅｒ  ｃｏｎｓｕｍｐｔｉｏｎ  ｓｅｎｓｉｔｉｖｅ  ｆａｃｔｏｒ  ｔｈｒｅｓｈｏｌｄ）と比較される。平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止する。重みおよび平均を使用することにより、ＣＰＵを停止するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０１００】
本発明の第２の実施形態は、ＣＰＵを制御する方法を提供し、この方法は、図２に示されるように、以下のステップを含む。
【０１０１】
ステップ２０１：動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得する。
【０１０２】
ステップ２０２：１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定する。１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、ステップ２０３へ進む。１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、ステップ２０４へ進む。
【０１０３】
ステップ２０３：１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じる。第１の重みは、小さい重みでもよく、この重みの値は、１でもよい。
【０１０４】
ステップ２０４：１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じる。第２の重みは、中間重みでもよく、この重みの値は、小さい重みの値より大きく、たとえば、２でもよい。第１の重みと第２の重みとは、等しくはなく、どちらも１以上の正の整数である。
【０１０５】
ステップ２０５：Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行する。
【０１０６】
ステップ２０６：上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得する。
【０１０７】
ステップ２０７：Ｎ個のＣＰＵ消費電力感度係数の平均を取得する。
【０１０８】
ステップ２０８：平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止する。
【０１０９】
本発明の第２の実施形態において提供されたＣＰＵを制御する方法は、少なくとも１個の動作中のＣＰＵが非動作状態にあることを判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵだけから計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオフ消費電力感度係数閾値と比較される点で第１の実施形態とは異なる。第１の実施形態における方法と比較すると、第２の実施形態の実施は、より少数個のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０１１０】
本発明の第３の実施形態は、ＣＰＵを制御する方法を提供し、この方法は、図３に示されるように、以下のステップを含む。
【０１１１】
ステップ３０１：動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であるとして、動作中のＣＰＵのうちの１個の使用率および動作周波数を取得する。この時点で、非動作状態にあるＣＰＵの個数は、１以上である。
【０１１２】
ステップ３０２：１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定する。コア・オンライン周波数は、９１８ＭＨｚでもよい。
【０１１３】
ステップ３０３：１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じる。第１の重みは、大きい重みであり、この重みの値は、４でもよい。
【０１１４】
ステップ３０４：１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じる。第２の重みは、中間重みでもよく、この重みの値は、大きい重みの値未満であり、たとえば、２でもよい。第１の重みと第２の重みとは、等しくはなく、どちらも１以上の正の整数である。
【０１１５】
ステップ３０５：Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行する。通常は、Ｎの値は、１０でもよい。
【０１１６】
ステップ３０６：上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得する。
【０１１７】
ステップ３０７：Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を獲得する。
【０１１８】
ステップ３０８：平均がＣＰＵターンオン消費電力感度係数閾値（ＣＰＵ  ｔｕｒｎ−ｏｎ  ｐｏｗｅｒ  ｃｏｎｓｕｍｐｔｉｏｎ  ｓｅｎｓｉｔｉｖｅ  ｆａｃｔｏｒ  ｔｈｒｅｓｈｏｌｄ）より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動する（又はオンにする）。ＣＰＵターンオン消費電力感度係数閾値に２００が設定されてもよい。ＣＰＵを起動するポリシーは、非動作状態にあるＣＰＵのシーケンス番号に応じて昇順に連続してＣＰＵを起動すること、または、非動作状態にあるＣＰＵのシーケンス番号に応じて降順に連続してＣＰＵを起動することでもよい。ＣＰＵは、ここでは限定されないその他のポリシーに応じて停止されてもよい。以下にかかわるＣＰＵの起動のため、当該動作についてターンオン・ポリシーが参照されることがある。
【０１１９】
本発明の第３の実施形態において提供されたＣＰＵを制御する方法では、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率は、ＣＰＵ消費電力感度係数を取得するために乗じられ、複数のＣＰＵ消費電力感度係数についての平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵが起動される。重みおよび平均を使用することにより、ＣＰＵを起動するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０１２０】
本発明の第４の実施形態は、ＣＰＵを制御する方法を提供し、この方法は、図４に示されるように、以下のステップを含む。
【０１２１】
ステップ４０１：動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得する。この時点で、非動作状態にあるＣＰＵの個数は、１以上である。
【０１２２】
ステップ４０２：１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定する。
【０１２３】
ステップ４０３：１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じる。第１の重みは大きい重みであり、この重みの値は４でもよい。
【０１２４】
ステップ４０４：１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じる。第１の重みは、中間重みであり、この重みの値は、大きい重みの値未満であり、たとえば、２でもよい。第１の重みと第２の重みとは、等しくはなく、どちらも１以上の正の整数である。
【０１２５】
ステップ４０５：Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行する。
【０１２６】
ステップ４０６：上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得する。
【０１２７】
ステップ４０７：Ｎ個のＣＰＵ消費電力感度係数の平均を取得する。
【０１２８】
ステップ４０８：平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動する。
【０１２９】
本発明の第４の実施形態において提供されたＣＰＵを制御する方法は、この時点で非動作状態にある少なくとも１個のＣＰＵを動作状態とすることについて判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵだけから計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオン消費電力感度係数閾値と比較される点で第３の実施形態とは異なる。第３の実施形態における方法と比較すると、第４の実施形態の実施は、より少数のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０１３０】
本発明の第５の実施形態は、ＣＰＵを制御する方法を提供する。第１の実施形態を基にすると、本実施形態には、以下の変更点がある。
【０１３１】
Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行するステップ１０５は、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含むことがある。
【０１３２】
さらに、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、上記ステップ１０１から１０４を実行することを含むことがあり、その結果、タイマｎの計時時点に連続してＮ回達したとき、上記ステップ１０１から１０４が合計でＮ回実行される。
【０１３３】
追加的に、本実施形態における方法は、システムが待機状態であるとき、ｎ番目の動作中のＣＰＵに対応するタイマｎによって、計時を停止することをさらに含んでもよい。
【０１３４】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマｎによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１３５】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するステップ１０８は、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中のＣＰＵで動いているキュータスク（ｑｕｅｕｅ  ｔａｓｋ）の個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含んでもよい。ＣＰＵで動いているキュータスクは、実行中のスレッドである。
【０１３６】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動又は停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後、停止されるてもよい。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡であるとき、ＣＰＵで動作中のキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できる場合がある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、シングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度に行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０１３７】
本発明の第６の実施形態は、ＣＰＵを制御する方法を提供する。第２の実施形態を基にして、本実施形態において以下の変更がなされる。
【０１３８】
１個のＣＰＵに対して上記ステップをＮ回実行するステップ２０５は、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、上記ステップ２０１から２０４を実行することを含むことがあり、その結果、タイマａの計時時点に連続してＮ回達したとき、上記ステップ２０１から２０４が合計でＮ回実行される。
【０１３９】
追加的に、本実施形態における方法は、システムが待機状態であるとき、タイマａによって、計時を停止することをさらに含んでもよい。
【０１４０】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマａによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１４１】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合に、少なくとも１個の動作中のＣＰＵを停止するステップ２０８は、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで実行されているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵをオフにすることを含んでもよい。
【０１４２】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡であるとき、ＣＰＵで動作中のキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できる場合がある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、シングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度に行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０１４３】
本発明の第７の実施形態は、ＣＰＵを制御する方法を提供する。第３の実施形態を基にして、本実施形態において以下の変更がなされる。
【０１４４】
Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行するステップ３０５は、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含むことがある。
【０１４５】
さらに、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、上記ステップ３０１から３０４を実行することを含むことがあり、その結果、タイマｎの計時時点に連続してＮ回達したとき、上記ステップ３０１から３０４が合計でＮ回実行される。
【０１４６】
追加的に、本実施形態における方法は、システムが待機状態であるとき、タイマｎによって、計時を停止することをさらに含んでもよい。
【０１４７】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマｎによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１４８】
追加的に、本実施形態における方法は、タイマの計時時点に連続して達したとき、タイマに対応する取得されたＣＰＵの動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値（ｍａｘｉｍｕｍ  ｆｒｅｑｕｅｎｃｙ  ｌａｓｔｉｎｇ  ｐｅｒｉｏｄ  ｔｉｍｅ  ｔｈｒｅｓｈｏｌｄ）より少しだけ大きい場合、タイマによって、計時を停止することをさらに含んでもよい。
【０１４９】
最大周波数持続期間閾値は、周波数重みは、第１の重みであり、すなわち、大きい重みであり、この重みの値は、４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値（ｕｓａｇｅ  ｒａｔｅ  ｔｈｒｅｓｈｏｌｄ）×周波数重み）
である。使用率閾値は、異なったプラットフォームに応じて異なった値でもよく、好ましくは、この値の値範囲は、９０％と９５％との間でもよい。異なったプラットフォームとは、ここでは、異なったハードウェア・チップセットを意味する。
【０１５０】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０１５１】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するステップ３０８は、平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭより大きい場合に、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０１５２】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの個数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０１５３】
本発明の第８の実施形態は、ＣＰＵを制御する方法を提供する。第４の実施形態を基にして、本実施形態では、以下の変更点がある。
【０１５４】
１個のＣＰＵに対して上記ステップをＮ回実行するステップ４０５は、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、上記ステップ４０１から４０４を実行することを含むことがあり、その結果、タイマａの計時時点に連続してＮ回達したとき、上記ステップ４０１から４０４が合計でＮ回実行される。
【０１５５】
追加的に、本実施形態における方法は、システムが待機状態であるとき、タイマａによって、計時を停止することをさらに含んでもよい。
【０１５６】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマａによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１５７】
追加的に、本実施形態における方法は、タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの獲得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマによって、計時を停止することをさらに含んでもよい。
【０１５８】
最大周波数持続期間閾値は、周波数重みが第１の重みであり、すなわち、大きい重みであり、この重みの値が４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
である。
【０１５９】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０１６０】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するステップ４０８は、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中の複数個のＣＰＵで実行されているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０１６１】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの個数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０１６２】
上記方法実施形態を実行するＣＰＵは、具体的には、スケジューリングを担うＣＰＵでもよい。すなわち、上記方法実施形態を実行するＣＰＵは、命令および計算を実行するその他の通常のＣＰＵのスケジュールを立てることがある。スケジューリングを担うＣＰＵは、命令および計算を実行するその他の通常のＣＰＵを除く独立したＣＰＵでもよく、スケジューリング機能は、命令および計算を実行するある一定の普通のＣＰＵに統合されることもある。スケジューリングを担うＣＰＵ（以下、「スケジューリングＣＰＵ」と称される）のハードウェア形式は、アドバンスト縮小命令セット・コンピューティング・マシン（Ａｄｖａｎｃｅｄ  Ｒｅｄｕｃｅｄ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｍｐｕｔｉｎｇ（ＲＩＳＣ）Ｍａｃｈｉｎｅｓ、略称ＡＲＭ）チップでもよく、シングル・チップ・マイクロコンピュータのようなその他のチップでもよい。
【０１６３】
本発明の第９の実施形態は、端末をさらに提供する。図５に示されるように、端末５０１は、プロセッサ５０１１を含む。プロセッサは、具体的には、ＣＰＵでもよく、ＣＰＵは、さらにスケジューリングＣＰＵでもよい。プロセッサ５０１１は、
動作中のＣＰＵの個数がＭであり、Ｍが２以上の正の整数であり、ＣＰＵの使用率および動作周波数が検出によって取得されることがあり、ＣＰＵの使用率がシステム内で動くプログラムによって占有されたＣＰＵ資源の相対的なパーセンテージを意味するとして、動作中のＣＰＵの１個のＣＰＵの使用率および動作周波数を取得し、
コア・オフライン周波数が４８６メガヘルツ（ＭＨｚ）でもよいとして、１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定し、１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、ステップ１０３へ進み、そうではない場合、ステップ１０４へ進み、
第１の重みが小さい重みでもよく、この重みの値が１でもよく、ＣＰＵ消費電力感度係数がＣＰＵによって消費された電力に対するＣＰＵの感度の度合いであり、この感度係数の値が現在のＣＰＵの使用率にＣＰＵ周波数重みを乗じた積であるとして、１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じ、
第２の重みが中間重みでもよく、この重みの値が小さい重みの値より大きく、たとえば、２でもよく、第１の重みと第２の重みとが等しくはなく、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であり、通常は、Ｎの値が５でもよいとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を獲得し、
平均が以下の数種類：算術平均、幾何平均、調和平均、２乗平均平方根、移動平均、算術幾何平均、および算術２乗平均平方根を含むことがあり、上記の様々な種類の平均を計算する方法が当業者によって周知であり、ここではこれ以上説明しないものであるとして、Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を獲得し、
ＣＰＵを停止にするためのポリシーは、最後に起動したＣＰＵを停止すること、または、最初に起動したＣＰＵを停止することでもよく、代替的に、動作中の各ＣＰＵの使用率にしたがって、使用率が最も低いＣＰＵを停止してもよく、
あるいは、動作中の各ＣＰＵの動作周波数にしたがって、動作周波数が最も低いＣＰＵを停止してもよく、さらに、ここでは限定されないその他のポリシーしたがってＣＰＵを停止してもよく、以下にかかわるＣＰＵの停止のため、当該動作についてターンオフ・ポリシーが参照されることがあるものとして、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【０１６４】
本発明の第９の実施形態において提供された端末では、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率がＣＰＵ消費電力感度係数を取得するために乗じられ、ＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。少なくとも１個の動作中のＣＰＵは、平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、停止される。重みおよび平均を使用することにより、ＣＰＵを停止するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０１６５】
本発明の第１０の実施形態は、端末をさらに提供する。図５に示されるように、端末５０１は、プロセッサ５０１１を含む。プロセッサは、具体的には、ＣＰＵでもよく、ＣＰＵは、さらにスケジューリングＣＰＵでもよい。プロセッサ５０１１は、
動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得し、
１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定し、１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、ステップ２０３へ進み、１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、ステップ２０４へ進み、
第１の重みが小さい重みでもよく、重みの値が１でもよいとして、１個のＣＰＵの動作周波数がコア・オフライン周波数未満である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じ、
第２の重みが中間重みでもよく、この重みの値が小さい重みの値より大きく、たとえば、２でもよく、第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オフライン周波数以上である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【０１６６】
本発明の第１０の実施形態において提供される端末は、少なくとも１個の動作中のＣＰＵが非動作状態にあることを判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵだけによって計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオフ消費電力感度係数閾値と比較される点で第９の実施形態とは異なる。第９の実施形態における方法と比較すると、第１０の実施形態の実施は、より少数個のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０１６７】
本発明の第１１の実施形態は、端末をさらに提供する。図５に示されるように、端末５０１は、プロセッサ５０１１を含む。プロセッサは、具体的には、ＣＰＵでもよく、ＣＰＵは、さらにスケジューリングＣＰＵでもよい。プロセッサ５０１１は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、この時点で、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個の使用率および動作周波数を獲得し、
コア・オンライン周波数が９１８ＭＨｚでもよいとして、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定し、
第１の重みが大きい重みであり、この重みの値が４でもよいとして、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じ、
第２の重みが中間重みでもよく、この重みの値が大きい重みの値未満であり、たとえば、２でもよく、第１の重みと第２の重みとが等しくはなく、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であり、通常は、Ｎの値が１０でもよいとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得し、
Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
ＣＰＵターンオン消費電力感度係数閾値に２００が設定されてもよく、ＣＰＵを起動するポリシーが非動作状態にあるＣＰＵのシーケンス番号に応じて昇順に連続してＣＰＵを起動すること、または、非動作状態にあるＣＰＵのシーケンス番号に応じて降順に連続してＣＰＵを起動することでもよく、ＣＰＵは、ここでは限定されないその他のポリシーに応じて起動されることもあり、以下にかかわるＣＰＵの起動のため、当該動作についてターンオン・ポリシーが参照されることがあるとして、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【０１６８】
本発明の第１１の実施形態において提供される端末は、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率は、ＣＰＵ消費電力感度係数を取得するために乗じられ、ＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵが起動される。重みおよび平均を使用することにより、ＣＰＵを起動するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０１６９】
本発明の第１２の実施形態は、端末をさらに提供する。図５に示されるように、端末５０１は、プロセッサ５０１１を含む。プロセッサは、具体的には、ＣＰＵでもよく、ＣＰＵは、さらにスケジューリングＣＰＵでもよい。プロセッサ５０１１は、
動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、この時点で、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を獲得し、
１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定し、
第１の重みが大きい重みであり、この重みの値が４でもよいとして、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きい場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じ、
第１の重みが中間重みであり、この重みの値が大きい重みの値未満であり、たとえば、２でもよく、第１の重みと第２の重みとが等しくはなく、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オンライン周波数以下である場合、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じ、
Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行し、
上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得し、
Ｎ個のＣＰＵ消費電力感度係数の平均を取得し、
平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【０１７０】
本発明の第１２の実施形態において提供される端末は、この時点で非動作状態にある少なくとも１個のＣＰＵを動作状態とすることを判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵだけによって計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオン消費電力感度係数閾値と比較される点で第１１の実施形態とは異なる。第１１の実施形態における方法と比較すると、第１２の実施形態の実現は、より少数個のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０１７１】
本発明の第１３の実施形態は、端末を提供する。第９の実施形態を基にして、本実施形態では、以下の変更点がある。
【０１７２】
プロセッサ５０１１がＭ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行することは、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含んでもよい。
【０１７３】
さらに、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、プロセッサ５０１１の最初の４つの機能を実行することを含んでもよい。その結果、タイマｎの計時時点に連続してＮ回達したとき、上記プロセッサ５０１１の最初の４つの機能が合計でＮ回実行される。
【０１７４】
追加的に、本実施形態において提供されるプロセッサは、システムが待機状態であるとき、ｎ番目の動作中のＣＰＵに対応するタイマｎが計時を停止するようにさらに構成されてもよい。
【０１７５】
追加的に、本実施形態において提供されるプロセッサは、システムが待機状態でないとき、タイマｎが計時を開始するようにさらに構成されてもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１７６】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるときにプロセッサが少なくとも１個の動作中のＣＰＵを停止することは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含んでもよい。ＣＰＵで実行されているキュータスクは、実行中のスレッドである。
【０１７７】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されてもよい。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡であるとき、ＣＰＵで動作中のキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できることがある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、シングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度には行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０１７８】
本発明の第１４の実施形態は、端末を提供する。第１０の実施形態を基にして、本実施形態では、以下の変更点がある。
【０１７９】
プロセッサ５０１１が１個のＣＰＵに対して上記ステップをＮ回実行することは、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、プロセッサ５０１１の最初の４つの機能を実行することを含んでもよい。その結果、タイマａの計時時点に連続してＮ回達したとき、プロセッサ５０１１の最初の４つの機能が全体でＮ回実行される。
【０１８０】
追加的に、本実施形態において提供されるプロセッサは、システムが待機状態であるとき、タイマａが計時を停止するようにさらに構成されてもよい。
【０１８１】
追加的に、本実施形態において提供されるプロセッサは、システムが待機状態でないとき、タイマａが計時を開始するようにさらに構成されてもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１８２】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるときにプロセッサ５０１１が少なくとも１個の動作中のＣＰＵを停止することは、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中の複数個のＣＰＵで実行されているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含んでもよい。
【０１８３】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されるてもよい。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡である場合、ＣＰＵで実行されてているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できることがある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、シングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度に行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０１８４】
本発明の第１５の実施形態は、端末を提供する。第１１の実施形態を基にして、本実施形態では、以下の変更点がある。
【０１８５】
プロセッサ５０１１がＭ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行することは、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含んでもよい。
【０１８６】
さらに、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、プロセッサ５０１１の最初の４つの機能を実行することを含んでもよい。その結果、タイマｎの計時時点に連続してＮ回達したとき、プロセッサ５０１１の最初の４つの機能が合計でＮ回実行される。
【０１８７】
追加的に、本実施形態における方法は、システムが待機状態であるとき、タイマｎによって、計時を停止することをさらに含んでもよい。
【０１８８】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマｎによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１８９】
追加的に、本実施形態における方法は、タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマによって、計時を停止することをさらに含んでもよい。
【０１９０】
最大周波数持続期間閾値は、周波数重みが第１の重みであり、すなわち、大きい重みであり、この重みの値が４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
である。使用率閾値は、異なったプラットフォームに応じて異なった値でもよく、好ましくは、この値の値範囲は、９０％と９５％との間でもよい。異なったプラットフォームとは、ここでは、異なったハードウェア・チップセットを意味する。
【０１９１】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０１９２】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、プロセッサ５０１１が非動作状態にある少なくとも１個のＣＰＵを起動することは、平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中のＣＰＵで実行されているているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０１９３】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０１９４】
本発明の第１６の実施形態は、端末を提供する。第１２の実施形態を基にして、本実施形態では、以下の変更点がある。
【０１９５】
１個のＣＰＵに対して上記ステップをＮ回実行するプロセッサ５０１１は、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、上記プロセッサ５０１１の最初の４つの機能を実行することを含んでもよい。その結果、タイマａの計時時点に連続してＮ回達したとき、プロセッサ５０１１の最初の４つの機能が合計でＮ回実行される。
【０１９６】
追加的に、本実施形態における方法は、システムが待機状態であるとき、タイマａによって、計時を停止することをさらに含んでもよい。
【０１９７】
追加的に、本実施形態における方法は、システムが待機状態でないとき、タイマａによって、計時を開始することをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態における方法を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０１９８】
追加的に、本実施形態における方法は、タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマによって、計時を停止することをさらに含んでもよい。
【０１９９】
最大周波数持続期間閾値は、周波数重みが第１の重みであり、すなわち、大きい重みであり、この重みの値が４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
である。
【０２００】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０２０１】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、プロセッサ５０１１が非動作状態にある少なくとも１個のＣＰＵを起動することは、
平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０２０２】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動又は停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの台数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０２０３】
第９から第１２の実施形態における端末は、固定端末、移動端末などを含めて様々な種類の端末を含むことがある。端末の種類はここでは限定されることなく、端末がセントラルオフィス端末装置（ｃｅｎｔｒａｌ  ｏｆｆｉｃｅ  ｅｎｄ  ｄｅｖｉｃｅ）ではない限り、この端末は、ここでは端末とみなされることがある。たとえば、端末は、携帯電話機、タブレットコンピュータ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ、個人情報端末）、ＰＯＳ（Ｐｏｉｎｔ  ｏｆ  Ｓａｌｅｓ、販売時点管理）、オンボード・コンピュータなどをさらに含むことがある。
【０２０４】
本発明の第１７の実施形態は、携帯電話機を提供する。携帯電話機は、本発明の第９から第１２の実施形態において提供された端末の具体的な形式であることがある。図６は、携帯電話機の部分構造のブロック図である。図６を参照すると、携帯電話機１００は、ＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ、無線周波数）回路１１０と、メモリ１２０と、入力ユニット１３０と、表示ユニット１４０と、センサ１５０と、オーディオ回路１６０と、ＷｉＦｉ（ｗｉｒｅｌｅｓｓ  ｆｉｄｅｌｉｔｙ、ワイヤレス・フィデリティ）モジュール１７０と、プロセッサ１８０と、電源１９０とのようなコンポーネントを含む。当業者は、図６における携帯電話機の構造が携帯電話機を限定するものではなく、図示されたコンポーネントより多数または少数のコンポーネントが含まれることがあり、または、いくつかのコンポーネントが結合されることがあり、または、異なるコンポーネント配置が採用されることがあることを理解することがある。
【０２０５】
以下では、図６を参照して、携帯電話機１００の各コンポーネントを詳細に紹介する。
【０２０６】
ＲＦ回路１１０は、呼処理において情報を受送信し、または、信号を受送信し、特に、基地局のダウンリンク情報を受信し、処理のためダウンリンク情報をプロセッサ１８０に送信し、その上、アップリンク用の基地局データを送信するように構成されてもよい。。通常は、ＲＦ回路は、限定されることなく、アンテナ、少なくとも１個の増幅器、トランシーバ、結合器、ＬＮＡ（Ｌｏｗ  Ｎｏｉｓｅ  Ａｍｐｌｉｆｉｅｒ、低雑音増幅器）、デュプレクサなどを含む。その上、ＲＦ回路１１０は、無線通信によって、ネットワークおよび別の装置とさらに通信することができる。無線通信は、限定されることなく、ＧＳＭ（登録商標）（Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｏｆ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎ、汎欧州デジタル移動電話方式）、ＧＰＲＳ（Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｅｒｖｉｃｅ、汎用パケット無線サービス）、ＣＤＭＡ（Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ、符号分割多元接続）、ＷＣＤＭＡ（登録商標）（Ｗｉｄｅｂａｎｄ  Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ、広帯域符号分割多元接続）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ、ロング・ターム・エボリューション）、電子メール、およびＳＭＳ（Ｓｈｏｒｔ  Ｍｅｓｓａｇｉｎｇ  Ｓｅｒｖｉｃｅ、ショート・メッセージング・サービス）などを含む何らかの通信規格またはプロトコルを採用することがある。
【０２０７】
メモリ１２０は、ソフトウェアプログラムおよびモジュールを記憶するように構成されていることがある。プロセッサ１８０は、メモリ１２０に記憶されたソフトウェアプログラムおよびモジュールを実行することにより携帯電話機１００の全ての機能アプリケーションおよびデータ処理を実行する。メモリ１２０は、主にプログラム記憶領域およびデータ記憶領域を含むことがある。プログラム記憶領域は、オペレーティングシステム、少なくとも１つの機能（たとえば、音声再生機能、画像再生機能）のため必要とされるアプリケーションプログラムなどを記憶することがある。データ記憶領域は、携帯電話機１００の使用に応じて作成されたデータ（たとえば、オーディオデータ、および連絡先）などを記憶することがある。その上、メモリ１２０は、高速ランダム・アクセス・メモリを含むことがあり、不揮発性メモリ、たとえば、少なくとも１個のディスク・ストレージ装置、少なくとも１個のフラッシュ・ストレージ装置、またはその他の揮発性ソリッド・ステート・ストレージ装置をさらに含むことがある。
【０２０８】
入力ユニット１３０は、入力された数字または文字情報を受信し、携帯電話機１００のユーザ設定および機能制御に関連したキー信号入力を発生するように構成されていることがある。具体的には、入力ユニット１３０は、タッチ制御パネル１３１および別の入力装置１３２を含むことがある。タッチ制御パネル１３１は、タッチスクリーンと称されることもあり、タッチ制御パネル１３１上または付近のユーザのタッチ操作（たとえば、指およびスタイラスのような何らかの適当な物体または付属品を使ってタッチ制御パネル１３１上またはタッチ制御パネル１３１付近のユーザの操作）を収集し、プリセットされたプログラムに応じて対応する接続装置を駆動することがある。場合によっては、タッチ制御パネル１３１は、２つの部品、すなわち、タッチ検出装置およびタッチコントローラを含むことがある。タッチ検出装置は、ユーザのタッチの位置を検出し、タッチ操作によって生成された信号を検出し、信号をタッチコントローラに転送する。タッチコントローラは、タッチ検出装置からタッチ情報を受信し、タッチ情報をタッチ点座標に変換し、その後、タッチ点座標をプロセッサ１８０に送信し、そして、プロセッサ１８０から送信されたコマンドを受信し、コマンドを実行することが可能である。その上、タッチ制御パネル１３１は、抵抗型、容量型、赤外線型、表面音波型などを採用することにより実現されることがある。タッチ制御パネル１３１の他に、入力ユニット１３０は、別の入力装置１３２をさらに含むことがある。具体的には、別の入力装置１３２は、限定されることなく、物理的キーボード、（音量制御ボタン、およびスイッチボタンのような）機能ボタン、トラックボール、マウス、およびジョイスティックの１つかそれ以上を含むことがある。
【０２０９】
表示ユニット１４０は、ユーザによって入力された情報またはユーザのため表示された情報と携帯電話機１００の全てのメニューとを表示するように構成されていることがある。表示ユニット１４０は、表示パネル１４１を含むことがあり、場合によっては、表示パネル１４１は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ、液晶ディスプレイ）、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ、有機発光ダイオード）の形で構成されていることがある。さらに、タッチ制御パネル１３１は、表示パネル１４１を覆うことがある。タッチ制御パネル１３１上または付近のタッチ操作を検出した後、タッチ制御パネル１３１は、タッチイベントの種類を判定するためにタッチ操作をプロセッサ１８０に転送する。そして、その後、プロセッサ１８０は、タッチイベントの種類に応じて、表示パネル１４１上に対応する視覚的出力を提供する。図６では、タッチ制御パネル１３１および表示パネル１４１は、携帯電話機１００の入力および入力機能を実現するために２つの独立したコンポーネントとして機能するが、いくつかの実施形態では、タッチ制御パネル１３１および表示パネル１４１は、携帯電話機１００の入出力機能を実現するために統合されることがある。
【０２１０】
携帯電話機１００は、少なくとも１個のセンサ１５０、たとえば、光センサ、動きセンサおよびその他のセンサをさらに含むことがある。具体的には、光センサは、照度センサおよび近接センサを含むことがある。照度センサは、周囲光線の強度に応じて表示パネル１４１の輝度を調節することがある。近接センサは、携帯電話機１００が耳の近くに動くとき、表示パネル１４１および／またはバックライトをオフにすることがある。動きセンサの一種として、加速度センサは、各方向（一般に３軸）の加速度を検出することがあり、静止しているとき重力の大きさおよび方向を検出することがあり、これらは、携帯電話機の姿勢を認識するアプリケーション（たとえば、横長・縦長の切り替え、関連ゲーム、磁気センサ姿勢校正）、振動認識関連機能（たとえば、歩数計およびストライク（ｓｔｒｉｋｅｓ））などのため使用されることがある。ここでは詳細に説明されないが、ジャイロスコープ、気圧計、湿度計、温度計、および赤外線センサのようなその他のセンサが携帯電話機１００上に構成されていることもある。
【０２１１】
オーディオ回路１６０、ラウドスピーカ１６１、およびマイクロホン１６２は、ユーザと携帯電話機１００との間にオーディオインターフェースを提供することがある。オーディオ回路１６０は、受信されたオーディオデータを電気信号に変換し、電気信号をラウドスピーカ１６１に送信することがあり、ラウドスピーカ１６１は、電気信号を出力用のオーディオ信号に変換する。別の態様では、マイクロホン１６２は、収集されたオーディオ信号を電気信号に変換する。オーディオ回路１６０は、電気信号を受信し、電気信号をオーディオデータに変換し、その後、オーディオデータをたとえば別の携帯電話機に送信するためにオーディオデータをＲＦ回路１０８に出力し、または、さらなる処理のためオーディオデータをメモリ１２０に出力する。
【０２１２】
ＷｉＦｉは、近距離無線伝送技術である。携帯電話機１００は、ＷｉＦｉモジュール１７０によって、ユーザが電子メールを受送信すること、ウェブページをブラウズすること、ストリームメディアにアクセスすることなどを支援することができる。ＷｉＦｉモジュール１７０は、ユーザに無線広帯域インターネットアクセスを提供する。ＷｉＦｉモジュール１７０が図１に示されているが、ＷｉＦｉモジュール１７０は、携帯電話機１００の不可欠なコンポーネントではなく、本発明の本質の範囲を変更することなく必要に応じて完全に省略されてもよいことが理解することができる。
【０２１３】
プロセッサ１８０は、携帯電話機１００の制御中枢部であり、様々な種類のインターフェースおよび有線を介して携帯電話機全体の全ての部分に接続されている。メモリ１２０に記憶されたソフトウェアプログラムおよび／またはモジュールを行う、または、実行し、メモリ１２０に記憶されたデータを呼び出すことにより、プロセッサ１８０は、携帯電話機を全体的に監視するために、携帯電話機１００の全ての機能およびデータ処理を実行する。場合によっては、プロセッサ１８０は、アプリケーションプロセッサとモデムプロセッサとを統合することがある。アプリケーションプロセッサは、主として、オペレーティングシステム、ユーザインターフェース、アプリケーションプログラムなどを処理する。モデムプロセッサは、主として、無線通信を処理する。上記モデムプロセッサは、プロセッサ１８０内に統合されなくてもよいと理解してもよい。
【０２１４】
場合によっては、プロセッサ１８０は、１個以上の処理装置を含むことがある。１個以上の処理装置は、１個の独立したスケジューリングＣＰＵと１個以上の普通のＣＰＵとを含むことがある。スケジューリングＣＰＵは、通常のＣＰＵのスケジュールを立てることがある。スケジューリングＣＰＵのハードウェア形式は、アドバンスト縮小命令セット・コンピューティング・マシン（Ａｄｖａｎｃｅｄ  Ｒｅｄｕｃｅｄ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｍｐｕｔｉｎｇ（ＲＩＳＣ）Ｍａｃｈｉｎｅｓ、略称ＡＲＭ）チップでもよく、シングル・チップ・マイクロコンピュータのようなその他のチップでもよい。前記通常のＣＰＵは、命令および計算を実行する普通のＣＰＵである。スケジューリングＣＰＵの機能は、１個以上の通常のＣＰＵに統合されてもよいと理解してもよいが、これについては本実施形態においては限定されない。スケジューリングＣＰＵの機能に関して、第９から第１２の実施形態を具体的に参照することができるが、詳細について、ここでは繰り返し説明しない。
【０２１５】
携帯電話機１００は、電力を各コンポーネントに供給する電源１９０（たとえば、バッテリ）をさらに含む。好ましくは、電源は、電源管理システムによって充電、放電、および消費電力の管理のような機能を実現するために、電源管理システムを介してプロセッサ１８０に論理的に接続されてもよい。
【０２１６】
図示されないが、携帯電話機１００は、カメラ、Ｂｌｕｅｔｏｏｔｈ（登録商標）モジュールなどをさらに含むことがある。それらについては、ここでは詳細には説明されない。
【０２１７】
本発明の第１８の実施形態は、装置をさらに提供する。図７は、装置の一般的な構造の概略図である。装置７０１は、以下のユニットを含む。
【０２１８】
第１のユニット７０１１は、動作中のＣＰＵの個数がＭであり、Ｍが２以上の正の整数であるとして、動作中の複数個のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている。
【０２１９】
第２のユニット７０１２は、１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定するように構成されている。
【０２２０】
第３のユニット７０１３は、１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じるように構成されている。
【０２２１】
第４のユニット７０１４は、第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オフライン周波数以上であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じるように構成されている。
【０２２２】
第５のユニット７０１５は、Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている。
【０２２３】
第６のユニット７０１６は、Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている。
【０２２４】
第７のユニット７０１７は、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【０２２５】
本発明の第１８の実施形態において提供された装置では、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率は、ＣＰＵ消費電力感度係数を取得するために乗じられ、ＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。平均がＣＰＵターンオフ消費電力感度係数閾値未満である場合、少なくとも１個の動作中のＣＰＵがオフにされる。重みおよび平均を使用することにより、ＣＰＵを起動するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０２２６】
本発明の第１９の実施形態は、装置をさらに提供する。図７は、装置の一般的な構造の概略図である。装置７０１は、以下のユニットを含む。
【０２２７】
第１のユニット７０１１は、動作中のＣＰＵの個数がＭであり、かつ、Ｍが２以上の正の整数であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている。
【０２２８】
第２のユニット７０１２は、１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるか否かを判定するように構成されている。
【０２２９】
第３のユニット７０１３は、１個のＣＰＵの動作周波数がコア・オフライン周波数未満であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じるように構成されている。
【０２３０】
第４のユニット７０１４は、第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オフライン周波数以上であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じるように構成されている。
【０２３１】
第５のユニット７０１５は、Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている。
【０２３２】
第６のユニット７０１６は、Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている。
【０２３３】
第７のユニット７０１７は、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、少なくとも１個の動作中のＣＰＵを停止するように構成されている。
【０２３４】
本発明の第１９の実施形態において提供される装置は、少なくとも１個の動作中のＣＰＵを非動作状態とすることを判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵによってのみ計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオフ消費電力感度係数閾値と比較される点で第１８の実施形態とは異なる。第１８の実施形態における装置と比較すると、第１９の実施形態の実施は、より少数のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０２３５】
本発明の第２０の実施形態は、装置をさらに提供する。図７は、装置の一般的な構造の概略図である。装置７０１は、以下のユニットを含む。
【０２３６】
第１のユニット７０１１は、動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている。
【０２３７】
第２のユニット７０１２は、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定するように構成されている。
【０２３８】
第３のユニット７０１３は、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じるように構成されている。
【０２３９】
第４のユニット７０１４は、第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オンライン周波数以下であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じるように構成されている。
【０２４０】
第５のユニット７０１５は、Ｎが１以上の正の整数であるとして、Ｍ個の動作中のＣＰＵに対して上記ステップを実行し、Ｎ回繰り返し、上記ステップがＮ回実行された後、Ｍ×Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている。
【０２４１】
第６のユニット７０１６は、Ｍ×Ｎ個のＣＰＵ消費電力感度係数の平均を取得するように構成されている。
【０２４２】
第７のユニット７０１７は、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【０２４３】
本発明の第２０の実施形態において提供された装置では、第１の重みおよび第２の重みの概念が導入されている。ＣＰＵの使用率がＣＰＵ消費電力感度係数を取得するために乗じられ、ＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵ消費電力感度係数閾値と比較される。非動作状態にある少なくとも１個のＣＰＵは、平均がＣＰＵターンオン消費電力感度係数閾値より大きい場合、起動される。重みおよび平均を使用することにより、ＣＰＵを起動するための安定した条件が確実に提供され、それによって、ＣＰＵの電気エネルギー消費を節約する。
【０２４４】
本発明の第２１の実施形態は、装置をさらに提供する。図７は、装置の一般的な構造の概略図である。装置７０１は、以下のユニットを含む。
【０２４５】
第１のユニット７０１１は、動作中のＣＰＵの個数がＭであり、Ｍが１以上の正の整数であり、かつ、非動作状態にあるＣＰＵの個数が１以上であるとして、動作中のＣＰＵのうちの１個のＣＰＵの使用率および動作周波数を取得するように構成されている。
【０２４６】
第２のユニット７０１２は、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいか否かを判定するように構成されている。
【０２４７】
第３のユニット７０１３は、１個のＣＰＵの動作周波数がコア・オンライン周波数より大きいとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第１の重みを乗じるように構成されている。
【０２４８】
第４のユニット７０１４は、第１の重みと第２の重みとが等しくはなく、かつ、どちらも１以上の正の整数であるとして、１個のＣＰＵの動作周波数がコア・オンライン周波数以下であるとき、１個のＣＰＵに対応するＣＰＵ消費電力感度係数を取得するために１個のＣＰＵの使用率に第２の重みを乗じるように構成されている。
【０２４９】
第５のユニット７０１５は、Ｎが１以上の正の整数であるとして、１個のＣＰＵに対して上記ステップをＮ回実行し、上記ステップがＮ回実行された後、Ｎ個のＣＰＵ消費電力感度係数を取得するように構成されている。
【０２５０】
第６のユニット７０１６は、Ｎ個のＣＰＵ消費電力感度係数の平均を獲得するように構成されている。
【０２５１】
第７のユニット７０１７は、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、非動作状態にある少なくとも１個のＣＰＵを起動するように構成されている。
【０２５２】
本発明の第２１の実施形態において提供された装置は、この時点で非動作状態にある少なくとも１個のＣＰＵを動作状態とすることを判定するために、Ｎ個のＣＰＵ消費電力感度係数が１個のＣＰＵだけによって計算され、Ｎ個のＣＰＵ消費電力感度係数の平均が計算され、ＣＰＵターンオン消費電力感度係数閾値と比較される点で第２０の実施形態とは異なる。第２１の実施形態における装置と比較すると、第２０の実施形態２０の実施は、より少数個のＣＰＵしか必要としないので、アルゴリズム全体は、より簡単であり、かつ、より効率的である。
【０２５３】
本発明の第２２の実施形態は、装置をさらに提供する。図８は、装置の詳細構造の概略図である。第１８の実施形態を基にして、以下の変更点がある。
【０２５４】
第５のユニットがＭ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行することは、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含んでもよい。
【０２５５】
さらに、ｎ番目の動作中のＣＰＵに対応するタイマｎがさらに含まれるので、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、第１のユニットから第４のユニットの機能を実行することを含んでもよい。その結果、タイマｎの計時時点に連続してＮ回達したとき、第１のユニットから第４のユニットの機能が合計でＮ回実行される。
【０２５６】
追加的に、本実施形態における装置は、システムが待機状態にあるとき、第ｎ番目の動作中のＣＰＵに対応するタイマｎが計時を停止するように構成されている第８のユニットをさらに含んでもよい。
【０２５７】
追加的に、本実施形態における装置は、システムが待機状態でないとき、タイマｎが計時を開始するように構成されている第９のユニットをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、本実施形態を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０２５８】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、第７のユニットが少なくとも１個の動作中のＣＰＵをオフにすることは、具体的には、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中のＣＰＵで実行されているているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含んでもよい。ＣＰＵで実行されているキュータスクは、実行中のスレッドである。
【０２５９】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動又は停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡であるとき、ＣＰＵで動作中のキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できることがある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、シングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度に行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０２６０】
本発明の第２３の実施形態は、装置をさらに提供する。図８は、装置の詳細構造の概略図である。第１９の実施形態を基にして、以下の変更点がある。
【０２６１】
装置は、１個のＣＰＵに対応するタイマａをさらに含む。
【０２６２】
第５のユニットが１個のＣＰＵに対して上記ステップをＮ回実行することは、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、第１のユニットから第４のユニットの機能を実行することを含んでもよい。その結果、タイマａの計時時点に連続してＮ回達したとき、第１のユニットから第４のユニットの機能が合計でＮ回実行される。
【０２６３】
追加的に、この装置は、システムが待機状態にあるとき、タイマａが計時を停止するように構成されている第８のユニットをさらに含んでもよい。
【０２６４】
追加的に、この装置は、システムが待機状態でないとき、タイマａが計時を開始するように構成されている第９のユニットをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、実施形態を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０２６５】
さらに、平均がＣＰＵターンオフ消費電力感度係数閾値未満であるとき、第７のユニットが少なくとも１個の動作中のＣＰＵをオフにすることは、具体的には、
平均がＣＰＵターンオフ消費電力感度係数閾値未満であり、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭ未満である場合、少なくとも１個の動作中のＣＰＵを停止することを含んでもよい
【０２６６】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動又は停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。付加的に、システム負荷が不平衡であるとき、ＣＰＵで動作中のキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、消費電力をさらに節約できることがある。たとえば、システム内で動作する２個以上のＣＰＵで実行するために分離することができないタスク（たとえば、１つのスレッド・タスク、または１つのシングルスレッド・プロセス・タスク）がただ１つだけ存在し、かつ、このタスクによって占有されたシステム負荷がシステム負荷ビジー閾値より高いとき、実行中のＣＰＵコアの個数は増加しない。このようにして、以下の状況の発生：ＣＰＵコアの個数は個別に増加するが、この場合、システムは、がシングルプロセスについて動作しているので、異なった複数個のＣＰＵについてのスケジューリングを一度に行うことはできず、新たに追加されたＣＰＵによる非効率的な消費電力負荷に帰着するといったこと、が回避される。
【０２６７】
本発明の第２４の実施形態は、装置をさらに提供する。図８は、装置の詳細構造の概略図である。第２０の実施形態を基にして、以下の変更点がある。
【０２６８】
第５のユニットがＭ個の動作中のＣＰＵのうちの１個ずつに対して上記ステップをＮ回実行することは、具体的には、ｎが１以上であり、かつ、Ｍ以下であるとして、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することを含んでもよい。
【０２６９】
さらに、ｎ番目の動作中のＣＰＵに対応するタイマｎがさらに含まれるので、ｎ番目の動作中のＣＰＵに対して上記ステップをＮ回実行することは、ｎ番目の動作中のＣＰＵに対応するタイマｎの計時時点に達したとき、上記ステップ３０１から３０４を実行することを含んでもよい。その結果、タイマｎの計時時点に連続してＮ回達したとき、上記ステップ３０１から３０４が合計でＮ回実行される。
【０２７０】
追加的に、本実施形態における装置は、システムが待機状態にあるとき、タイマｎが計時を停止するように構成されている第８のユニットをさらに含んでもよい。
【０２７１】
追加的に、本実施形態における装置は、システムが待機状態でないとき、タイマｎが計時を開始するように構成されている第９のユニットをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、実施形態を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０２７２】
追加的に、本実施形態における装置は、タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマが計時を停止するように構成されている第１０のユニットをさらに含んでもよい。
【０２７３】
最大周波数持続期間閾値は、周波数重みが第１の重みであり、すなわち、大きい重みであり、この重みの値が４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
である。使用率閾値は、異なったプラットフォームに応じて異なった値でもよい。好ましくは、この値の値範囲は、９０％と９５％との間でもよい。異なったプラットフォームとは、ここでは、異なったハードウェア・チップセットを意味する。
【０２７４】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０２７５】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、第７のユニットが非動作状態にある少なくとも１個のＣＰＵをオンにすることは、平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０２７６】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの台数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０２７７】
本発明の第２５の実施形態は、装置をさらに提供する。図８は、装置の詳細構造の概略図である。第２１の実施形態を基にして、以下の変更点がある。
【０２７８】
装置は、１個のＣＰＵに対応するタイマａをさらに含む。
【０２７９】
第５のユニットが１個のＣＰＵに対して上記ステップをＮ回実行することは、具体的には、１個のＣＰＵに対応するタイマａの計時時点に達したとき、上記第１のユニットから第４のユニットの機能を実行することを含んでもよい。その結果、タイマａの計時時点に連続してＮ回達したとき、第１のユニットから第４のユニットの機能が合計でＮ回実行される。
【０２８０】
追加的に、この実施形態は、システムが待機状態にあるとき、タイマａが計時を停止するように構成されている第８のユニットをさらに含んでもよい。
【０２８１】
追加的に、この実施形態は、システムが待機状態でないとき、タイマａが計時を開始するように構成されている第９のユニットをさらに含んでもよい。システムが待機状態であるか否かは、機器のオペレーティングシステムによって通知され、ここで、実施形態を実行するスケジューリングＣＰＵは、スケジューリングを担うＣＰＵと定められている。
【０２８２】
追加的に、本実施形態における装置は、タイマの計時時点に連続して達したとき、タイマに対応するＣＰＵの取得された動作周波数が全て最大周波数値であり、かつ、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きい場合、タイマが計時を停止するように構成されている第１０のユニットをさらに含んでもよい。
【０２８３】
最大周波数持続期間閾値は、周波数重みが第１の重みであり、すなわち、大きい重みであり、この重みの値が４でもよいとして、
（ＣＰＵターンオン消費電力感度係数閾値×Ｎ）／（使用率閾値×周波数重み）
である。
【０２８４】
動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値より少しだけ大きいということは、動作周波数が全て最大周波数値である回数が最大周波数持続期間閾値に１を加えたものであるということである。
【０２８５】
さらに、平均がＣＰＵターンオン消費電力感度係数閾値より大きいとき、第７のユニットが非動作状態にある少なくとも１個のＣＰＵを起動することは、平均がＣＰＵターンオン消費電力感度係数閾値より大きく、かつ、動作中のＣＰＵで実行されているキュータスクの個数がＭより大きい場合、非動作状態にある少なくとも１個のＣＰＵを起動することを含んでもよい。
【０２８６】
本実施形態では、タイマは、方法ステップを実行する時点を制御するために採用され、タイマは、システムが待機状態であるか否かに基づいて起動または停止される。その結果、システムが待機状態であるとき、タイマは、消費電力を節約するために、その後停止されることがある。同様に、システムが待機状態でないとき、様々な種類の要求に素早く応答するために、その後、タイマを計時のために起動することができる。別の方式では、タイマは、タイマの計時時点に連続して達したとき、ＣＰＵの動作周波数が全て最大値であり、かつ、ＣＰＵの動作周波数が最大値である回数が最大周波数持続期間閾値より少しだけ大きい場合、停止するように制御される。この状況は、ＣＰＵがある期間に亘って全負荷で動き、安定状態に到達したことを示す。この状況では、タイマを起動したままにすることは不必要であるので、電力を節約するために、タイマを停止してもよい。付加的に、システムタスクの個数が動作中のＣＰＵの台数より大きい場合、ユーザの要求に素早く応答し、かつ、ユーザ体験を改善するために、ＣＰＵで実行されているキュータスクの個数と動作中のＣＰＵの個数とを比較することにより、非動作状態にある１個のＣＰＵが起動される。
【０２８７】
本発明の第２６の実施形態は、プログラムコードを担持するコンピュータプログラムをさらに提供する。コンピュータプログラムがコンピュータ上で実行されるとき、プログラムコードは、第１から第８の実施形態のうちのいずれか１つにおける方法を実行する。
【０２８８】
本発明の第２７の実施形態は、コンピュータ読み取り可能な記憶媒体をさらに提供する。コンピュータがコンピュータ・プログラム・コードを記憶する。コンピュータ・プログラム・コードがコンピュータによって実行されるとき、コンピュータ・プログラム・コードは、コンピュータが第１から第８の実施形態のうちのいずれか１つにおける方法を実行することを可能にすることがある。
【０２８９】
本発明の第２８の実施形態は、コンピュータプログラム製品をさらに提供する。コンピュータプログラム製品は、コンピュータ・プログラム・コードを含む。コンピュータ・プログラム・コードがコンピュータによって実行されるとき、コンピュータ・プログラム・コードは、コンピュータが第１から第８の実施形態のうちのいずれか１つにおけるにおける方法を実行することを可能にすることがある。
【０２９０】
明らかに、当業者は、本発明の範囲から逸脱することなく本発明に様々な変更および変形を行うことが可能である。この場合、本発明のこれらの変更および変形が本発明の請求項および本発明の請求項の均等技術の範囲に含まれることは、これらの変更および変形が、本発明に包含されることを意味する。
【図１】
0005815879.tif 000002
【図２】
0005815879.tif 000003
【図３】
0005815879.tif 000004
【図４】
0005815879.tif 000005
【図５】
0005815879.tif 000006
【図６】
0005815879.tif 000007
【図７】
0005815879.tif 000008
【図８】
0005815879.tif 000009