(57)【要約】【課題】近年普及している携帯端末は、処理の行われていない間、ＣＰＵをＳｌｅｅｐ状態とし、処理を行うタイミングでＡｗａｋｅ状態に移行する省電力制御を行っている。Ｓｌｅｅｐ状態からＡｗａｋｅ状態へ移行するには所定の時間がかかる為、Ｓｌｅｅｐ状態から復帰して処理を行う場合は、遅延が発生してしまう。【解決手段】省電力制御によりＣＰＵをＳｌｅｅｐ状態へ移行する際に、予めタイマが起動されていて次の処理のタイミングがわかっている場合は、そのタイミングからＡｗａｋｅ状態への移行にかかる所定の時間を差し引いた時間でタイムアウトするダミータイマを起動することにより、本来処理すべきタイミングでＣＰＵは必ずＡｗａｋｅ状態となっているようにする。さらに、許容誤差範囲内のタイムアウト処理をまとめて行い、使用する資源を節約する。【選択図】図１
2006072698.tif 000002
【特許請求の範囲】
【請求項１】
設定された内容に従って動作する動作部と、
タイマを起動することにより経過時間を計時し、所定のタイムアウト時刻到達時に前記動作部に動作を指示するタイマ制御部と、
所定の条件を満たしたときに前記動作部の少なくとも一部をＳｌｅｅｐ状態（非動作状態）に移行させる省電力制御部を備えた省電力対応装置であって、
前記タイマ制御部は、前記Ｓｌｅｅｐ状態に移行する際に、タイマが起動されている場合は、起動されているタイマのタイムアウト時刻とＳｌｅｅｐ状態からＡｗａｋｅ状態（通常動作状態）に移行するまでにかかる所定時間を考慮したダミーのタイムアウト時刻を設定したダミータイマを起動させることを特徴とする省電力対応装置。
【請求項２】
前記タイマ制御部は、前記タイムアウトまでの時間がＳｌｅｅｐ状態からＡｗａｋｅ状態に移行するまでにかかる所定時間より短い場合に
Ｓｌｅｅｐ状態への移行の中止を前記省電力制御部に指示することを特徴とする請求項１記載の省電力対応装置。
【請求項３】
前記タイマ制御部は、前記Ｓｌｅｅｐ状態に設定する際に、タイマが複数起動されている場合、それぞれのタイムアウト時刻が所定の許容誤差範囲内にあるタイマを一括処理タイマとして抽出し、前記一括処理タイマのタイムアウト時刻のうち少なくとも一つのタイムアウト時刻に基づいて一括タイムアウト時刻を算出し、複数のタイムアウト処理を前記タイムアウト時刻に一度にまとめて行うとともに、前記一括処理タイムアウト時刻において前記動作部の少なくとも一部がＡｗａｋｅ状態に移行しているようにダミータイマを起動することを特徴とする請求項１記載の省電力対応装置。
【請求項４】
前記タイマ制御部は、前記一括処理タイマのタイムアウト時刻のうち、最も早いタイムアウト時刻と最も遅いタイムアウト時刻の平均値を一括タイムアウト時刻とすることを特徴とする請求項３記載の省電力対応装置。
【請求項５】
前記タイマ制御部は、前記一括処理タイマのあらかじめ設定された優先度を反映して、前記一括処理タイムアウト時刻を決定することを特徴とする請求項３記載の省電力対応装置。
【請求項６】
前記タイマ制御部は、
前記タイマが起動されており、かつ動作部がＳｌｅｅｐ状態に移行している状態で、タイムアウト以外の割り込み要因が発生し、動作部がＡｗａｋｅ状態に移行した場合、割り込み処理を行った後に、その時点から所定の誤差範囲にタイムアウト時刻となるタイマが起動されていないかどうかを確認し、該当するタイマが存在する場合は、引き続きタイムアウト処理を行うことを特徴とする請求項１記載の省電力対応装置。
【請求項７】
前記タイマ制御部は、
タイマが起動され、かつ、動作部がＳｌｅｅｐ状態に移行している状態で
タイムアウト以外の要因の割り込み要因が発生し、動作部がＡｗａｋｅ状態に移行した場合、
割り込み処理を行った後に、その時点から所定の誤差範囲内にタイムアウト時刻となるタイマが起動されていないかどうか確認し、所定の誤差範囲内にタイムアウト時刻となるタイマが起動されていないかどうかを確認し、該当するタイマが起動されているときは、そのタイマに対応して起動されているダミータイマを停止することを特徴とする請求項１記載の省電力対応装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の条件で省電力モードに移行する省電力対応装置に関するものである。
【背景技術】
【０００２】
近年普及している携帯端末など電池により電源を供給して動作する装置の場合、一度の充電で少しでも長く使用できる事がユーザから望まれる。その為、近年の携帯端末等の装置は、必要な処理を行っていない時間は無駄な消費電流を低減させる目的で、装置の一部をＳｌｅｅｐ状態に移行させて省電力効果を上げるよう設計されていることが通常である。ところで、携帯端末等の装置には、タイマを用いて予約された時刻に指定された動作（ジョブ）を行う機能が付加されたものが多い。この機能を持つ装置が、動作が予約された状態でＳｌｅｅｐ状態に入ると、Ｓｌｅｅｐ状態に入り再度Ａｗａｋｅ状態（通常モード）に復帰するのはそれぞれ時間がかかるため、予約された時刻に正確に動作が実行されないという問題がある。このような問題に対応し、予め予約された時刻にジョブが正確に起動されるようにする省電力対応装置に関してはたとえば特許文献１に開示されている。特許文献１には、Ｓｌｅｅｐ対象の処理部とは別に、Ｓｌｅｅｐ状態からＡｗａｋｅ状態に移行させるための動作状態制御部を設けることで、予約された時刻にあらかじめ処理部をＡｗａｋｅ状態に移行させておくことで、予約された時刻に正確にジョブを実行させるように構成した省電力対応装置が開示されている。
【特許文献１】特開２００２−１８６１７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、前記特許文献１の発明では、ＳｌｅｅｐからＡｗａｋｅに移行させるための動作状態制御処理部がＳｌｅｅｐ対象の処理部とは別途必要になり、動作状態制御処理をＳｌｅｅｐさせられないという課題が存在する。本発明は、別途、動作状態制御部を設けることなく、予約された時刻に正確にジョブを起動させることができる省電力対応装置を提供することを目的とする。
【課題を解決するための手段】
【０００４】
前記の課題を解決するために、本願の請求項１記載の省電力対応装置は、設定された内容に従って動作する動作部と、タイマを起動することにより経過時間を計時し、所定のタイムアウト時刻到達時に前記動作部に動作を指示するタイマ制御部と、所定の条件を満たしたときに前記動作部の少なくとも一部をＳｌｅｅｐ状態（非動作状態）に移行させる省電力制御部を備えた省電力対応装置であって、前記タイマ制御部は、前記Ｓｌｅｅｐ状態に移行する際に、タイマが起動されている場合は、起動されているタイマのタイムアウト時刻とＳｌｅｅｐ状態からＡｗａｋｅ状態（通常動作状態）に移行するまでにかかる所定時間を考慮したダミーのタイムアウト時刻を設定したダミータイマを起動させることを特徴としている。
【０００５】
本構成により、タイマのタイムアウト時刻が到来した時点では、それに先立って、ダミータイマのタイムアウトによる割り込みが発生することにより発生動作部がＡｗａｋｅ状態になっており、Ａｗａｋｅ状態で本来のタイマのタイムアウト処理が行なわれるので、Ｓｌｅｅｐから復帰してタイムアウト処理が行なわれる場合であっても、正確な時刻でタイムアウト処理を実行することができる。
【０００６】
また、本願の請求項２記載の省電力対応装置は、請求項１記載の構成に加え、前記タイムアウトまでの時間がＳｌｅｅｐ状態からＡｗａｋｅ状態（通常動作状態）に移行するまでにかかる所定時間より短い場合にＳｌｅｅｐ状態への移行を中止することを前記省電力制御部に指示するタイマ制御部を具備することを特徴としている。
【０００７】
本構成により、Ｓｌｅｅｐ状態に移行せずタイマのタイムアウトを待っているほうが、タイマの精度や消費電力の面から有利であるときには、Ｓｌｅｅｐ状態への移行を中止することができる。
【０００８】
また、本願の請求項３記載の省電力対応装置は、請求項１記載の構成に加え、前記Ｓｌｅｅｐ状態に設定する際に、タイマが複数起動されている場合、それぞれのタイムアウト時刻が所定の許容誤差範囲内にあるタイマを一括処理タイマとして抽出し、前記一括処理タイマのタイムアウト時刻のうち少なくとも一つのタイムアウト時刻に基づいて一括タイムアウト時刻を算出し、複数のタイムアウト処理を前記タイムアウト時刻に一度にまとめて行うとともに、前記一括処理タイムアウト時刻において前記動作部の少なくとも一部がＡｗａｋｅ状態に移行しているようにダミータイマを起動するタイマ制御部を具備することを特徴としている。この構成により複数のタイムアウト処理をまとめて行うことにより、効率的にタイムアウト処理を行うことができ、装置の資源（ＣＰＵで制御されている場合はＣＰＵ資源）を効率的に使用することができる。
【０００９】
さらに、本願の請求項４記載の省電力対応装置は、請求項３記載の構成に加え、前記一括処理タイマのタイムアウト時刻のうち、最も早いタイムアウト時刻と最も遅いタイムアウト時刻の平均値を一括タイムアウト時刻とするタイマ制御部を具備することを特徴としている。この構成により、複数のタイムアウト処理を一括して行うに際し、最も早いタイムアウト時刻ともっとも遅いタイムアウト時刻を同じ重みで考慮することができる。
【００１０】
さらに、本願の請求項５記載の省電力対応装置は、請求項３記載の構成に加え、前記一括処理タイマのあらかじめ設定された優先度を反映して、前記一括処理タイムアウト時刻を決定することを特徴としている。この構成により、優先度の高いタイマの誤差をなるべく少なくしたいという使用者の要望に答えることができる。
【００１１】
また、本願の請求項６記載の省電力対応装置は、請求項１記載の構成に加え、前記タイマが起動されており、かつ動作部がＳｌｅｅｐ状態に移行している状態で、タイムアウト以外の割り込み要因が発生し、動作部がＡｗａｋｅ状態に移行した場合、割り込み処理を行った後に、その時点から所定の誤差範囲にタイムアウト時刻となるタイマが起動されていないかどうかを確認し、該当するタイマが存在する場合は、引き続きタイムアウト処理を行うタイマ制御部を具備することを特徴としている。
【００１２】
この構成により、タイマ割り込み以外の割り込みが発生してＡｗａｋｅ状態になった場合には、誤差範囲内にタイムアウト処理があればまとめて行うことで、安定待ち（Ａｗａｋｅ状態になるまでの安定待ち）のための消費電力の削減を図ることができる。
【００１３】
また、本願の請求項７記載の省電力対応装置は、タイマが起動され、かつ、動作部がＳｌｅｅｐ状態に移行している状態でタイムアウト以外の要因の割り込み要因が発生し、動作部がＡｗａｋｅ状態に移行した場合、割り込み処理を行った後に、その時点から所定の誤差範囲内にタイムアウト時刻となるタイマが起動されていないかどうか確認し、該当するタイマが起動されているときは、そのタイマに対応して起動されているダミータイマを停止するタイマ制御部を具備することを特徴としている。
【００１４】
この構成により、不要なダミータイマを停止することができ、装置の資源を効率的に使用することができる。
【発明の効果】
【００１５】
以上のように本発明によれば、ＣＰＵをＳｌｅｅｐ状態に移行させるに先立ち、起動されているタイマの有無を判定し、起動されているタイマが存在する場合は、タイムアウトまでの時間を算出し、ＣＰＵがＳｌｅｅｐ状態からＡｗａｋｅ状態に移行する所定の時間を差し引いた新たなタイマを起動しておくことで、Ｓｌｅｅｐ中に現在時刻を取得して、Ａｗａｋｅするかどうかの判定をする必要がなく、ＣＰＵをＳｌｅｅｐさせた状態でも正確な時刻にタイムアウト処理を実行できるという効果がある。
【発明を実施するための最良の形態】
【００１６】
（実施の形態１）
以下に、本発明の実施の形態１について、図面を参照しながら説明する。
【００１７】
図１は、本発明を実施した携帯電話の構成を示すブロック図である。本実施の形態にかかる携帯電話も、通常の携帯電話と同様にＣＰＵ（図示せず）を備えており、ＣＰＵ上でアプリケーションソフトウェア（以下、アプリケーションという）等のプログラムを稼動させることにより種々の機能を実現している。
【００１８】
一般に携帯電話を含む携帯端末では電池での駆動時間を長くするために、省電力モードへ遷移する機能を備えている、本明細書では省電力モードを（ＣＰＵ）Ｓｌｅｅｐ状態、省電力ではない状態をＡｗａｋｅ状態と記述する。
【００１９】
アプリ１０１、アプリ１０２及びアプリ１０３は携帯電話上で動作するアプリケーションである。これらのアプリケーションは、ＣＰＵ上で稼動し、設定された内容に従って、種々の動作を行うものであり、換言すればＣＰＵとアプリケーションによって、動作部を構成している。
【００２０】
タイマ制御部１０５はアプリケーションや、他制御部からの要求を受けてタイマを起動するための制御部である。要求されたタイマがタイムアウトした時に指定アプリケーションを起動させる役割も果たす。
【００２１】
装置状態監視部１０６は、装置内のさまざまな状態を監視しており、ＣＰＵでなすべき処理がなくなると、省電力制御部１０７にＳｌｅｅｐ状態への遷移を指示する。
【００２２】
Ｓｌｅｅｐ状態からＡｗａｋｅ状態へはハードウェアからの割り込みによって遷移するものとする。
【００２３】
実施の形態１の携帯電話における、省電力制御部１０７の動作フローを図２および図５に従って説明する。図２は、Ｓｌｅｅｐ時のタイマ起動処理を示すフロー図であり装置状態監視部１０６から省電力制御部１０７にＳｌｅｅｐ状態への遷移を指示した時点からの処理を示すものであり、Ｓ２０１からＳ２０５までで構成されている。図５は、Ｓｌｅｅｐ時のタイマ起動処理タイミングを示す説明図である。
【００２４】
Ｓ２０１で、省電力制御部が装置状態監視部からＳｌｅｅｐ状態への遷移指示をうけると、タイマ制御部１０５に対して現在のタイマ状態を問い合わせる。すなわち、現在タイマが起動されているかどうかを問い合わせ、起動されている場合は、各タイマがタイムアウトする時刻を取得する。
【００２５】
Ｓ２０２で、最短でタイムアウトするタイマの時刻（Ｓ５０２）と、現時刻（Ｓ５０１）との差分を比較しこれをＴ１とする（Ｓ５０３）。
【００２６】
Ａｗａｋｅ状態からＳｌｅｅｐ状態への遷移、Ｓｌｅｅｐ状態からＡｗａｋｅ状態への遷移には、ハ−ド条件、ソフト条件によって所定の時間が必要である。Ａｗａｋｅ状態からＳｌｅｅｐ状態への遷移にかかる時間をΔＴ１（Ｓ５０７）とする。Ｓｌｅｅｐ状態からＡｗａｋｅ状態への遷移にかかる時間をΔＴ２（Ｓ５０６）とする。Ｓ２０２で求めたＴ１とこのΔＴ１、ΔＴ２とを比較する。Ｔ１＞（ΔＴ１＋ΔＴ２）の場合、Ｓｌｅｅｐ状態に遷移するがこの時、実際にシステムがＡｗａｋｅ状態になるためにはＴ１＋ΔＴ２後となってしまう。これをＴ１後にＡｗａｋｅ状態にもっていくために、新たにタイマ値Ｔ２＝Ｔ１−ΔＴ２のダミータイマ（Ｓ５０５）を設定する。ダミータイマとは、指定のタイムアウト時刻にタイムアウト処理は行うが、その他に指定の動作を動作部に指示することのないタイマをいう。タイムアウト処理が行なわれると割り込み処理が行なわれるので、システムはΔＴ２後にＡｗａｋｅ状態に移行する。したがって、ダミータイマを設定することによりシステムがＡｗａｋｅ状態となる時間はＴ２＋ΔＴ２＝（Ｔ１−ΔＴ２）＋ΔＴ２＝Ｔとなる。この処理をＳ２０３、Ｓ２０４、Ｓ２０５に示した。
【００２７】
Ｓ２０３においてＴ≦（ΔＴ１＋ΔＴ２）の場合は、タイマの精度面からも、電力面からも、Ｓｌｅｅｐ状態に遷移せずタイマのタイムアウトを待っているほうが有利であるため、Ｓｌｅｅｐ状態へは遷移させない。以上のように、本実施の形態では、起動されているタイマのタイムアウト時刻が到来した時点で、装置が常にＡｗａｋｅ状態になっているため、予約された時刻にタイムアウト処理が正確に実行される。
【００２８】
（実施の形態２）
次に実施の形態２について、図３および図６を用いて説明する。図３は、実施の形態２におけるＳｌｅｅｐ時のタイマ変更手順を示すフロー図である。図３のフロー図は装置状態監視部１０６から省電力制御部１０７にＳｌｅｅｐ状態への遷移を指示した時点からの処理を示すフロー図であり、Ｓ３０１からＳ３１０までで構成されている。図６は、Ｓｌｅｅｐ時のタイマ変更処理タイミングを示す説明図である。本実施の形態も、実施の形態１と同様、本発明を携帯電話に適用したものであり、全体の構成は図１に示す通りである。以下、タイマ変更手順について順次説明する。
【００２９】
まず、Ｓ３０１でタイマの許容誤差Ｔｅ（Ｓ６０１）を決定する。なお、固定の値をTeとして使用してもよいし、使用者が設定したものが記憶されていて、それを読み出して使用する構成としてもよい。
【００３０】
Ｓ３０２で省電力制御部１０７から、タイマ制御部１０５へタイムアウト時間のもっとも近いタイマのタイムアウト時間を問い合わせて取得する。
【００３１】
Ｓ３０３で取得したタイマの時間をＴ１（Ｓ６０２）とする。
【００３２】
次のタイマがある場合、Ｓ３０４で次にタイムアウトするタイマのタイムアウト時間を問い合わせて、Ｓ３０５で取得した時間をＴ２（Ｓ６０３）とする。
【００３３】
（Ｔ１＋Ｔｅ）＞（Ｔ２−Ｔｅ）の場合、当該タイマ同士をまとめてタイムアウトするようにしても、許容誤差範囲内となるため、Ｓ３０６でまとめてタイムアウト処理を行う時刻Tdを、Ｔ１とＴ２を同じ重みで考慮して求める。Ｔ１とＴ２を同じ重みで考慮するのであるから、Ｔｄは許容誤差範囲内の時間帯の中点であり、Ｔｄ＝（Ｔ２−Ｔｅ）＋（（Ｔ１＋Ｔｅ）−（Ｔ２−Ｔｅ））／２＝（Ｔ１＋Ｔ２）／２として求めることができる。たとえば、許容誤差Ｔｅが７分であり、タイマが３個起動されており、それぞれのタイムアウト時刻が１２時１０分、１２時１１分、１２時２０分であるとする。１２時１０分にタイムアウトするタイマの許容誤差内の限界値は１２時１７分であり、１２時２０分にタイムアウトするタイマの許容誤差内の限界値は、１２時１３分であるので、これらのタイマはまとめてタイムアウト処理をすることができる。まとめてタイムアウト処理する時刻Ｔｄは、Ｔｄ＝（１２時１０分＋１２時２０分）／２＝１２時１５分となる。
【００３４】
Ｓ３０７でタイムアウトを変更するタイマを記憶する。
【００３５】
さらに次にタイムアウトするタイマがある場合、Ｓ３０４からＳ３０７を繰り返す。
【００３６】
タイムアウトするタイマが無くなった場合か、次にタイムアウトするタイマが（Ｔ１＋Ｔｅ）＞（Ｔ２−Ｔｅ）を満たさなくなった場合は、Ｓ３０８でタイムアウトを変更するタイマを全てＴｄでタイムアウトするように変更する。
【００３７】
Ｓ３０９でタイムアウト時間Ｔｄ−ΔＴ２のタイマ（Ｓ６０５）を設定する。
【００３８】
Ｓ３１０でＳｌｅｅｐ状態に移行する。
【００３９】
以上のように本実施の形態においては、実施の形態１の効果に加え、設定された許容誤差内のタイマをまとめて処理することにより、効率的なタイムアウト処理を行うことができる。
【００４０】
なお、上記の方法では、まとめてタイムアウト処理を行うタイマが３個以上の場合は、当該まとめて処理するタイマのタイムアウト時刻の中でもっとも、Ｔ１からタイムアウト時刻が遠いタイムアウト時刻がＴ２とされるので、Ｔ１とＴ２のみが考慮されて、まとめて処理するタイムアウト時刻Ｔｄが求められるが、まとめて処理することができるタイムアウト時刻の平均値をＴｄとしてもよい。たとえば、まとめて処理するタイマが３個の場合、それぞれのタイムアウト時刻をＴ１，Ｔ２、Ｔ３として、Ｔｄ＝（Ｔ１＋Ｔ２＋Ｔ３）／３としてＴｄを求める。この方法によれば、まとめてタイムアウト処理するタイマのタイムアウト時刻を同じ重みで考慮することができる。
【００４１】
さらに、それぞれのタイマについて別個の許容誤差が設定されていてもよい。たとえば、タイムアウト時刻がＴ１の許容誤差がＴｅ１であり、タイムアウト時刻がＴ２の許容誤差がＴｅ２であるとする。この場合は、Ｔ１＋Ｔｅ１＞Ｔ２−Ｔｅ２のとき、双方のタイマをまとめてタイムアウト処理をすることになる。
【００４２】
まとめてタイムアウト処理する時刻Ｔｄは、Ｔｄ＝（Ｔ２−Ｔｅ２）＋（（Ｔ１＋Ｔｅ１）−（Ｔ２−Ｔｅ２））／２となる。すなわち、双方の許容誤差が等しいときは、Ｔｄは、Ｔ１とＴ２の平均値となり、Ｔｅ１がＴｅ２より大きいときＴｄはＴ１とＴ２の平均値よりもＴ２側にあり、Ｔｅ２がＴｅ１より大きいときは、Ｔｄは、Ｔ１とＴ２の平均値よりもＴ１側にあることになる。
【００４３】
（実施の形態３）
次に実施の形態３について、図４および図７を用いて説明する。図４は、実施の形態３における他割り込み時のタイマ処理手順を示すフロー図であり、ステップＳ４０２からステップＳ４０８で構成されている。図４に示すフロー図は割り込み制御部１０４で割り込みを検出した時点からの処理である。実施の形態３も実施の形態１および実施２と同様に、本発明を携帯電話に適用したものであり、全体の構成は図１に示す通りである。以下、他割り込み時の処理について説明する。
【００４４】
Ｓ４０２でタイマの許容誤差Ｔｅ（Ｓ７０２）を取得する。
【００４５】
Ｓ４０３でタイマ制御部１０５へタイマが起動されているか問合せを行い、起動されているタイマがある場合、Ｓ４０４でタイマ制御部からタイムアウトの一番近いタイマのタイムアウト時刻Ｔ１（Ｓ７０３）の問合せを行う。
【００４６】
Ｔ１＜Ｔｅの場合、タイムアウトの一番近い処理を実行しても許容誤差範囲内であるので、Ｓ４０５でタイマ制御部１０５へダミータイマとタイムアウトの一番近いタイマの停止を行い、Ｓ４０６でタイムアウトの一番近い処理を実行する。
【００４７】
タイマ制御部に起動中のタイマが無くなくなるか、Ｔ１＜Ｔｅを満たさなくなるまで、Ｓ４０３からＳ４０６を繰り返し行う。
【００４８】
以上のように、本実施の形態においては、タイマ以外の割り込みが発生した場合に、許容誤差の範囲内のタイムアウト処理を併せて行い、また不要なダミータイマを停止することにより、ＣＰＵ資源を効率的に活用することができる。
【００４９】
（実施の形態４）
本実施の形態は、実施の形態２を変形したものであり、タイマに優先度が設定されている場合、タイムアウト処理をまとめて行う複数のタイマのうち、優先度の高いタイマの誤差が少なくなるように、タイムアウト時刻を決めるものである。
【００５０】
図８は、本実施の形態におけるタイムアウト処理時刻の決定の処理を示すフロー図であり、Ｓ８０１からＳ８１１までで構成されている。
【００５１】
個々のタイマがセットされるときには、使用者が優先度を５段階（５がもっとも高で、１がもっとも低）等で設定するとする。たとえば、
タイマ１について、  タイムアウト時刻：１２時１０分  優先度：３
タイマ２について、  タイムアウト時刻：１２時１５分  優先度：２
タイマ３について、  タイムアウト時刻：１２時２０分  優先度：５
のように設定される（以下、設定例１という。）。
【００５２】
この後、装置状態監視部１０６からタイマ制御部１０５にＳｌｅｅｐ状態遷移指示があると、タイマ制御部１０５において図８に示すタイムアウト処理が実行される。まず、ステップＳ８０１においては、タイマの許容誤差をＴｅとする。
【００５３】
次のステップＳ８０３においては、タイマ制御部１０５にタイマ状態の問い合わせが行なわれる。ステップＳ８０３においては、タイムアウトの一番近いタイマのタイムアウト時間がＴ１とされる。そして、ステップＳ８０４においては、起動されているタイマの中から、Ｔ１＋Ｔｅ≧Ｔｊ−Ｔｅとなるタイムアウト時刻Ｔｊを持つすべてのタイマのタイムアウト時刻と優先度が抽出され、その中でもっとも遅いタイムアウト時刻がＴＬとされる。いま、Ｔｅ＝７分とすると、上記設定例１のタイマ１、タイマ２、タイマ３はすべてこの条件を満たすので、それぞれのタイムアウト時刻と優先度が抽出される。
【００５４】
次のステップＳ８０５では、優先度最高のタイマが１個のみか否かが調べられる。１個のみの場合は、ステップＳ８０６に進み、そうでない場合（２個以上の場合）はステップＳ８０７に進む。ステップＳ８０６においては、優先度最高のタイマのタイムアウト時刻を、まとめてタイムアウト処理を行う時刻Ｔｄとする。上記設定例１では、タイマ３の優先度が最高であるので、そのタイムアウト時刻１２時２０分をＴｄとする。ステップＳ８０７においては、最高の優先度を持つタイマのタイムアウト時刻の平均値をＴｄとする。たとえば、Ｔｅは、同じく７分であり、３個のタイマが以下の通り設定されているとする（以下設定例２という。）。
【００５５】
タイマ１  タイムアウト時刻：１２時１０分    優先度３
タイマ２  タイムアウト時刻：１２時１２分    優先度５
タイマ３  タイムアウト時刻：１２時２０分    優先度５
設定例２の場合は、タイマ２とタイマ３の優先度がともに最高の５であるので、タイマ２とタイマ３のタイムアウト時刻の平均値１２時１６分がＴｄとされる。
【００５６】
次の、ステップＳ８０８では、Ｔｄ≦Ｔ１＋Ｔｅかどうかが調べられる、すなわち、Ｔｄがタイムアウトの一番近いタイマのタイムアウト時刻の許容誤差範囲内であるかが調べられる。Ｔｄ≦Ｔ１＋Ｔｅの場合は、そのままＳ８１０に進む。そうでない場合、すなわち、ＴｄがＴ１の許容誤差の範囲より遅い時刻のときは、ステップＳ８０９に進み、Ｔ１＋ＴｅをＴｄとする。次の、ステップＳ８１０では、Ｔｄ≧ＴＬ−Ｔｅかどうかが調べられる。すなわち、Ｔｄがタイムアウト処理をまとめる対象となったタイマのうちもっとも遅いタイムアウト時刻をもつタイマのタイムアウト時刻の許容誤差範囲内であるかどうかが調べられる。Ｔｄ≧ＴＬ−Ｔｅのときは、そのまま処理を終了するが、そうでない場合、すなわち、ＴｄがＴＬの許容誤差範囲より早い時刻のときは、Ｔ２−ＴｅをＴｄとする。
【００５７】
以上のように本実施の形態においては、優先度最高のタイマのタイムアウト時刻（複数あるときはその平均値）を、まとめてタイムアウト処理を行う時刻として採用することを原則とし、許容誤差範囲内の時間帯をはずれる場合のみ、許容誤差範囲内の時間帯の限界値をＴｄとして採用することで、優先度の高いタイマの誤差がなるべく少なくなるようにまとめてタイムアウト処理を行う時刻を決めることができ、使用者が正確にタイムアウトさせることを所望して優先度を高く設定したタイマの誤差をなるべく少なくしたうえで、タイムアウト処理をまとめて行うことにより、効率的なタイムアウト処理を行うことができる。なお、優先度は、使用者が設定するのではなく、タイマによって、起動されるジョブ（アラームを鳴らす、メールを送信する等）の種類によってあらかじめ割り当てられていてもよい。さらに、あらかじめ割り当てられた優先度を、使用者が任意に変更できる構成としてもよい。また、優先度は、５段階とは限らず、順位さえ決まればよく、細かい数値（０から１００の数値等）で設定するようにしてもよいし、高、中、低の３段階等でおおまかに区分するようにしてもよい。
【００５８】
以上、実施の形態１ないし実施の形態４においては携帯電話について実施した場合について説明したが、本発明の適用は携帯電話に限られるものではなく、携帯機器、固定機器を問わず、Ｓｌｅｅｐ状態に移行する機能を持つ電子電気機器に適用することができるのはもちろんである。
【産業上の利用可能性】
【００５９】
本発明にかかる省電力対応装置は、携帯電話などの主として電池で制御する携帯装置として有用である。また、電源を入れておく必要があるが処理を行わない場合があって消費電力を削減したいという効果が必要な固定機器等の用途にも適用できる。
【図面の簡単な説明】
【００６０】
【図１】本発明の省電力対応装置を実施した携帯電話のブロック図
【図２】Ｓｌｅｅｐ時のタイマ起動処理手順を示すフロー図
【図３】Ｓｌｅｅｐ時のタイマ変更処理手順を示すフロー図
【図４】他割り込み時のタイマ処理手順を示すフロー図
【図５】Ｓｌｅｅｐ時のタイマ起動処理タイミングを示す説明図
【図６】Ｓｌｅｅｐ時のタイマ変更処理タイミングを示す説明図
【図７】他割り込み時のタイマ処理タイミングを示す説明図
【図８】タイムアウト処理時刻の決定の処理を示すフロー図
【符号の説明】
【００６１】
１０１〜１０３    アプリ
１０４    割り込み制御部
１０５    タイマ制御部
１０６    装置状態監視部
１０７    省電力制御部
【図１】
2006072698.tif 000003
【図２】
2006072698.tif 000004
【図３】
2006072698.tif 000005
【図４】
2006072698.tif 000006
【図５】
2006072698.tif 000007
【図６】
2006072698.tif 000008
【図７】
2006072698.tif 000009
【図８】
2006072698.tif 000010