JP2008139913A - 電力制御装置および電力制御方法 - Google Patents

電力制御装置および電力制御方法 Download PDF

Info

Publication number
JP2008139913A
JP2008139913A JP2006322592A JP2006322592A JP2008139913A JP 2008139913 A JP2008139913 A JP 2008139913A JP 2006322592 A JP2006322592 A JP 2006322592A JP 2006322592 A JP2006322592 A JP 2006322592A JP 2008139913 A JP2008139913 A JP 2008139913A
Authority
JP
Japan
Prior art keywords
task
clock
state
processing unit
clock supply
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006322592A
Other languages
English (en)
Inventor
Yusuke Tanji
佑介 丹治
Atsushi Takahashi
淳 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006322592A priority Critical patent/JP2008139913A/ja
Publication of JP2008139913A publication Critical patent/JP2008139913A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】全体として消費電力を最小限に抑えつつ、システムのスループットを向上させた電力制御装置および電力制御方法を提供する。
【解決手段】タスクの状態および実行優先度を管理するための情報を含むタスクリスト103と、タスクが使用するデバイスを管理するための情報を含むデバイス管理テーブル106とを保持する記憶部と、タスクリスト103を参照し、タスクの実行順序およびタスクの状態の遷移をリストとして管理するタスク管理部104と、タスクリスト103と、デバイス管理テーブルとを参照する第1の処理部と、第1の処理部の参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理部を有するクロック供給判断部105と、クロック供給判断部105の要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御部107とを備えることを特徴とする。
【選択図】図1

Description

本発明は、情報処理装置の電力制御機能に関し、特に実使用状態における電力消費を削減する電力制御装置および電力制御方法に関する。
従来、電池駆動の携帯電話や携帯型デジタルビデオカメラ等の情報処理装置において、電力消費を削減する方法として様々なものが提案されている(例えば、特許文献1参照)。
上記特許文献1記載の電力消費を削減する方法では、情報処理装置において一連の処理を実現するデバイス群を論理的な資源と見なして使用状態を管理する。あるタスクが必要とするデバイスの使用が開始される際に、関連するデバイスへの電力の供給が停止されている場合は、関連するデバイスへ電力供給が開始される。関連するデバイスの使用が終了して他のタスクによりそのデバイスが使用されていない場合は、そのデバイスへの電力の供給が停止される。これによって、その情報処理装置は、ユーザが実際に使用している状態(以下、実使用状態と記載。)において、電力消費を削減する電力制御方法を実現している。
特開2002−91638号公報
しかしながら、上記特許文献1に記載された電力消費を削減する方法では、電力またはクロックの供給が停止しているデバイスに対し、あるタスクによってそのデバイスの使用が開始された時に、電力またはクロックの供給が開始されることになり、デバイスが実際に使用可能になるまでの待ち時間が発生してしまう問題があった。つまり、複数のタスクがリアルタイムに動作しているシステムにおいて、あるタスク(以下、タスクAと呼ぶ。)が実行状態に遷移し、タスクAの中の処理でデバイスの動作が必要になった際に、はじめて、そのデバイスに電力またはクロックの供給を開始することになるため、そのデバイスが実際に使用可能になるまでの待ち時間がタスクAに発生してしまう。そして、デバイスが実際に使用できるのを待っているタスクAだけでなく、実行可能状態にありながら、タスクAの処理完了を待っている状態である他のタスクにも待ち時間が発生してしまいシステム全体の処理が中断してしまう。
ここで、上述の動作について図を用いて説明する。図11は、従来の複数のタスクに対するオペレーションシステムの動作結果を示す図である。ここで、オペレーションシステムは、複数のタスクを並行して実行できるマルチタスク機能をもっているとする。また、タスク1、タスク2およびタスク3の複数のタスクがあり、この順番でタスクが実行されるとする。また、それぞれのタスクが必要とし、使用するデバイスをそれぞれデバイス1、デバイス2およびデバイス3とする。
まず、図11に示すように、タスク1が実行されデバイス1が動作している。このとき、タスク2およびタスク3は実行可能状態であり、実行状態へ遷移するのを待っている状態である。
次に、タスク1の処理が終了し、実行可能状態であるタスク2が実行状態に遷移する。そして、タスク2が実行状態に遷移後に、タスク2の処理の中で必要となるデバイス2にクロックの供給を開始する。そして、デバイス2が実際に使用できるようになるのを待って動作を実行する。このとき、タスク3はタスク2の処理が終了するまで実行可能状態のままであり、実行状態へ遷移するのを待っている状態である。
次に、タスク2の処理が終了し、実行可能状態であるタスク3が実行状態に遷移する。そして、タスク3が実行状態に遷移後に、タスク3の処理の中で必要となるデバイス3にクロックの供給を開始する。そして、デバイス3が実際に使用できるようになるのを待って動作を実行する。
以上のように、タスクが実行状態になってからデバイスが実際に使用可能になるまでの待ち時間が発生することにより、システム全体の処理が中断し、スループットの低下を招いてしまう。
そこで、本発明は、このような問題点を鑑みてなされたものであり、あるタスクによって使用されるデバイスが実際に使用開始されるまでの余分な待ち時間を削減することで、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御装置および電力制御方法を提供することを目的とする。
上記目的を達成するために、本発明の電力制御装置は情報処理装置における消費電力を制御する電力制御装置であって、待ち状態、実行可能状態、および実行状態を含むタスクのそれぞれの状態および実行優先度を管理するための情報を含むタスクリストと、タスクが使用するデバイスを管理するための情報を含むデバイス管理テーブルとを保持する記憶手段と、前記タスクリストを参照し、タスクの実行順序およびタスクの状態の遷移をリストとして管理するタスク管理手段と、前記タスクリストと、前記デバイス管理テーブルとを参照する第1の処理部と、前記第1の処理部の参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止を判断し、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理部を有するクロック供給判断手段と、前記クロック供給判断手段の要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御手段とを備えることを特徴とする。
この構成により、例えば、タスクが使用するデバイスに対して、タスクが実行状態になる前にクロックの供給を開始することができるため、実行状態になってからクロックの供給を開始するのに比べて、処理待ち時間を削減することができる。クロックの供給の停止の場合も同様に、タスクが使用するデバイスに対して、タスクが待ち状態になる前にクロックの供給を停止することができるため、待ち状態になってからクロックの供給を停止するのに比べて、消費電力を削減することができる。それにより、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御装置を実現することができる。
また、前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクが使用するデバイスへのクロック制御の要求を前記クロック制御手段に対して行ってもよい。
これにより、タスクが使用するデバイスに対して、タスクが実行状態になる前にクロックの供給を開始することができるため、実行状態になってからクロックの供給を開始するのに比べて、処理待ち時間を削減することができる。
また、前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行状態のタスクと、実行可能状態のタスクとを除く状態のタスクが使用するデバイスへのクロック供給停止の判断をし、当該デバイスへのクロック供給停止の要求を前記クロック制御手段に対して行い、前記クロック制御手段は、前記クロック供給判断手段における前記第2の処理部の要求により、当該デバイスへのクロック供給を停止してもよい。
これにより、例えば、タスクが使用するデバイスに対して、タスクが待ち状態になる前にクロックの供給を停止することができるため、待ち状態になってからクロックの供給を停止するのに比べて、消費電力を削減することができる。それにより、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御方法を実現することができる。
また、前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクの中で実行優先度の最も高いタスクが使用するデバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行って
もよい。
これにより、最も優先度の高いタスクのデバイスへ先にクロック供給の開始ができるので、事前にクロックを供給するデバイスの数を最小限にすることで、更なる節電効果を得ることができる。
また、前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクの中で実行優先度の最も高いタスクを除く全てのタスクが使用するデバイスへのクロック供給停止を判断し、当該デバイスへのクロック供給停止の要求を前記クロック制御手段に対して行ってもよい。
これにより、最も優先度の高いタスクのデバイスのみにクロック供給の開始ができるので、タスクの優先度が低く使用していない場合あるいは使用待機状態であるデバイスへもクロックの供給をしている場合に比べて消費電力を削減することができる。それにより、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御方法を実現することができる。
また、前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のすべてのタスクが使用するデバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に行ってもよい。
これにより、例えば、タスクが使用するデバイスに対して、タスクが実行状態になる前にクロックの供給を開始することができるため、実行状態になってからクロックの供給を開始するのに比べて、処理待ち時間を削減することができる。
また、前記タスク管理手段は、さらに、タスクの実行がされるまでの時間を管理し、前記デバイス管理テーブルは、さらに、タスクが使用するデバイスがクロック供給開始から動作可能となるまでの動作可能待ち時間の情報を含み、前記第1の処理部は、前記タスク管理手段のタスクの実行がされるまでの時間と、前記デバイス管理テーブルの動作可能待ち時間とを参照し、実行可能状態で実行優先度の高いタスクが使用するデバイスの動作可能待ち時間と、当該タスクの実行がされるまでの時間を比較し、前記第2の処理部は、当該タスクの実行がされるまでの時間より当該デバイスの動作可能待ち時間が大きい場合、当該デバイスへのクロックの供給開始を判断し、当該デバイスへのクロックの供給開始の要求を前記クロック制御手段に対して行ってもよい。
これにより、実行可能状態で実行優先度の高いタスクのタスク実行までの時間とそのタスクが使用するデバイスが動作して実際に使用可能になるまでの待ち時間を参照した上で、事前にデバイスへクロックの供給をすることで、実行優先度の高いタスクが実行状態になったときにはデバイスを使用することができるので、実際にタスクが実行状態になってからデバイスが動作可能になるのを待つこともなくなり、不要な処理待ち時間を削減することができる。
また、前記デバイス管理テーブルは、さらに、タスクが使用するデバイスがクロック供給開始から動作可能となるまでの動作可能待ち時間の情報を含み、前記第1の処理部は、前記デバイス管理テーブルの動作可能待ち時間を参照し、実行可能状態に遷移したタスクの中で最も優先度が高いタスクを除く全てのタスクに対し、前記タスクが使用するデバイスの動作可能待ち時間と、予め設定された閾値とを比較し、前記第2の処理部は、前記タスクが使用するデバイスの動作可能待ち時間が予め設定された閾値を超える場合、当該デバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行ってもよい。
これにより、実行可能状態で実行優先度の高いタスク以外のタスクが使用するデバイスが動作して実際に使用可能になるまでの待ち時間と、予め定めた閾値とを参照した上で、事前にデバイスへクロックの供給をすることで、実行優先度の高いタスク以外のタスクも実行状態になったときには遅延無くデバイスを使用することができるので、処理待ち時間を削減することができる。
また、前記電力制御装置は、さらに、前記クロック供給判断手段の要求により、タスクの実行優先度を変更し、前記タスク管理手段に対し、タスクの切り替えの要求を行う実行優先度変更手段を備え、前記第2の処理部は、前記第1の処理の参照結果に基づき、実行可能状態に遷移したタスクの中で最も優先度が高い第1のタスクが使用する第1のデバイスと、前記第1のタスクの次に優先度が高い第2のタスクが使用する第2のデバイスとへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行い、さらに、前記クロック供給判断手段は、前記第2の処理の判断結果に基づき、前記第2のタスクと、実行可能状態に遷移したタスクの中で前記第2のタスクの次に優先度が高い第3のタスクとの実行優先度の変更の要求を実行優先度変更手段に対して行う第3の処理部を含んでもよい。
これにより、タスクでの実行優先度を変更することで、処理待ち時間の最も少なくなるようにタスクを実行することができる。
また、前記デバイス管理テーブルは、さらに、タスクが使用するデバイスが動作準備状態、動作可能状態、停止状態のいずれかであるかの情報を含み、前記第3の処理部は、さらに、実行優先度を変更された前記第2のタスクが使用するデバイスの状態を前記デバイス管理テーブルに参照し、実行優先度を変更された前記第2のタスクが使用するデバイスが動作可能状態である場合、変更された前記第2および第3のタスクの実行優先度を元に戻す要求を前記実行優先度変更手段に対して行ってもよい。
これにより、実行優先度を変更されたタスクの実行優先度を再度元に戻す変更をすることができるので、処理待ち時間の最も少なくなるようにタスクを実行しつつも、当初予定していたとおりのタスク順序にて実行することができる。
また、前記デバイス管理テーブルは、さらに、タスクが使用するデバイスが動作準備状態、動作可能状態、停止状態のいずれかであるかの情報を含み、前記第1の処理部は、前記デバイス管理テーブルのデバイスの状態の情報を参照し、複数のタスクが同一のデバイスを使用するかどうかを判断し、前記第2の処理部は、複数のタスクが同一のデバイスを使用すると前記第1の処理部が判断する場合、タスクが使用するデバイスの中で停止状態のデバイスへのクロック供給開始の要求を前記クロック制御手段に対して行ってもよい。
これにより、実行優先度に関係なく、複数のタスクが使用するデバイスに対してクロック供給を行うことができる。それにより、例えば、複数のタスクの最先に実行状態になった時に、デバイスの動作可能待ちがあり、処理待ち時間の間に次に最先である複数のタスクが実行状態になったとしても同一のデバイスを使用するので、そのデバイスの動作可能待ちまでの処理待ち時間が生じることもなく、最先のタスクが実行状態に遷移した際に、遅延すること無くデバイスを使用することができるので、不要な処理待ち時間を削減することができる。
また、前記第1の処理部は、第4のタスクが使用する第4のデバイスの中のいずれかを前記第4のタスク以外の第5タスクが使用するかどうかを参照し、前記第2の処理部は、第4のタスクが使用する第4のデバイスの中のいずれかを前記第4のタスク以外の第5タスクが使用することを前記第1の処理部が参照した場合、前記第4のデバイスのクロック供給の停止要求を行わない判断をし、前記第4のデバイスのクロック供給の停止要求を前記クロック制御手段に対して行わなくもよい。
これにより、タスクが現在使用しているデバイスを、他のタスクが後にデバイスを使用する場合にクロック供給の停止を行わない。それにより、同一デバイスに対してタスクが切り替わるごとに供給の開始および停止をする必要がなくなり、不要な処理待ち時間を削減することができる。
また、前記第2の処理部は、実行可能状態のタスクが使用するデバイスのクロック供給開始の要求と、実行状態および実行可能状態のタスクを除く状態のタスクが使用するデバイスへのクロック供給停止の要求とを 前記クロック制御手段に対して行ってもよい。
これにより、実行状態のタスクと、実行状態へ遷移を待つ実行可能状態のタスクとを除く全てのタスクが使用するデバイスに対してクロックの供給を停止することができる。それにより、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御方法を実現することができる。
また、第3の処理部は、さらに、前記第2のタスクと、実行可能状態に遷移したタスクの中で前記第2のタスクの次に優先度が高い第3のタスクの実行優先度を変更してもよい。
これにより、タスクでの実行優先度を変更することで、処理待ち時間の最も少なくなるようにタスクを実行することができる。
なお、本発明は、装置として実現できるだけでなく、その装置を構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを記録したコンピュータ読み取り可能なCD−ROMなどの記録媒体として実現したり、そのプログラムを示す情報、データ又は信号として実現したりすることもできる。そして、それらのプログラム、情報、データ及び信号は、インターネット等の通信ネットワークを介して配信してもよい。
本発明によれば、あるタスクによって使用されるデバイスに対して、事前にクロックの供給を開始することができる。それにより、あるタスクによって使用されるデバイスが実際に使用開始されるまでの余分な待ち時間を削減することができるので、全体として消費電力を最小限に抑えつつも、システムのスループットを向上させた電力制御装置および電力制御方法が実現できる。携帯電話やデジタルビデオカメラなど省電力化かつスループットの向上を要求されるポータブル機器が普及しつつある今日における本発明の実用的価値は極めて高い。
(実施の形態1)
以下、本発明の実施の形態1における電力制御装置について、図面を用いて説明する。
図1は、本発明の実施の形態1における電力制御装置のソフトウェア構成を示すブロック図である。この電力制御装置は、情報処理装置における消費電力を制御する電力制御装置であって、ユーザの求めるジョブを動作するために必要な共通機能を持つオペレーティングシステム100を有し、複数からなるタスク101(101−1〜101−3)と、複数からなるデバイス102(102−1〜102−3)と、タスクリスト103と、タスク管理部104と、クロック供給判断部105と、デバイス管理テーブル106と、クロック制御部107とから構成される。
なお、この電力装置は典型的にはCPU、ROM、RAMのドライブ、I/Oポート等を備える一般的な情報処理装置で実行されるソフトウェアとして実現されるが、専用の電子回路等のハードウェアで実現されても良い。
オペレーティングシステム100は、複数のタスク101を並行して実行できるマルチタスク機能をもつ。
タスク101は、例えば、映像や音声データをMPEG2等のフォーマットに多重化する機能を実現したり、MPEG2等のデータをDVDやHDD等の蓄積媒体に記録する機能を複数のタスク101で実現したりするなど、ユーザの求めるジョブを実現するためにオペレーションシステム100上で動作するプログラムであり、複数からなる。また、複数からなるタスク101はそれぞれ、必要となるデバイス102を制御しながら、ユーザが求めるジョブを実現する。
ここで、図2は、本発明の実施の形態1におけるタスクの遷移状態を示す図である。タスク101には、図2に示されるように、処理実行中である実行状態と、優先度の高いタスク101が実行中であるため実行できないが、実行する条件が整っており、いつでも処理実行が開始できる状態である実行可能状態と、実行できる条件が整わないため実行できない状態である待ち状態との少なくとも3つの状態がある。
タスクリスト103は、タスク101の状態およびタスク101の中でどのタスク101を優先的に実行するかを示す実行優先度を管理するためのテーブルであり、メモリ等の記憶装置手段に保持される。
タスク管理部104は、タスクリスト103におけるタスク101の状態の情報を参照し、実行可能状態にあるタスク101とタスクリスト103で参照した実行優先度とを関連させたリストを、実行状態に遷移する順番を示す実行待ちリストとして管理する。そして、実行待ちリストにしたがって、実行可能状態にあるタスク101を実行状態への遷移や、実行状態にあるタスク101を待ち状態あるいは実行可能状態への遷移を実行する。
デバイス管理テーブル106は、各々のタスク101がどのデバイス102を使用するかを管理するためのテーブルであり、メモリ等の記憶装置手段に保持される。
クロック供給判断部105は、請求項1におけるタスクリストと、前記デバイス管理テーブルとを参照する第1の処理部と、前記第1の処理部の参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止を判断し、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理部を有するクロック供給判断部であり、本実施の形態では、タスク管理部104を監視し、実行可能状態に遷移したタスク101がどのデバイス102を使用しているかをデバイス管理テーブル106から検知し、該当するデバイス102に対するクロック供給開始の要求をクロック制御部107に対して行う。
クロック制御部107は、請求項1の前記クロック供給判断手段の要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御部であり、本実施の形態では、クロック供給判断部105の要求にしたがい、該当する各々のデバイス102に対して、クロック供給の開始または停止を行う。
ここで、タスク101とタスクリスト103とタスク管理部104とクロック供給判断部105との関係について一例を挙げて説明する。図1において、例えば、タスク101−1とタスク101−2とタスク101−3とは並行して動作し、タスク101の実行優先度はタスク101−1が最も高いものとし、タスク101−2、タスク101−3の順の優先度とする。また、各タスク(タスク101−1とタスク101−2とタスク101−3)は互いに相関関係がない、つまり独立してタスクの実行が行えるとする。
そして、タスク101−1、タスク101−2および、タスク101−3の状態が待ち状態から実行可能状態に遷移した場合には、まず、タスク管理部104は、タスクリスト103のタスク101−1、タスク101−2およびタスク101−3の実行優先度を参照する。次に、タスク管理部104は、管理しているタスク101の実行待ちリストをタスク101の実行優先度にしたがい、タスク101−1、タスク101−2およびタスク101−3の実行優先度順になるように、実行待ちリストを更新する。次に、タスク管理部104は、実行待ちリストが更新されたことをクロック供給判断部105に伝える。
次に、本発明の実施の形態1におけるタスク101が実行可能状態に遷移したあとタスク101が使用するデバイス102に対してクロックの供給を開始するまでのクロック供給判断部105の動作について図を用いて説明する。
図3はクロック供給判断部105のクロック供給の開始要求までの動作の流れを示したフローチャートである。
図4は、デバイス管理テーブル106の一例を示した図である。
図3において、クロック供給判断部105は、まず、タスク管理部104が管理する実行待ちリストに登録されている全てのタスク、例えば、タスク101−1とタスク101−2とタスク101−3とを確認する(S201)。
次に、クロック供給判断部105は、確認したタスクのそれぞれがどのデバイス102を使用するのかをデバイス管理テーブル106に確認する(S202)。デバイス管理テーブル106は、図4に示すように、各々のタスク101が、複数のデバイス102のうちどのデバイス102を使用するかの情報を含んでいる。例えば、タスク101−1がデバイス102−1、タスク101−2がデバイス102−2、タスク101−3がデバイス102−3を使用する情報を含んでいる。
次に、クロック供給判断部105は、タスク管理部104が管理する実行待ちリストに登録されている全てのタスクについて再度、確認する(S203)。実行待ちリストが更新されるなど最初に確認したタスクに変化があった場合には(S203のNOの場合)、確認したタスクのそれぞれがどのデバイス102を使用するのかをデバイス管理テーブル106に再度確認する。
実行待ちリストが最初に確認した全てのタスクと比べて変化がない場合には(S203のYESの場合)、クロック供給判断部105は、クロック制御部107に対して、該当するデバイス、例えばデバイス102−1とデバイス102−2とデバイス102−3とへのクロック供給を開始する要求を行う(S204)。
そして、クロック制御部107は、クロック供給判断部105の要求に従い、例えば、デバイス102−1とデバイス102−2とデバイス102−3となど、デバイスへのクロック供給を開始する。
したがって、タスク101が実行可能状態に遷移したタイミングで、タスク101が使用するデバイス102に対してクロックの供給を開始することができる。
なお、デバイス管理テーブル106は、さらに、タスク101(101−1〜101−3)が使用するデバイスが動作準備状態、動作可能状態、停止状態のいずれかであるかの情報を含んでもよく、クロック供給判断部105は、デバイス管理テーブル106からデバイス、例えば、デバイス102−2の状態の情報を参照し、かつ、複数のタスク101、例えば、101−2と101−3とが同一のデバイス102−2を使用するかどうかをタスク管理部104から判断し、複数のタスク101−2と101−3とが同一のデバイス102−2を使用すると判断する場合、タスク101−1が使用していないので停止状態のデバイス102−2へのクロック供給開始の要求をクロック制御部107に対して行ってもよい。
それにより、実行優先度に関係なく、複数のタスクが使用するデバイスに対してクロック供給を行うことができる。例えば、複数のタスクの最先に実行状態になった時に、デバイスの動作可能待ちがあり、処理待ち時間の間に次に最先である複数のタスクが実行状態になったとしても同一のデバイスを使用するので、そのデバイスの動作可能待ちまでの他のタスクに処理待ち時間が生じてしまうこともなく、最先のタスクが実行状態に遷移した際に、遅延すること無くデバイスを使用することができるので、不要な処理待ち時間を削減することができる。
図5は、本発明の実施の形態1におけるマルチタスクオペレーションシステムの動作結果を示す図である。ここで、例えば、タスク101−1、タスク101−2およびタスク101−3の複数のタスクがあり、この順番でタスクが実行されるとする。また、それぞれのタスク101−1、101−2および101−3が必要とし、使用するデバイスをそれぞれデバイス102−1、デバイス102−2およびデバイス102−3とする。
図5に示すように、まず、タスク101−1が実行されデバイス102−1が動作している。このとき、タスク101−2およびタスク101−3は実行可能状態であり、実行状態へ遷移するのを待っている状態である。
次に、タスク101−1の処理が終了し、実行可能状態であるタスク101−2が実行状態に遷移する。このとき、クロック供給判断部105は、タスク101−2が実際に実行状態に遷移する前に、タスク101−2の処理で必要となるデバイス102−2にクロックの供給を開始する。そして、タスク101−1の処理が終了し、実行可能状態であるタスク101−2が実行状態に遷移したときには、デバイス102−2が実際に使用できる準備ができているので、時間の遅延なくデバイス102−2の動作の実行を開始することができる。このとき、タスク101−3はタスク101−2の処理が終了するまで実行可能状態のままであり、実行状態へ遷移するのを待っている状態である。
次に、タスク101−2の処理が終了し、実行可能状態であるタスク101−3が実行状態に遷移する。このとき、クロック供給判断部105は、タスク101−3が実際に実行状態に遷移する前に、タスク101−3の処理で必要となるデバイス102−3にクロックの供給を開始する。そして、タスク101−2の処理が終了し、実行可能状態であるタスク101−3が実行状態に遷移したとき、デバイス102−3が実際に使用できる準備ができているので、時間の遅延なくデバイス102−3の動作の実行を開始することができる。
このように、クロック供給判断部105により、タスク101が使用するデバイス102に対し、タスクが実行状態になる前にクロックの供給を開始できるため、実行状態になってからクロックの供給を開始する従来の動作結果と比較すると、デバイス102に対するクロックの供給開始から動作可能となるまでの待ち時間を削減することができる。
次に、タスク101が使用するデバイス102へのクロック供給を停止する場合について説明する。
図6は本発明の実施の形態1におけるデバイス102へのクロック供給を停止する際のクロック供給判断部105のクロック供給の停止要求までの動作の流れを示したフローチャートである。
図6において、クロック供給判断部105は、まず、タスク管理部104の実行待ちリストにしたがい実行可能状態にあるタスク101を実行状態への遷移や、実行状態にあるタスク101を待ち状態あるいは実行可能状態への遷移を実行するタスク遷移情報を参照する(S401)。
次に、実行状態であったタスク101が図2で示すどの状態に遷移するかを確認する(S402)。
次に、実行状態にあるタスク101が実行状態と実行状態への遷移を待つ実行可能状態とを除くいずれかの状態に遷移する場合には、すなわち、待ち状態へ遷移する場合あるいは実行状態から実行可能状態へ遷移する場合には(S403の「実行状態および実行可能状態以外の状態」の場合)、クロック供給判断部105は、タスク101がどのデバイス102を使用するのかについてデバイス管理テーブル106を確認する(S404)。なお、実行状態にあるタスク101が実行状態のままである場合もしくは、実行状態に遷移をまっている実行可能状態である場合には(S403の「実行状態および実行可能状態」の場合)、クロック供給判断部105は、クロック供給条件の変更の必要がないと判断し、クロック供給停止の要求は行わない。
そして、デバイス管理テーブル106を確認し、タスク101が使用しているデバイス102を他のタスク101は使用しない場合(S405の「しない」場合)、クロック供給判断部105は、クロック制御部107に対して、デバイス102のクロック供給を停止する要求を行う(S407)。
また、デバイス管理テーブル106を確認し、タスク101が使用しているデバイス102が他のタスク101に使用されることを確認した場合(S405の「する」の場合)、該当する他のタスク101の状態を確認する(S406)。そして、該当する他のタスクが実行状態または実行状態への遷移をまつ実行可能状態であった場合には(S406の「実行状態および実行可能状態」の場合)、クロック供給停止の要求を行わない。該等する他のタスクが実行状態にあるタスク101が実行状態と実行状態を待つ実行可能状態とを除くいずれかの状態に遷移する場合には、すなわち、待ち状態への遷移する場合あるいは実行状態から実行可能状態へと遷移する場合には(S406の「実行状態および実行可能状態以外の状態」の場合)、クロック制御部107に対して、デバイス102のクロック供給を停止する要求を行う(S407)。
以上より、実施の形態1によれば、タスク101が使用するデバイス102に対して、タスク101が待ち状態になる前にクロックの供給を停止することができるため、待ち状態になってからクロックの供給を停止するのに比べて、消費電力を削減することができる。
なお、実行状態のタスク101と、実行状態へ遷移を待つ実行可能状態のタスク101とを除く全てのタスク101が使用するデバイス102に対してクロックの供給を停止してもよい。
また、タスク101が使用しているデバイス102を、他のタスクが後にデバイスを使用する場合にクロック供給の停止を行わないとしてもよい。その場合には、同一デバイスに対してタスクが切り替わるごとに供給の開始および停止をする必要がなくなり、不要な処理待ち時間を削減することができる。
また、前述の例では、実行待ちリストに登録された全てのタスク101、すなわち、実行可能状態であるタスク101が使用するデバイス102に対してクロックの供給を開始する場合を説明したが、実行待ちリストに登録されたタスク101の中で、最も実行優先度が高いタスク101が使用するデバイス102に対してのみクロックの供給を開始してもよい。
ここで、本発明の実施の形態1における変形例として、タスク101が実行可能状態に遷移したあとタスク101が使用するデバイス102に対して実行待ちリストに登録されたタスク101の中で、最も実行優先度が高いタスク101が使用するデバイス102に対してのみクロックの供給を開始するまでのクロック供給判断部105の動作について図を用いて説明する。
図7は、本実施の形態1の変形例におけるクロック供給判断部105のクロック供給の開始要求までの動作の流れを示したフローチャート図である。
図7において、クロック供給判断部105は、まず、タスク管理部104が管理する実行待ちリストに登録されている全てのタスクの中で最も優先度の高いタスクを確認する(S501)。
次に、確認した最も優先度の高いタスクがどのデバイス102を使用するのかをデバイス管理テーブル106に確認する(S502)。
次に、クロック供給判断部105は、該当するデバイス102へのクロック供給を開始する要求を行う(S503)。
そして、クロック制御部107は、クロック供給判断部105の要求に従い、該等するデバイス102へクロック供給を開始する。
以上より、タスク101が実行可能状態に遷移したタイミングで、タスク101が使用するデバイス102に対して、実行待ちリストに登録されたタスク101の中で、最も実行優先度が高いタスク101が使用するデバイス102に対してのみクロックの供給を開始できる。それにより、事前にクロックを供給するデバイス102の数を最小限にすることで、更なる節電効果を得ることができる。したがって、システムのスループットを落とさずに余分な電力消費を抑えることができるので、情報処理装置全体の消費電力を最小限に抑えることができる。
(実施の形態2)
次に、本発明の実施の形態2における電力制御装置について、図面を用いて説明する。
図8は本発明の実施の形態2における電力制御装置のソフトウェア構成を示すブロック図である。この電力制御装置は、情報処理装置における消費電力を制御する電力制御装置であって、ユーザの求めるジョブを動作するために必要な共通機能を持つオペレーティングシステム100を有し、複数からなるタスク101(101−1〜101−3)と、複数からなるデバイス102(102−1〜102−3)と、タスクリスト103と、タスク管理部104と、クロック供給判断部105と、デバイス管理テーブル106と、クロック制御部107と、実行優先度変更部108とから構成される。
オペレーションシステム100は、複数のタスク101を並行して実行できるマルチタスク機能をもつ。
なお、この電力装置は典型的にはCPU、ROM、RAMのドライブ、I/Oポート等を備える一般的な情報処理装置で実行されるソフトウェアとして実現されるが、専用の電子回路等のハードウェアで実現されても良い。
タスク101は、例えば、映像や音声データをMPEG2等のフォーマットに多重化する機能を実現したり、MPEG2等のデータをDVDやHDD等の蓄積媒体に記録する機能を複数のタスク101で実現したりするなど、ユーザの求めるジョブを実現するためにオペレーションシステム100上で動作するプログラムであり、複数からなる。また、複数からなるタスク101はそれぞれ、必要となるデバイス102を制御しながら、ユーザが求めるジョブを実現する。
タスクリスト103は、タスク101の状態およびタスク101の中でどのタスク101を優先的に実行するかを示す実行優先度を管理するためのテーブルであり、メモリ等の記憶装置手段に保持される。
タスク管理部104は、タスクリスト103におけるタスク101の状態の情報を参照し、実行可能状態にあるタスク101とタスクリスト103で参照した実行優先度とを関連させたリストを、実行状態に遷移する順番を示す実行待ちリストとして管理する。そして、実行待ちリストにしたがって、実行可能状態にあるタスク101を実行状態への遷移や、実行状態にあるタスク101を待ち状態あるいは実行可能状態へ遷移を実行したりする。また、タスク管理部104は、タスクの実行がされるまでの時間を管理する。
デバイス管理テーブル106は、各々のタスク101がどのデバイス102を使用するかを管理するためのテーブルであり、メモリ等の記憶装置手段に保持される。
また、デバイス管理テーブル106は、タスク101が使用するデバイス102がクロック供給を開始してから動作可能となるまでのクロック制御時間を管理するための情報も含む。
クロック供給判断部105は、請求項1におけるタスクリストと、前記デバイス管理テーブルとを参照する第1の処理部と、前記第1の処理部の参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止を判断し、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理部を有するクロック供給判断部であり、本実施の形態では、タスク管理部104を監視し、実行可能状態に遷移したタスク101がどのデバイス102を使用しているかをデバイス管理テーブル106から検知し、該当するデバイス102に対するクロック供給開始の要求をクロック制御部107に対して行う。
クロック制御部107は、請求項1の前記クロック供給判断手段の要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御部であり、本実施の形態では、クロック制御手段クロック供給判断部105の要求にしたがい、該当する各々のデバイス102に対して、クロック供給の開始または停止を行う。
実行優先度変更部108は、クロック供給判断部105の要求にしたがって、タスク管理部104で管理しているタスク101の実行順序を変更する。
ここで、タスク101とタスクリスト103とタスク管理部104とクロック供給判断部105との関係について一例を挙げて説明する。図8において、例えば、タスク101−1とタスク101−2とタスク101−3とは並行して動作し、タスク101の実行優先度はタスク101−1が最も高いものとし、以下タスク101−2、タスク101−3の順の優先度する。また、各タスク(タスク101−1とタスク101−2とタスク101−3)は互いに相関関係がない、つまり独立してタスクの実行が行えるとする。
タスク101−1、タスク101−2およびタスク101−3の状態が待ち状態から実行可能状態に遷移した場合には、まず、タスク管理部104は、タスクリスト103のタスク101−1と、タスク101−2およびタスク101−3の実行優先度を参照する。次に、タスク管理部104は、管理しているタスク101の実行待ちリストをタスク101の実行優先度にしたがい、タスク101−1、タスク101−2およびタスク101−3の実行優先度順になるよう、実行待ちリストを更新する。次に、タスク管理部104は、実行待ちリストが更新されたことをクロック供給判断部105に伝える。
次に、本発明の実施の形態2におけるタスク101が実行可能状態に遷移したあとタスク101が使用するデバイス102に対してクロックの供給を開始するまでのクロック供給判断部105の動作および実行優先度変更部108の動作について図を用いて説明する。
図9は、本実施の形態2におけるクロック供給判断部105のクロック供給の開始要求までの動作の流れを示したフローチャートである。
図10は、本実施の形態2におけるデバイス管理テーブル106が管理するデバイス管理テーブルの一例を示した図である。
図9において、クロック供給判断部105は、まず、実行待ちリストに登録されている全てのタスク101、例えば、タスク101−1とタスク101−2とタスク101−3を確認する(S901)。
次に、クロック供給判断部105は、確認した全てのタスクの中で最も優先度の高いタスクを確認し、確認した最も優先度の高いタスクがどのデバイス102を使用するのかをデバイス管理テーブル106に確認し、該等するデバイス102のクロック供給を開始してから動作可能となるまでのクロック制御時間を確認する(S902)。デバイス管理テーブル106には、図10に示すように、各々のタスク101が、複数のデバイス102のうち、どのデバイス102を使用するかの情報を含んでいる。また、デバイス管理テーブル106は、タスク101が使用するデバイス102がクロック供給を開始してから動作可能となるまでのクロック制御時間を管理するための情報を含んでいる。
次に、クロック供給判断部105は、デバイス管理テーブル106の情報を参照し、実行可能状態に遷移したタスク101の中で最も優先度の高いタスク、たとえば、タスク101−1が使用するデバイス、例えばデバイス102−1のクロック制御時間と、予め定めた閾となる時間を比較する(S903)。
最も優先度の高いタスク101−1が使用するデバイス102−1のクロック制御時間が予め定めた閾となる時間を越えない場合(S904のYESの場合)、クロック供給判断部105は、クロック制御部107に対して、最も優先度の高いタスク101−1が使用するデバイス102−1へのクロック供給を開始する要求を行う(S905)。
最も優先度の高いタスク101−1が使用するデバイス102−1のクロック制御時間が予め定めた閾となる時間を越える場合(S904のNOの場合)、クロック供給判断部105は、最も優先度の高いタスク101−1の次に実行優先度の高いタスク、例えば、タスク101−2が使用するデバイス、例えばタスク101−2のクロック制御時間を確認する(S906)。
次に、クロック供給判断部105は、次に優先度の高いタスク101−2が使用するデバイス102−2のクロック制御時間と予め定めた閾となる時間を比較する(S907)。
ここで、次に優先度の高いタスク101−2が使用するデバイス102−2のクロック制御時間が予め定めた閾となる時間を越える場合(S908のNOの場合)、クロック供給判断部105は、次に優先度の高いタスク101−2の次に実行優先度の高いタスク、例えば、タスク101−3が使用するデバイス、例えばタスク101−3のクロック制御時間を確認し、上述のS906とS907の動作を繰り返す。
次に優先度の高いタスク101−2が使用するデバイス102−2のクロック制御時間が予め定めた閾となる時間を越えない場合(S908のYESの場合)、クロック供給判断部105は、クロック制御部107に対して、最も優先度の高いタスク101−1が使用するデバイス102−1に加え、次に優先度の高いタスク101−2が使用するデバイス102−2へのクロック供給を開始する要求を行う(S909)。ここで、本発明の実施の形態2では、閾となる時間を例えば、50msとしている。
さらに、クロック供給判断部105は、実行優先度変更部108に対し、最も優先度の高いタスク101−1と、次に優先度の高いタスク101−2の実行順序を変更する要求を行う(S910)。
そして、実行優先度変更部108は、クロック供給判断部105の実行優先度変更要求に従い、実行待ちリストの最も優先度の高いタスク101−1と次に優先度の高いタスク101−2の実行順序を変更する。
以上の処理により、実行可能状態の中で最も優先度が高いタスク101−1が使用するデバイス102−1のクロック制御時間が予め定めた閾となる時間を越える場合に、最も優先度が高いタスク101−1の次に優先度の高いタスク101−2が使用するデバイス102−2にもクロックを供給することが可能となり、該当するタスク101すなわち、タスク101−1およびタスク101−2の実行順序を変更することで、最も優先度の高いタスク101−1のデバイス102−1のクロック制御中も他のタスク101の動作をすることが可能となる。
このように、本発明の実施の形態2によれば、実行優先度変更部108により、最も優先度が高いタスク101−1が使用するデバイス102−1のクロック制御時間が予め定めた閾となる時間を越える場合に、次に優先度の高いタスク101−2が使用するデバイス102−2にもクロックを供給し、該当するタスク101すなわち101−1および101−2の実行順序を変更することができる。
それにより、該当するデバイス102のクロック制御時間が予め定めた閾となる時間を越える場合は、他のタスク101を先に実行することができる。その結果、余分な待ち時間を削減することができるので、システムのスループットを落とさずに情報処理装置全体の消費電力を最小限に抑えることができる。
なお、このとき、クロック供給判断部105は、上述と同様の処理で、次に優先度の高いタスク101−2と、実行可能状態に遷移したタスクの中でタスク101−2のさらに次に優先度が高い101−3との実行優先度の変更の要求を実行優先度変更部108に対して行ってもよく、タスクでの実行優先度を自由に変更することで、処理待ち時間の最も少なくなるようにタスクを実行することができる。
また、上述では、優先度の高いタスク101−1が使用するデバイス102−1のクロック制御時間と予め定めた閾となる時間を比較する場合について説明したが、タスク管理部104が管理するタスク101の実行がされるまでの時間と、デバイス管理テーブル106の動作可能待ち時間の情報とを参照して比較しても良い。その際には、クロック供給判断部105は、実行可能状態で実行優先度の高いタスク101−1が使用するデバイス102−1の動作可能待ち時間と、当該タスクの実行がされるまでの時間を比較し、タスク101−1の実行がされるまでの時間よりデバイス102−1の動作可能待ち時間が大きい場合、デバイス102−1へのクロックの供給開始を判断し、デバイス102−1へのクロックの供給開始の要求をクロック制御部107に対して行う。その場合には、実行可能状態で実行優先度の高いタスクのタスク実行までの時間とそのタスクが使用するデバイスが動作して実際に使用可能になるまでの待ち時間を参照した上で、事前にデバイスへクロックの供給をすることで、実行優先度の高いタスクが実行状態になったときにはデバイスを使用することができるので、実際にタスクが実行状態になってからデバイスが動作可能になるのを待つこともなくなり、不要な処理待ち時間を削減することができる。
また、さらに、クロック供給判断部105は、実行優先度を変更されたタスク101(例えば、タスク101−1とする)が使用するデバイス102−1の状態をデバイス管理テーブル106に参照し、実行優先度を変更されたタスク101−1が使用するデバイス102−1が動作可能状態である場合、変更されたタスク101−1の実行優先度を元に戻す要求を前記実行優先度変更部108に対して行っても良い。その場合には、処理待ち時間の最も少なくなるようにタスク101を実行しつつ、当初予定していたとおりのタスク101の順序にて実行することができる。
また、本発明の実施の形態1の変形例で述べたクロック供給判断部105と、実行優先度変更部108とを組み合わせることにより、タスク101が使用するデバイス102に対し事前にクロックの供給を開始できるだけでなく、必要最小限のデバイス102にのみクロックの供給を行うことができる。
以上、本発明の電力制御装置について、実施の形態に基づいて、説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、ことなる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
また、上述の本発明の実施の形態では、電力制御装置および電力制御方法として、クロック供給の制御について説明したが、それに限定されず、電力の供給の制御でも良い。
本発明は、電力制御装置および電力制御方法として、省電化かつスループットの向上が求められる複数のタスクがリアルタイムに動作するシステムにおいて利用でき、特に携帯電話やデジタルビデオカメラなどの電池駆動で動作するポータブル機器等に利用することができる。
本発明の実施の形態1における電力制御装置のソフトウェア構成を示すブロック図である。 本発明の実施の形態1におけるタスクの遷移状態を示す図である。 本発明の実施の形態1におけるクロック供給判断部のクロック供給の開始要求までの動作の流れを示したフローチャートである。 本発明の実施の形態1におけるデバイス管理テーブルが管理するデバイス管理テーブルの一例を示した図である。 本発明の実施の形態1におけるマルチタスクオペレーションシステムの動作結果を示す図である。 本発明の実施の形態1におけるクロック供給判断部のクロック供給停止要求までの動作の流れを示したフローチャート図である。 本発明の実施の形態1の変形例におけるクロック供給判断部のクロック供給の開始要求までの動作の流れを示したフローチャート図である。 本発明の実施の形態2における電力制御装置のソフトウェア構成を示すブロック図である。 本発明の実施の形態2におけるクロック供給判断部のクロック供給の開始要求までの動作の流れを示したフローチャートである。 本発明の実施の形態2におけるデバイス管理テーブルが管理するデバイス管理テーブルの一例を示した図である。 従来のオペレーションシステムの動作結果を示す図である。
符号の説明
101−1、101−2、101−3 タスク
102−1、102−2、102−3 デバイス
103 タスクリスト
104 タスク管理部
105 クロック供給判断部
106 デバイス管理テーブル
107 クロック制御部
108 実行優先度変更部

Claims (15)

  1. 情報処理装置における消費電力を制御する電力制御装置であって、
    待ち状態、実行可能状態、および実行状態を含むタスクのそれぞれの状態および実行優先度を管理するための情報を含むタスクリストと、タスクが使用するデバイスを管理するための情報を含むデバイス管理テーブルとを保持する記憶手段と、
    前記タスクリストを参照し、タスクの実行順序およびタスクの状態の遷移をリストとして管理するタスク管理手段と、
    前記タスクリストと、前記デバイス管理テーブルとを参照する第1の処理部と、
    前記第1の処理部の参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止を判断し、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理部を有するクロック供給判断手段と、
    前記クロック供給判断手段の要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御手段と
    を備える
    ことを特徴とする電力制御装置。
  2. 前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクが使用するデバイスへのクロック制御の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  3. 前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行状態のタスクと、実行可能状態のタスクとを除く状態のタスクが使用するデバイスへのクロック供給停止の判断をし、当該デバイスへのクロック供給停止の要求を前記クロック制御手段に対して行い、
    前記クロック制御手段は、前記クロック供給判断手段における前記第2の処理部の要求により、当該デバイスへのクロック供給を停止する
    ことを特徴とする請求項1に記載の電力制御装置。
  4. 前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクの中で実行優先度の最も高いタスクが使用するデバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  5. 前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のタスクの中で実行優先度の最も高いタスクを除く全てのタスクが使用するデバイスへのクロック供給停止を判断し、当該デバイスへのクロック供給停止の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  6. 前記第2の処理部は、前記第1の処理部の参照結果に基づいて、実行可能状態のすべてのタスクが使用するデバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に行う
    ことを特徴とする請求項1に記載の電力制御装置。
  7. 前記タスク管理手段は、さらに、タスクの実行がされるまでの時間を管理し、
    前記デバイス管理テーブルは、さらに、タスクが使用するデバイスがクロック供給開始から動作可能となるまでの動作可能待ち時間の情報を含み、
    前記第1の処理部は、前記タスク管理手段のタスクの実行がされるまでの時間と、前記デバイス管理テーブルの動作可能待ち時間とを参照し、実行可能状態で実行優先度の高いタスクが使用するデバイスの動作可能待ち時間と、当該タスクの実行がされるまでの時間を比較し、
    前記第2の処理部は、当該タスクの実行がされるまでの時間より当該デバイスの動作可能待ち時間が大きい場合、当該デバイスへのクロックの供給開始を判断し、当該デバイスへのクロックの供給開始の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  8. 前記デバイス管理テーブルは、さらに、タスクが使用するデバイスがクロック供給開始から動作可能となるまでの動作可能待ち時間の情報を含み、
    前記第1の処理部は、前記デバイス管理テーブルの動作可能待ち時間を参照し、
    実行可能状態に遷移したタスクの中で最も優先度が高いタスクを除く全てのタスクに対し、前記タスクが使用するデバイスの動作可能待ち時間と、予め設定された閾値とを比較し、
    前記第2の処理部は、前記タスクが使用するデバイスの動作可能待ち時間が予め設定された閾値を超える場合、当該デバイスへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  9. 前記電力制御装置は、さらに、前記クロック供給判断手段の要求により、タスクの実行優先度を変更し、前記タスク管理手段に対し、タスクの切り替えの要求を行う実行優先度変更手段を備え、
    前記第2の処理部は、前記第1の処理の参照結果に基づき、実行可能状態に遷移したタスクの中で最も優先度が高い第1のタスクが使用する第1のデバイスと、前記第1のタスクの次に優先度が高い第2のタスクが使用する第2のデバイスとへのクロック供給開始を判断し、当該デバイスへのクロック供給開始の要求を前記クロック制御手段に対して行い、
    さらに、前記クロック供給判断手段は、前記第2の処理の判断結果に基づき、前記第2のタスクと、実行可能状態に遷移したタスクの中で前記第2のタスクの次に優先度が高い第3のタスクとの実行優先度の変更の要求を実行優先度変更手段に対して行う第3の処理部を含む
    ことを特徴とする請求項1に記載の電力制御装置。
  10. 前記デバイス管理テーブルは、さらに、タスクが使用するデバイスが動作準備状態、動作可能状態、停止状態のいずれかであるかの情報を含み、
    前記第3の処理部は、さらに、実行優先度を変更された前記第2のタスクが使用するデバイスの状態を前記デバイス管理テーブルに参照し、
    実行優先度を変更された前記第2のタスクが使用するデバイスが動作可能状態である場合、変更された前記第2および第3のタスクの実行優先度を元に戻す要求を前記実行優先度変更手段に対して行う
    ことを特徴とする請求項9に記載の電力制御装置。
  11. 前記デバイス管理テーブルは、さらに、タスクが使用するデバイスが動作準備状態、動作可能状態、停止状態のいずれかであるかの情報を含み、
    前記第1の処理部は、前記デバイス管理テーブルのデバイスの状態の情報を参照し、複数のタスクが同一のデバイスを使用するかどうかを判断し、
    前記第2の処理部は、複数のタスクが同一のデバイスを使用すると前記第1の処理部が判断する場合、タスクが使用するデバイスの中で停止状態のデバイスへのクロック供給開始の要求を前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  12. 前記第1の処理部は、第4のタスクが使用する第4のデバイスの中のいずれかを前記第4のタスク以外の第5タスクが使用するかどうかを参照し、
    前記第2の処理部は、第4のタスクが使用する第4のデバイスの中のいずれかを前記第4のタスク以外の第5タスクが使用することを前記第1の処理部が参照した場合、
    前記第4のデバイスのクロック供給の停止要求を行わない判断をし、前記第4のデバイスのクロック供給の停止要求を前記クロック制御手段に対して行わない
    ことを特徴とする請求項1に記載の電力制御装置。
  13. 前記第2の処理部は、実行可能状態のタスクが使用するデバイスのクロック供給開始の要求と、実行状態および実行可能状態のタスクを除く状態のタスクが使用するデバイスへのクロック供給停止の要求とを 前記クロック制御手段に対して行う
    ことを特徴とする請求項1に記載の電力制御装置。
  14. 第3の処理部は、さらに、前記第2のタスクと、実行可能状態に遷移したタスクの中で前記第2のタスクの次に優先度が高い第3のタスクの実行優先度を変更する
    ことを特徴とする請求項9に記載の電力制御装置。
  15. 情報処理装置における消費電力を制御する方法であって、
    待ち状態、実行可能状態、および実行状態を含むタスクのそれぞれの状態および実行優先度を管理するための情報を含むタスクリストと、タスクが使用するデバイスを管理するための情報を含むデバイス管理テーブルとを保持する記憶ステップと、
    前記タスクリストを参照し、タスクの実行順序およびタスクの状態の遷移をリストとして管理するタスク管理ステップと、
    前記タスクリストと、前記デバイス管理テーブルとを参照する第1の処理ステップと、
    前記第1の処理ステップの参照結果に基づいて、デバイスへのクロックの供給開始あるいは供給停止を判断し、デバイスへのクロックの供給開始あるいは供給停止の要求をする第2の処理ステップを有するクロック供給判断ステップと、
    前記クロック供給判断ステップの要求に基づいて、デバイスへのクロックの供給あるいは停止を制御するクロック制御ステップと
    を含むことを特徴とする電力制御方法。
JP2006322592A 2006-11-29 2006-11-29 電力制御装置および電力制御方法 Pending JP2008139913A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006322592A JP2008139913A (ja) 2006-11-29 2006-11-29 電力制御装置および電力制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006322592A JP2008139913A (ja) 2006-11-29 2006-11-29 電力制御装置および電力制御方法

Publications (1)

Publication Number Publication Date
JP2008139913A true JP2008139913A (ja) 2008-06-19

Family

ID=39601344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006322592A Pending JP2008139913A (ja) 2006-11-29 2006-11-29 電力制御装置および電力制御方法

Country Status (1)

Country Link
JP (1) JP2008139913A (ja)

Similar Documents

Publication Publication Date Title
US20030009701A1 (en) Computer system and computer-readable recording medium
JP4370336B2 (ja) 低消費電力ジョブ管理方法及び計算機システム
US9703361B2 (en) Memory control apparatus, memory control method, information processing apparatus and program
US20110145559A1 (en) System and method for controlling central processing unit power with guaranteed steady state deadlines
JP2012248190A (ja) サスペンドの延期
JP2013542491A (ja) 性能スケーリングアルゴリズムのセットを公開して管理するためのモバイルデバイスおよび方法
JP6151465B1 (ja) プロセッサコアの電力モードを制御するためのレイテンシベースの電力モードユニット、ならびに関連する方法およびシステム
JP2013215976A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP5681576B2 (ja) ホストコントローラ装置、情報処理装置及びイベント情報出力方法
CN104702534A (zh) 一种实现多进程共享端口的数据处理的方法及装置
US20190227621A1 (en) System management device
JP2012252602A (ja) サーバ管理システム、サーバ管理装置、サーバ管理方法、及びサーバ管理プログラム
KR20070112660A (ko) 전원관리장치 및 그 방법
JP2015041330A (ja) Cpuの制御方法、制御プログラム、情報処理装置
JP2008139913A (ja) 電力制御装置および電力制御方法
JP2006065471A (ja) 半導体集積回路およびその節電制御方法および節電制御プログラム
CN103257894A (zh) 一种管理程序的方法及电子终端
JP5783348B2 (ja) 制御装置、制御プログラム、画像形成装置
JP2010097427A (ja) 処理装置、処理方法及びコンピュータプログラム
JP2017162311A (ja) スマート装置、優先処理方法及び優先処理プログラム
JP6642990B2 (ja) 通信装置、制御方法、および、プログラム
US20130024705A1 (en) Virtual computer system, device sharing control method, computer-readable recording medium, and integrated circuit
JP2012088906A (ja) 電子機器およびその制御方法
JP2017010164A (ja) 情報処理装置、その制御方法、およびプログラム
JP2011008419A (ja) 分散型情報処理システム及び制御方法並びにコンピュータプログラム