(57)【要約】【課題】情報処理装置の状態が遷移するときに実行される処理による負荷のピークを小さくすること。【解決手段】情報処理装置は、第１の予定時刻（Ｔｄ１及びＴｄ２）を挟まずに連続する第２の予定時刻Ｔａ１、Ｔｂ１、Ｔｃ１及び分散条件に基づいて第３の予定時刻Ｔｅ１を決定する。第３の予定時刻は、自装置を第１及び第２の処理を実行する実行状態に遷移させる第３の処理の実行を予定する時刻である。情報処理装置は、第２の予定時刻になったときに自装置が実行状態でなければ、次に実行状態に遷移したときに第２の処理を実行する。情報処理装置は、指定時刻ｔ３になったときに第３の処理を実行し、自装置を実行状態に遷移させることで第２の処理Ａ及びＣを実行する。これにより、第１の予定時刻Ｔｄ２に集中して実行される予定であった処理が、第３の予定時刻Ｔｅ１と第１の予定時刻Ｔｄ２とに分散して実行される。【選択図】図９
2014021628.tif 000002
【特許請求の範囲】
【請求項１】
第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、
前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段と、
前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定手段と、
前記記憶手段に記憶されている第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶されている第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定手段により決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記決定手段は、前記集合に含まれる前記第２の予定時刻の数が閾値よりも多い場合に充足されるものを前記条件として、前記第３の予定時刻を決定する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記決定手段は、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻のうち、通信を行う前記第２の処理の実行を予定するものの集合が前記条件を充足しない場合に、当該集合に基づいて前記第３の予定時刻を決定する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記実行手段により前記第２の処理が実行された際の当該第２の処理による通信の履歴を蓄積する蓄積手段を備え、
前記決定手段は、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻のうち、前記蓄積手段に通信の履歴が蓄積されている前記第２の処理の実行を予定するものの集合が前記条件を充足しない場合に、当該集合に基づいて前記第３の予定時刻を決定する
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項５】
前記決定手段により決定された第３の予定時刻になるよりも前に前記遷移手段により前記遷移が行われた場合に当該第３の予定時刻を取り消す取消手段を備え、
前記実行手段は、前記取消手段により前記第３の予定時刻が取り消された場合、当該第３の予定時刻になっても前記第３の処理を実行しない
ことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記決定手段は、複数の前記第２の処理が各々の周期で実行される場合に、当該周期の最大公約数の整数倍となる時間の間隔で訪れる時刻を前記第３の予定時刻として決定する
ことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
前記決定手段は、複数の前記第２の処理が各々の周期で実行される場合に、当該周期の公倍数となる時間の間隔で訪れる時刻を前記第３の予定時刻として決定する
ことを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項８】
前記決定手段により決定された第３の予定時刻から始まる所定の期間に前記第２の処理の実行が予定されている場合には、当該第２の処理の実行が予定されている時刻に前記第３の予定時刻を変更する第１変更手段を備える
ことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項９】
前記決定手段により決定された第３の予定時刻から始まる所定の期間に含まれる時刻から乱数に基づいて選出した時刻、または、当該期間に含まれ、且つ、自装置が起動した時刻を起点として所定の時間の間隔で訪れる時刻に前記第３の予定時刻を変更する第２変更手段を備える
ことを特徴とする請求項１乃至７のいずれか１項に記載の情報処理装置。
【請求項１０】
外部装置と通信する通信手段を備え、
前記決定手段は、前記通信手段を介した通信による前記外部装置からの指示に基づいて、前記条件を変更する
ことを特徴とする請求項１乃至９のいずれか１項に記載の情報処理装置。
【請求項１１】
第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段とを備える情報処理装置が、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定ステップと、
前記情報処理装置が、前記記憶手段に記憶される第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶される第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定ステップにおいて決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行ステップと
を備えることを特徴とする情報処理方法。
【請求項１２】
第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段とを備える情報処理装置のコンピュータに、
前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定ステップと、
前記記憶手段に記憶される第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶される第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定ステップにおいて決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行ステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理の実行を予定する時刻を決定するための技術に関する。
【背景技術】
【０００２】
情報処理装置において、処理の実行を予定する時刻を予め決定しておき、その時刻になったときに処理を実行する技術がある。特許文献１には、周期的に行われる複数の処理がある場合、他の処理が実行される時刻との最小時間差が最大になるように指定した時刻に処理を実行する技術が記載されている。特許文献２には、タイムアウト時刻が指定されていても、省電力状態の間は処理の実行を保留し、省電力状態から通常状態への復帰時に処理を実行する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１１−５２９２３９号公報
【特許文献２】特開２０１２−３６９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献２の技術のように、処理の実行を保留して、自装置の状態が遷移するタイミング（この技術の場合省電力状態から通常状態へ復帰するタイミング）にその処理を実行する場合、そのタイミングに実行を保留された処理が集中して実行されることになり、情報処理装置の処理の負荷の最大値（つまりピーク）が大きくなってしまう。
そこで、本発明は、情報処理装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることを目的とする。
【課題を解決するための手段】
【０００５】
上記課題を達成するために、本発明は、第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段と、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定手段と、前記記憶手段に記憶されている第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶されている第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定手段により決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行手段とを備えることを特徴とする情報処理装置を提供する。
【０００６】
また、前記決定手段は、前記集合に含まれる前記第２の予定時刻の数が閾値よりも多い場合に充足されるものを前記条件として、前記第３の予定時刻を決定してもよい。
さらに、前記決定手段は、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻のうち、通信を行う前記第２の処理の実行を予定するものの集合が前記条件を充足しない場合に、当該集合に基づいて前記第３の予定時刻を決定してもよい。
【０００７】
また、前記実行手段により前記第２の処理が実行された際の当該第２の処理による通信の履歴を蓄積する蓄積手段を備え、前記決定手段は、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻のうち、前記蓄積手段に通信の履歴が蓄積されている前記第２の処理の実行を予定するものの集合が前記条件を充足しない場合に、当該集合に基づいて前記第３の予定時刻を決定してもよい。
さらに、前記決定手段により決定された第３の予定時刻になるよりも前に前記遷移手段により前記遷移が行われた場合に当該第３の予定時刻を取り消す取消手段を備え、前記実行手段は、前記取消手段により前記第３の予定時刻が取り消された場合、当該第３の予定時刻になっても前記第３の処理を実行しないようにしてもよい。
【０００８】
また、前記決定手段は、複数の前記第２の処理が各々の周期で実行される場合に、当該周期の最大公約数の整数倍となる時間の間隔で訪れる時刻を前記第３の予定時刻として決定してもよい。
さらに、前記決定手段は、複数の前記第２の処理が各々の周期で実行される場合に、当該周期の公倍数となる時間の間隔で訪れる時刻を前記第３の予定時刻として決定してもよい。
【０００９】
また、前記決定手段により決定された第３の予定時刻から始まる所定の期間に前記第２の処理の実行が予定されている場合には、当該第２の処理の実行が予定されている時刻に前記第３の予定時刻を変更する第１変更手段を備えていてもよい。
さらに、前記決定手段により決定された第３の予定時刻から始まる所定の期間に含まれる時刻から乱数に基づいて選出した時刻、または、当該期間に含まれ、且つ、自装置が起動した時刻を起点として所定の時間の間隔で訪れる時刻に前記第３の予定時刻を変更する第２変更手段を備えていてもよい。
また、外部装置と通信する通信手段を備え、前記決定手段は、前記通信手段を介した通信による前記外部装置からの指示に基づいて、前記条件を変更してもよい。
【００１０】
本発明は、第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段とを備える情報処理装置が、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定ステップと、前記情報処理装置が、前記記憶手段に記憶される第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶される第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定ステップにおいて決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行ステップとを備えることを特徴とする情報処理方法を提供する。
【００１１】
本発明は、第１の処理の実行が予定されている第１の予定時刻と、第２の処理の実行が予定されている複数の第２の予定時刻とを記憶する記憶手段と、前記第１及び前記第２の処理が実行されない非実行状態から当該第１及び当該第２の処理が実行され得る実行状態に自装置の状態を遷移させる遷移手段とを備える情報処理装置のコンピュータに、前記第１の予定時刻を挟まずに連続する前記第２の予定時刻の集合が所定の条件を充足する場合に、当該集合に含まれる前記第２の予定時刻のうち或る時刻から前の当該第２の予定時刻の集合が前記条件を充足しないときの当該或る時刻を、前記遷移手段に前記遷移を行わせる第３の処理の実行を予定する第３の予定時刻として決定する決定ステップと、前記記憶手段に記憶される第１の予定時刻になったときに自装置が前記非実行状態である場合には、前記遷移手段に前記遷移を行わせてから前記第１の処理を実行し、前記記憶手段に記憶される第２の予定時刻になったときに自装置が前記非実行状態である場合には、次に前記遷移手段に前記遷移を行わせたときに前記第２の処理を実行し、前記決定ステップにおいて決定された第３の予定時刻になったときに自装置が前記非実行状態である場合には、前記第３の処理を実行する実行ステップとを実行させるためのプログラムを提供する。
【発明の効果】
【００１２】
本発明によれば、情報処理装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。
【図面の簡単な説明】
【００１３】
【図１】情報処理システムの全体構成を示す図である。
【図２】情報処理装置のハードウェア構成を示すブロック図である。
【図３】情報処理装置が実現する機能構成を示すブロック図である。
【図４】予定時刻として記憶されている指定時刻の一例を示す図である。
【図５】第１の実行処理で行われる動作の一例を示すフローチャートである。
【図６】第２の実行処理で行われる動作の一例を示すフローチャートである。
【図７】第３の実行処理で行われる動作の一例を示すフローチャートである。
【図８】分散処理で行われる動作の一例を示すフローチャートである。
【図９】各予定時刻処理が実行されるタイミングを説明するための図である。
【図１０】分散処理が実行されるタイミングを説明するための図である。
【図１１】変形例１における機能構成を示すブロック図である。
【図１２】変形例４における機能構成を示すブロック図である。
【図１３】変形例７で決定される第３の予定時刻を説明するための図である。
【図１４】変形例８で決定される第３の予定時刻を説明するための図である。
【図１５】変形例９における機能構成を示すブロック図である。
【図１６】変形例９で決定される第３の予定時刻を説明するための図である。
【図１７】変形例１４における機能構成を示すブロック図である。
【図１８】変形例１４で決定される第３の予定時刻を説明するための図である。
【図１９】変形例１５における機能構成を示すブロック図である。
【図２０】サーバ装置のハードウェア構成を示すブロック図である。
【図２１】サーバ装置が実現する機能構成を示すブロック図である。
【発明を実施するための形態】
【００１４】
［実施形態］
以下、本発明の実施形態における情報処理システムについて説明する。
［構成］
図１は、情報処理システム１の全体構成を示す図である。情報処理システム１は、情報処理装置１０と、ネットワーク２と、サーバ装置２０とを具備する。
情報処理装置１０は、ＣＰＵ（Central Processing Unit）を備えて情報を処理する装置である。情報処理装置１０は、移動体通信や無線ＬＡＮの規格などに基づいて無線通信を行う。ネットワーク２は、移動体通信網及びインターネット等を含む通信回線である。ネットワーク２には、サーバ装置２０が接続されており、また、情報処理装置１０が無線通信を行っているときにはその情報処理装置１０も接続される。サーバ装置２０は、ネットワーク２を介して、情報処理装置１０と通信を行う装置である。
【００１５】
図２は、情報処理装置１０のハードウェア構成を示すブロック図である。情報処理装置１０は、制御装置１１と、音声入出力装置１２と、通信装置１３と、操作装置１４と、表示装置１５と、記憶装置１６とを備える。
制御装置１１は、ＣＰＵ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）を有するマイクロプロセッサとリアルタイムクロックとを備えている。ＣＰＵは、ＲＡＭをワークエリアとして用いてＲＯＭや記憶装置１６に記憶されたプログラムを実行することによって、情報処理装置１０が備える各装置の動作を制御する。このように、制御装置１１は、情報処理装置１０を制御するコンピュータである。リアルタイムクロックは、現在の日時を算出する機能を有している。音声入出力装置１２は、スピーカ、マイクロホン及び音声処理回路等を有し、通話などの音声の入出力を行う。
【００１６】
通信装置１３は、信号の発信及び受信を行うアンテナと、移動体通信及び無線ＬＡＮの規格に基づいて無線通信を行うための通信回路とを備え、ネットワーク２を介してサーバ装置２０と通信を行う通信手段である。通信装置１３は、制御装置１１とデータをやり取りし、制御装置１１は、通信装置１３を介してサーバ装置２０とデータをやり取りする。操作装置１４は、例えば表示装置１５に重ねて設けられたタッチスクリーンと物理キーとを有し、ユーザの操作に応じた操作信号を制御装置１１に供給する。制御装置１１は、この操作信号に応じた処理を行う。表示装置１５は、表示面を有するＬＣＤ（Liquid Crystal Display）などの表示手段であり、制御装置１１からの指示に応じて、記憶装置１６に記憶されているデータが示す画像などを表示面に表示する。
【００１７】
記憶装置１６は、例えばＥＥＰＲＯＭ（Electronically Erasable and Programmable ROM）やフラッシュメモリなどの記憶手段であり、制御装置１１が制御に用いるデータやプログラムなどを記憶している。また、記憶装置１６は、情報処理装置１０において用いられる閾値などの定められた数値を示すデータを記憶している。
なお、記憶装置１６は、リムーバブルメディア等の着脱可能な記憶手段を含んでもよいし、ＵＩＭ（User Identity Module）カードやＳＩＭ（Subscriber Identity Module）カードのような、ユーザ（又は情報処理装置１０）を識別するためのデータが記録された記憶手段を含んでもよい。また、このユーザ（又は情報処理装置１０）を識別するためのデータが外部サーバに記憶されていて、情報処理装置１０がこれを通信により取得する構成であってもよい。
【００１８】
以上の構成を有する情報処理装置１０は、例えばスマートフォンであるが、携帯電話端末やタブレット端末、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistant）等の、複数のプログラムを実行する情報処理装置であればよい。また情報処理装置１０は、上記構成以外にも、所定時間継続してユーザの操作が行われなかった場合に省電力モードに移行する機能を実現するための構成等、汎用のスマートフォンと同等の構成を有している。情報処理装置１０が省電力モードであるときには、表示装置１５の表示領域は消灯された状態となるが、その状態においても制御装置１１は処理を実行する稼働状態であってもよい。また、情報処理装置１０は、バイブレータや情報処理装置１０の傾きを検出するための加速度センサなどを備えてもよい。
【００１９】
情報処理装置１０は、上述したハードウェア構成に基づき、例えば、決められた時間の間隔で（つまり定期的に）サーバ装置２０と通信を行って所定の情報を取得する処理や、１日のうちの決められた時刻に所定の計算を行ってその結果を蓄積する処理などを実行する。これらの処理は、予め予定された時刻（すなわち、決められた時間の間隔で訪れる時刻や１日のうちの決められた時刻のことであり、以下では「予定時刻」という。）となったときに情報処理装置１０によって実行される処理であり、以下では「予定時刻処理」という。
【００２０】
情報処理装置１０は、予定時刻になったとき、自装置が所定の状態となっている場合に予定時刻処理を実行する。その所定の状態とは、制御装置１１がいかなる処理をも実行し得る状態のことであり、以下ではこの状態を「実行状態」という。つまり、実行状態は、予定時刻処理が実行され得る状態である。一方、情報処理装置１０は、制御装置１１が実行する処理を制限する状態となることがある。この状態では予定時刻処理も実行されないようになっており、以下ではこの状態を「非実行状態」という。非実行状態とは、本実施形態においては、情報処理装置１０が、消費する電力を少なくするため、実行する処理を制限している状態（いわゆる省電力状態）のことである。つまり、情報処理装置１０は、非実行状態である期間に比べて実行状態である期間の方が消費する電力が多くなる。非実行状態では、制御装置１１は、自装置を非実行状態から実行状態に遷移させるための処理と、その他決められた最低限の処理以外は実行しない。以下では、非実行状態から実行状態に遷移させることを「実行状態遷移」といい、実行状態遷移のための理を「遷移処理」という。
【００２１】
情報処理装置１０は、予定時刻になったときに自装置が非実行状態となっている場合、２通りの方法で予定時刻処理を実行する。１つ目の方法として、情報処理装置１０は、実行状態遷移を行ってから予定時刻処理を実行する。２つ目の方法として、情報処理装置１０は、自装置が次に実行状態遷移を行ったときに予定時刻処理を実行する。情報処理装置１０においては、実行される予定時刻処理毎に、これら２つの方法のうちのどちらの方法で実行されるかということが予め決められている。以下では、１つ目の方法で実行される予定時刻処理のことを「第１の処理」といい、２つ目の方法で実行される予定時刻処理のことを「第２の処理」という。また、第１の処理の実行が予定されている予定時刻のことを「第１の予定時刻」といい、第２の処理の実行が予定されている予定時刻のことを「第２の予定時刻」という。
【００２２】
情報処理装置１０においては、第１の予定時刻に実行状態遷移が行われることで、それまで実行されていなかった第２の処理が集中して実行されることになる。情報処理装置１０は、そのように集中して実行される第２の処理を分散させるための処理（以下「分散処理」という。）を行う。情報処理装置１０は、この分散処理と、上述した各予定時刻処理及び遷移処理とをそれぞれ実行するための複数のプログラムを記憶装置１６に記憶している。制御装置１１がこれらのプログラムを実行して図２に示す各装置を制御することで、図３に示す機能が実現される。
【００２３】
図３は、情報処理装置１０が実現する機能構成を示すブロック図である。情報処理装置１０は、記憶部１０１と、遷移部１０２と、決定部１０３と、実行部１０４とを備える。
記憶部１０１は、前述した第１の予定時刻（すなわち第１の処理の実行が予定されている時刻）及び第２の予定時刻（すなわち第２の処理の実行が予定されている時刻）を記憶する記憶手段である。記憶部１０１は、例えば、制御装置１１、操作装置１４及び記憶装置１６が協働して実現する機能である。記憶部１０１は、具体的には、次の方法でこれらの予定時刻を記憶する。
【００２４】
制御装置１１には、ユーザにより操作された操作装置１４から操作信号が供給される。制御装置１１は、この操作信号に基づき、例えば上述したサーバ装置２０から所定の情報を取得する予定時刻処理における決められた時間の間隔（すなわち周期）及び最初にその処理を実行する時刻（以下「開始時刻」という。）を設定する。制御装置１１は、このように設定した周期及び開始時刻に基づいて、この予定時刻処理の予定時刻として指定する時刻（以下「指定時刻」という。）を所定の期間分（例えば１ヶ月分）だけ算出する。記憶装置１６には、各予定時刻処理を識別する情報（以下「処理識別情報」という。例えばその予定時刻処理に対応付けられた符号。）と第１及び第２の処理をそれぞれ示す２種類のフラグ（例えば「１」及び「２」という値。）とを対応付けたテーブルが予め記憶されている。制御装置１１は、このテーブルに基づき、指定時刻を算出した予定時刻処理が第１及び第２の処理のどちらに対応付けられているかを判断し、判断した方の予定時刻としてその指定時刻を記憶装置１６に記憶させる。制御装置１１は、以上のように予定時刻を記憶させる動作を、所定の時間（例えば１日）の間隔で繰り返し実行する。制御装置１１は、他の予定時刻処理についても上記と同様に算出した指定時刻を第１の予定時刻または第２の予定時刻として記憶装置１６に記憶させる。
【００２５】
なお、上述した周期及び開始時刻は、ユーザの操作によって設定するものに限らず、予定時刻処理のプログラムのパラメータとして予めＲＯＭまたは記憶装置１６に記憶されているものが用いられてもよい。また、制御装置１１は、周期及び開始時刻に基づいて算出した予定時刻を記憶装置１６に記憶させるのではなく、ユーザの操作により供給される操作信号が予定時刻自体を表す場合に、その予定時刻を記憶させたり、通信装置１３を介して送信されてくるデータが示す予定時刻を記憶させたりしてもよい（この場合の記憶部１０１は、上記各装置に加えて通信装置１３も協働して実現する機能となる）。これらの場合に記憶される予定時刻は、所定の周期で訪れる時刻に限らず、不定期に訪れる時刻や、ある時期（例えば平日または休日）にだけ訪れる時刻、１度だけ訪れる時刻などであってもよい。
【００２６】
以上のとおり、記憶部１０１は、第１及び第２の予定時刻を記憶する。記憶部１０１が記憶するこれらの予定時刻は、具体的には前述した指定時刻である。この指定時刻は、その時刻となるまでは予定時刻であるが、その時刻が過ぎると予定時刻ではなくなる。記憶部１０１は、決定部１０３及び実行部１０４から要求されると、記憶している第１及び第２の予定時刻をこれらの各部に通知する。このとき通知される予定時刻は、記憶装置１６に記憶されている指定時刻のうち、現在時刻以降の指定時刻である。
【００２７】
遷移部１０２は、上述した実行状態遷移を行う遷移手段である。詳細には、遷移部１０２は、非実行状態、すなわち第１及び第２の処理が実行されない状態から実行状態、すなわち第１及び第２の処理が実行される状態に自装置の状態を遷移させる。つまり、遷移部１０２は、上述した遷移処理を行うものであり、制御装置１１が図２に示す各装置を制御することで実現される機能である。遷移部１０２は、具体的には、次の方法で自装置の状態を遷移させる。
制御装置１１は、非実行状態（本実施形態では省電力状態のこと）では、表示装置１５が画像を表示しないように制御し、記憶装置１６、音声入出力装置１２及び通信装置１３がそれぞれ動作しないように制御する。また、制御装置１１は、操作装置１４が備える操作子のうち、一部の操作子（例えば所定のキー）を除く操作子が操作されても、例えばタッチセンサに電力を供給しないようにして、その操作を受け付けないように制御する。
【００２８】
制御装置１１は、このように各部を制御している状態（つまり非実行状態）から、遷移処理を実行して、表示装置１５に画像を表示させ、且つ、例えばタッチセンサに電力を供給するようにして、操作装置１４のいずれの操作子が操作されてもその操作を受け付けるようにする。また、制御装置１１は、操作装置１４が操作されたり、予定時刻になったりした場合には、各部を制御して、その操作により供給される操作信号に応じた処理またはその予定時刻に応じた予定時刻処理を実行する。以上のとおり、遷移部１０２は、自装置の状態を遷移させる。遷移部１０２は、例えば、操作装置１４が備える操作子のうち、前述した一部の操作子が操作された場合に、その操作により操作装置１４から供給される操作信号に応じて遷移処理を実行する。
【００２９】
決定部１０３は、第３の処理の実行が予定されている第３の予定時刻を決定する決定手段である。第３の処理とは、予定時刻処理の１つであり、具体的には、遷移部１０２に前述した遷移を行わせる処理である。決定部１０３は、制御装置１１及び記憶装置１６が協働して実現する機能であり、詳細には次の方法で第３の予定時刻を決定する。
制御装置１１は、記憶部１０１に要求し、記憶されている指定時刻のうち、現在時刻よりもあとのものを第１及び第２の予定時刻として取得する。制御装置１１は、取得した複数の第２の予定時刻から、所定の抽出条件を充足する第２の予定時刻の集合を抽出する。本実施形態においては、第１の予定時刻を挟まずに連続する第２の予定時刻の集合であることと、そのような集合が複数ある場合には現在時刻に最も近い集合であることとが抽出条件として定められている。この場合、制御装置１１は、次に訪れる第１の予定時刻を特定し、特定した第１の予定時刻よりも早い第２の予定時刻を抽出する。これにより、抽出条件を充足する第２の予定時刻の集合が抽出されることになる。
【００３０】
制御装置１１は、抽出した第２の予定時刻の集合が所定の条件を充足するか否かを判断する。この条件は、後述するように第２の処理が実行される時刻を分散させるための条件であり、以下では「分散条件」という。分散条件は、本発明に係る所定の条件の一例である。本実施形態においては、集合に含まれる第２の予定時刻の数が閾値（以下「分散閾値」という。）よりも多いことが分散条件として定められている。制御装置１１は、抽出した集合が分散条件を充足する場合に、その集合に含まれる第２の予定時刻のうち或る時刻から前の第２の予定時刻の集合が分散条件を充足しないときの前述した或る時刻（以下「非充足時刻」という。）を、第３の予定時刻として決定する。以上のようにして、決定部１０３は、第３の予定時刻を決定する。この決定の方法について、図を参照しながら説明する。
【００３１】
図４は、予定時刻として記憶されている指定時刻の一例を示す図である。この図に示す「指定時刻」である「ｔ１」、「ｔ２」、「ｔ３」、「ｔ４」及び「ｔ５」は、番号が大きいほど未来の時刻を示している。この例では、「第２の処理Ａ」の第２の予定時刻Ｔａ１として指定時刻ｔ２が記憶され、「第２の処理Ｂ」の第２の予定時刻Ｔｂ１として指定時刻ｔ４が記憶されている。また、「第２の処理Ｃ」の第２の予定時刻Ｔｃ１として指定時刻ｔ３が記憶され、「第１の処理Ｄ」の第１の予定時刻Ｔｄ１及びＴｄ２として指定時刻ｔ１及びｔ５がそれぞれ記憶されている。図４（ａ）に示すＡ１は、現在時刻がｔ１である場合に決定部１０３が抽出する集合を示している。決定部１０３は、第１の予定時刻を挟まずに連続する第２の予定時刻Ｔａ１、Ｔｃ１及びＴｂ１の集合Ａ１を、上記の抽出条件を充足する集合として抽出する。指定時刻ｔ５以降にも、第１の予定時刻を挟まずに連続する第２の予定時刻の集合は存在するが、本実施形態では、現在時刻に最も近い集合である集合Ａ１が抽出される。
【００３２】
この例では、分散閾値が２であるものとする。決定部１０３は、集合Ａ１に含まれる第２の予定時刻の数（この場合は３）が分散閾値（同じく２）よりも多いため、分散条件が充足されていると判断する。決定部１０３は、非充足時刻の候補として、或る時刻を選出する。決定部１０３は、例えば、Ａ１に含まれる第２の予定時刻のうち最も早いもの（この場合Ｔａ１）から最も遅いもの（この場合Ｔｂ１）までの期間内の時刻から或る時刻を選出する。例えば、決定部１０３は、時刻ｔ３を選出する。決定部１０３は、集合Ａ１に含まれる第２の予定時刻のうち、選出した時刻ｔ３から前の第２の予定時刻であるＴａ１及びＴｃ１の集合Ａ１１が分散条件を充足するか否かを判断する。この場合、集合Ａ１１に含まれる第２の予定時刻の数（この場合は２）が分散閾値（同じく２）以下であるため、決定部１０３は、分散条件が充足されていないと判断する。この例では、時刻ｔ１（つまり現在時刻）よりもあとで時刻ｔ４よりも前の時刻であれば、このように分散条件が充足されていない時刻、すなわち非充足時刻として判断されることになる。本実施形態では、決定部１０３は、それらの非充足時刻のうち、最も後の（最も未来の）第２の予定時刻と一致するものを、第３の予定時刻として決定する。この場合は、決定部１０３は、第２の予定時刻Ｔｃ１として記憶されている指定時刻ｔ３を、第３の予定時刻Ｔｅ１として決定する。決定部１０３は、このようにして決定した第３の予定時刻を記憶部１０１に通知して記憶させる。これにより、記憶部１０１は、第１及び第２の予定時刻に加え、第３の予定時刻も記憶する。
【００３３】
実行部１０４は、記憶部１０１に要求して通知された第１、第２及び第３の予定時刻に基づいて、上述した第１、第２及び第３の処理をそれぞれ実行する実行手段である。実行部１０４は、記憶部１０１に記憶されている第１の予定時刻になったときに自装置が非実行状態である場合には、遷移部１０２に前述した遷移を行わせてから第１の処理を実行する。また、実行部１０４は、記憶部１０１に記憶されている第２の予定時刻になったときに自装置が非実行状態である場合には、その時点では第２の処理を実行せずに、次に遷移部１０２に前述した遷移を行わせたときに第２の処理を実行する。また、実行部１０４は、記憶部１０１に記憶されている第３の予定時刻になったときに自装置が非実行状態である場合には、遷移部１０２に前述した遷移を行わせるという第３の処理を実行する。実行部１０４は、制御装置１１が図２に示す各装置を制御することで実現される機能である。実行部１０４は、具体的には、次の方法で各処理を実行する。
【００３４】
制御装置１１は、第１及び第２の処理を実行する場合、記憶装置１６に記憶されているそれらの予定時刻処理を実行するためのプログラムを実行し、それらのプログラムに応じた各部を制御する。例えば、制御装置１１は、サーバ装置２０と通信を行って所定の情報を取得する上述した処理を実行する場合は、通信装置１３を制御してサーバ装置２０と通信を行い、記憶装置１６を制御して取得した情報を記憶させる。また、制御装置１１は、所定の計算を行ってその結果を蓄積する上述した処理を行う場合は、記憶装置１６に記憶されているその計算に必要な値を参照し、参照した値を用いて計算した結果を記憶装置１６に記憶させることでその結果を蓄積する。
【００３５】
記憶装置１６には、第３の処理を実行するためのプログラムも記憶されている。制御装置１１は、第３の予定時刻になったときに、記憶装置１６に記憶されているこのプログラムを実行し、自装置が非実行状態であるか否かを判断する。制御装置１１は、ここで非実行状態であるという判断をした場合に、遷移部１０２に前述した遷移を行わせる第３の処理を実行する。以上のとおり、実行部１０４は、第１、第２及び第３の処理をそれぞれ実行する。実行部１０４は、第１及び第２の処理を実行し終えたときに、その旨を決定部１０３に通知する。
【００３６】
［動作］
以上の構成に基づき、情報処理装置１０は、第１の処理を実行するための第１の実行処理と、第２の処理を実行するための第２の実行処理と、第３の処理を実行するための第３の実行処理と、上述した分散処理とを行う。これらの処理は、情報処理装置１０の電源が投入され、第１の処理、第２の処理、第３の処理及び分散処理を実行するためのプログラムの制御装置１１による実行が開始されて以降、それぞれ並行して繰り返し行われる。以下、図５から図８を参照して、これらの処理において情報処理装置１０が行う動作について説明する。
【００３７】
図５は、第１の実行処理で情報処理装置１０が行う動作の一例を示すフローチャートである。まず、情報処理装置１０は、現在時刻が第１の予定時刻になったか否かを判断する（ステップＳ１１）。情報処理装置１０は、第１の予定時刻になっていないと判断した場合には（ステップＳ１１：ＮＯ）、所定の時間（例えば０．１秒）が経過したあとにステップＳ１１の動作を再び行う。なお、情報処理装置１０は、この所定の時間が経過するとタイムアウトするタイマーを用いて、このタイマーがタイムアウトする度にステップＳ１１の動作を行ってもよい。情報処理装置１０は、第１の予定時刻になったと判断した場合には（ステップＳ１１：ＹＥＳ）、自装置が非実行状態であるか否かを判断する（ステップＳ１２）。情報処理装置１０は、ステップＳ１２において非実行状態である（ＹＥＳ）と判断した場合、自装置を実行状態に遷移させてから（ステップＳ１３）、第１の処理を実行する（ステップＳ１４）。一方、情報処理装置１０は、ステップＳ１２において非実行状態ではない（ＮＯ）と判断した場合、すなわち、自装置が実行状態であると判断した場合には、ステップＳ１４に進んで第１の処理を実行する。ステップＳ１１からＳ１４までは、図３に示す遷移部１０２及び実行部１０４が行う動作である。情報処理装置１０は、第１の処理を実行すると、第１の実行処理を終了する。
【００３８】
図６は、第２の実行処理で情報処理装置１０が行う動作の一例を示すフローチャートである。まず、情報処理装置１０は、現在時刻が第２の予定時刻になったか否かを判断する（ステップＳ２１）。情報処理装置１０は、第２の予定時刻になっていないと判断した場合には（ステップＳ２１：ＮＯ）、所定の時間（例えば０．１秒）が経過したあとにステップＳ２１の動作を再び行う。なお、情報処理装置１０は、図５に示すステップＳ１１と同様に、この所定の時間が経過するとタイムアウトするタイマーを用いて、このタイマーがタイムアウトする度にステップＳ２１の動作を行ってもよい。情報処理装置１０は、第２の予定時刻になったと判断した場合には（ステップＳ２１：ＹＥＳ）、自装置が実行状態であるか否かを判断する（ステップＳ２２）。情報処理装置１０は、ステップＳ２２において実行状態でない（ＮＯ）と判断した場合は、所定の時間（例えば０．１秒）が経過したあとにステップＳ２２の動作を再び行う。情報処理装置１０は、こうして自装置が実行状態になるまで、ステップＳ２２の動作を繰り返し行う。情報処理装置１０は、ステップＳ２２において実行状態である（ＹＥＳ）と判断した場合は、第２の処理を実行し（ステップＳ２２）、第２の実行処理を終了する。ステップＳ２１、Ｓ２２及びＳ２３は、実行部１０４が行う動作である。
【００３９】
図７は、第３の実行処理で情報処理装置１０が行う動作の一例を示すフローチャートである。情報処理装置１０は、ステップＳ３１、Ｓ３２及びＳ３３の動作を、図５に示すステップＳ１１、Ｓ１２及びＳ１３と同様に、第１の予定時刻を第３の予定時刻に代えて行う。情報処理装置１０は、ステップＳ３２において自装置が非実行状態でない（ＮＯ）と判断した場合、そのまま第３の実行処理を終了する。また、情報処理装置１０は、ステップＳ３３において自装置を実行状態に遷移したあと、すなわち、第３の処理を実行したあとも、第３の実行処理を終了する。ステップＳ３１、Ｓ３２及びＳ３３は、遷移部１０２及び実行部１０４が行う動作である。
【００４０】
図８は、分散処理で情報処理装置１０が行う動作の一例を示すフローチャートである。情報処理装置１０は、分散処理を、予定時刻処理を実行し終わったときに行い、複数の予定時刻処理を集中して実行している場合は、最後の予定時刻処理を実行し終わったときに分散処理を行う。まず、情報処理装置１０は、自装置が記憶している指定時刻のうち、現在時刻以降の指定時刻、すなわち、第１及び第２の予定時刻を取得する（ステップＳ４１）。次に、情報処理装置１０は、取得した第１の予定時刻の中から、次に訪れる第１の予定時刻を特定し（ステップＳ４２）、特定した第１の予定時刻よりも前に連続する第２の予定時刻の集合を抽出する（ステップＳ４３）。続いて、情報処理装置１０は、抽出した第２の予定時刻の集合が上述した分散条件を充足するか否かを判断する（ステップＳ４４）。本実施形態では、情報処理装置１０は、抽出した集合に含まれる第２の予定時刻の数が所定の数（例えば１つ）を超えているか否かを、分散条件として判断する。情報処理装置１０は、ステップＳ４４において超えている（ＹＥＳ）と判断した場合、第３の予定時刻を決定する（ステップＳ４５）。一方、情報処理装置１０は、ステップＳ４４において超えていない（ＮＯ）と判断した場合、第３の予定時刻を決定せずに、分散処理を終了する。ステップＳ４１からＳ４５までは、図３に示す決定部１０３が行う動作である。つまり、分散処理は、決定部１０３により実行される処理であり、決定部１０３は、実行部１０４が予定時刻処理（第１及び第２の処理）を実行し終えたときにこの分散処理を実行する。
【００４１】
情報処理装置１０が上記の第１の処理、第２の処理、第３の処理及び分散処理を実行した場合に各処理が実行されるタイミングについて説明する。
図９は、各予定時刻処理が実行されるタイミングを説明するための図である。図９では、図４に示す各予定時刻が記憶されている場合を例に説明する。第１及び第２の処理を行い、第３の処理を行わない情報処理装置（これを従来装置という。）は、各予定時刻処理を図９（ａ）に示すように実行する。従来装置は、第１の予定時刻Ｔｄ１（すなわち指定時刻ｔ１）になった場合に、自装置を実行状態に遷移させ、第１の処理Ｄを実行する。図９の例では、情報処理装置が実行状態となっている期間（以下「実行状態期間」という。）であるＪ１及びＪ２を矢印で示している。実行状態期間Ｊ１は、指定時刻ｔ１に始まり、指定時刻ｔ２よりも前に終了している。そのあと、第１の予定時刻Ｔｄ２に遷移処理が行われるまで（実行状態期間Ｊ２が始まるまで）、実行状態期間がない。
【００４２】
従来装置は、第２の予定時刻Ｔａ１、Ｔｃ１及びＴｂ１となったときに、いずれも自装置が実行状態となっていないため、第２の処理Ａ、Ｃ及びＢをこれらの予定時刻には実行しない。従来装置は、第１の予定時刻Ｔｄ２になって遷移処理を行ったときに、第１の処理Ｄとともに、第２の処理Ａ、Ｃ及びＢを実行する。図９では、予定時刻処理が実行されなかった予定時刻（例えばＴａ１、Ｔｃ１及びＴｂ１）を二点鎖線で示し、実際に予定時刻処理が実行された時刻（以下「実行時刻」という。）を実線で示している。図９（ａ）では、予定時刻Ｔａ１、Ｔｂ１、Ｔｃ１、Ｔｄ１及びＴｄ２に実行が予定されていた予定実行処理の実行時刻Ｕａ１、Ｕｂ１、Ｕｃ１、Ｕｄ１及びＵｄ２が示されている。この例では、指定時刻ｔ１が実行時刻Ｕｄ１となり、それ以外の４つの実行時刻Ｕａ１、Ｕｂ１、Ｕｃ１及びＵｄ２は、いずれも指定時刻ｔ５に集中している。
【００４３】
一方、情報処理装置１０は、第１の予定時刻Ｔｄ１に第１の処理Ｄを実行し、この処理を終了したあと、図８で述べたように分散処理を実行し、図４で述べたように第３の予定時刻Ｔｅ１を決定する。情報処理装置１０は、第２の予定時刻Ｔａ１（指定時刻ｔ２）となったときには、自装置が実行状態となっていないため第２の処理Ａを実行しない。情報処理装置１０は、そのあと第３の予定時刻Ｔｅ１（指定時刻ｔ３）となったときに、自装置を実行状態へ遷移させるという第３の処理を実行し、それとともに第２の予定時刻Ｔａ１及びＴｃ１に実行が予定されていた第２の処理Ａ及びＣを実行する。情報処理装置１０は、これらの処理を終了したあと、分散処理を実行するが、この場合は抽出した集合（第２の予定時刻Ｔｂ１だけを含む集合）が分散条件を充足しない（第２の予定時刻の数が閾値以下である）ため、第３の予定時刻を決定しない。この例では、第３の予定時刻Ｔｅ１から期間Ｊ３が始まり、指定時刻ｔ４となる前に終了する。情報処理装置１０は、第２の予定時刻Ｔｂ１（指定時刻ｔ４）となったときには、自装置が実行状態となっていないため第２の処理Ｂを実行せず、第１の予定時刻Ｔｄ２となったときに、遷移処理を行って、第１の処理Ｄとともに第２の処理Ｂを実行する。
【００４４】
図９（ｂ）の例では、指定時刻ｔ１が実行時刻Ｕｄ１となり、指定時刻ｔ３が実行時刻Ｕａ１及びＵｃ１となり、指定時刻ｔ５が実行時刻Ｕｂ１及びＵｄ２となる。このように、従来装置では指定時刻ｔ５、すなわち、実行状態遷移が行われる（自装置の状態が実行状態に遷移する）ときに集中して実行されていた４つの指定時刻処理（Ａ、Ｂ、Ｃ及びＤ）が、情報処理装置１０においては、指定時刻ｔ５と、指定時刻ｔ５の前に実行状態遷移が行われるとき、すなわち第３の処理が実行される指定時刻ｔ３とに分散して実行されることになる。これにより、１回の実行状態遷移が行われるときに情報処理装置にかかる処理の負荷や、通信装置１３やネットワーク２にかかる通信の負荷が小さくなる。言い換えれば、実行状態遷移が行われるときに実行される処理による負荷のピークが小さくなる。このように、情報処理装置１０は、第３の処理を行わない場合に比べて、自装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。
【００４５】
情報処理装置１０は、図８で述べたように、予定時刻処理を実行し終わったときと、複数の予定時刻処理を集中して実行している場合は、最後の予定時刻処理を実行し終わったときとに分散処理を実行する。そのため、情報処理装置１０は、ステップＳ４３において抽出した集合に含まれる第２の予定時刻の数が閾値よりも多い場合、次の図で示すように、繰り返し第３の予定時刻を決定することになる。
図１０は、分散処理が実行されるタイミングを説明するための図である。図１０では、第１の処理Ｄの実行を予定する第１の予定時刻Ｔｄ１１及びＴｄ１２の間に、６つの第２の予定時刻Ｔａ１１、Ｔｃ１１、Ｔｂ１１、Ｔａ１２、Ｔｃ１２及びＴｂ１２が定められている。この例では、分散閾値が２であるものとする。この場合、情報処理装置１０は、まず、第１の予定時刻Ｔｄ１１になって第１の処理を実行し終えた時刻Ｔｆ１１に分散処理を実行し、抽出した集合に含まれる第２の予定時刻が６つと閾値を超えているため、第３の予定時刻Ｔｅ１１を決定する。
【００４６】
次に、情報処理装置１０は、第３の予定時刻Ｔｅ１１になって第２の予定時刻Ｔａ１１及びＴｃ１１に実行が予定されていた第２の処理Ａ及びＣを実行し終えた時刻Ｔｆ１２に分散処理を実行し、抽出した集合に含まれる第２の予定時刻が４つと閾値を超えているため、第３の予定時刻Ｔｅ１２を決定する。続いて、情報処理装置１０は、第３の予定時刻Ｔｅ１２になって第２の予定時刻Ｔｂ１１及びＴａ１２に実行が予定されていた第２の処理Ｂ及びＡを実行し終えた時刻Ｔｆ１３に分散処理を実行し、抽出した集合に含まれる第２の予定時刻が２つと閾値を超えないため、第３の予定時刻を決定しない。そして、情報処理装置１０は、第１の予定時刻Ｔｄ１２になって第１の処理Ｄと第２の予定時刻Ｔｃ１２及びＴｂ１２に実行が予定されていた第２の処理Ｃ及びＢとを実行し終えた時刻Ｔｆ１４に分散処理を実行する。この例では、上述した従来装置であれば第１の予定時刻Ｔｄ１２に実行される予定だった７つの予定時刻処理が、第３の予定時刻Ｔｅ１１、Ｔｅ１２及び第１の予定時刻Ｔｄ１２の３つの時刻に分散して実行される。このように、情報処理装置１０は、上記同様に自装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。また、前述したように負荷が集中すると、情報処理装置の応答性が低下することがあるが、情報処理装置１０においては、処理を部算して負荷のピークを小さくすることで応答性を高めることができる。
【００４７】
［変形例］
上述した実施形態は、本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、上述した実施形態及び以下に示す各変形例は、必要に応じて組み合わせて実施してもよい。
【００４８】
（変形例１）
情報処理装置は、決定した第３の予定時刻を取り消す手段を備えていてもよい。
図１１は、本変形例における情報処理装置１０ａが実現する機能構成を示すブロック図である。情報処理装置１０ａは、図３に示す各部に加え、取消部１０５を備える。取消部１０５は、決定部１０３により決定された第３の予定時刻になるよりも前に遷移部１０２により実行状態遷移が行われた場合に第３の予定時刻を取り消す取消手段である。取消部１０５は、制御装置１１及び記憶装置１６が協働して実現する機能であり、詳細には次の方法で第３の予定時刻を取り消す。
【００４９】
制御装置１１には、決定部１０３が第３の予定時刻を決定した場合に、決定された第３の予定時刻が決定部１０３から通知され、遷移部１０２により実行状態遷移が行われた場合に、実行状態遷移を行った旨が遷移部１０２から通知される。制御装置１１は、通知された第３の予定時刻になる前に実行状態遷移を行った旨が通知された場合に、記憶装置１６に記憶されている第３の予定時刻を削除する。このようにして、取消部１０５は第３の予定時刻を取り消す。実行部１０４は、取消部１０５により第３の予定時刻が取り消された場合、その第３の予定時刻になっても第３の処理を実行しない。
【００５０】
情報処理装置１０ａによるこのような動作は、第３の予定時刻になる前にユーザの操作などによって実行状態に遷移した場合に行われる。この場合、実行状態に遷移した時点で、それまでに実行が予定されていた第２の処理が実行されることになる。そして、情報処理装置１０ａは、最後の第２の処理が実行し終えたときに分散処理を実行し、抽出した第２の予定時刻の集合が分散条件を充足すれば第３の予定時刻を決定し、充足しなければ第３の予定時刻を決定せずに分散処理を終了する。これにより、仮に、実行状態遷移が行われたときにまだ第２の処理が１つも実行されていなければ、この分散処理によって再び同じ第３の予定時刻が決定されることになる。一方、この実行状態遷移によって第２の処理が実行された場合には、新たな第３の予定時刻が決定されるか、第３の予定時刻が決定されずに次の第１の予定時刻になるまで分散処理が行われないことになる。このように、本変形例では、第３の予定時刻になる前に第２の処理が分散して実行された場合には、第３の処理の実行を遅らせるかまたは実行しないようにすることで、例えば図１０で述べた例で２回行われていた第３の処理を１回または０回に減らすことができる。つまり、本変形例によれば、第３の予定時刻を取り消さない場合に比べて、自装置が実行状態になっている期間を少なくすることができ、さらに、実施形態のように非実行状態では実行状態よりも消費する電力が少ない場合には、情報処理装置において消費される電力を少なくすることができる。
【００５１】
（変形例２）
決定部１０３は、上述した実施形態とは異なる抽出条件を用いて第２の予定時刻の集合を抽出してもよい。例えば、実施形態では集合が複数ある場合には現在時刻に最も近い集合であることが抽出条件となっていたが、その条件をなくし、決定部１０３は、複数の集合をそのまま抽出してもよい。この場合、決定部１０３は、複数の集合に対してそれぞれ第３の予定時刻を決定し、決定した複数の第３の予定時刻を記憶部１０１に記憶させる。また、この場合に、決定部１０３は、決定した最後の第３の処理が実行されたときに次の分散処理を行うようにしてもよい。これにより、実施形態における抽出条件を用いる場合に比べて、分散処理を行う回数を少なくすることができる。一方、決定部１０３が実施形態における抽出条件を用いる場合には、予定時刻処理を実行し終わった時点で予定されている予定時刻処理の状況に応じて第３の予定時刻を決定することができる。これにより、予定時刻が変動した場合に、変動した予定時刻に応じて、自装置の状態が遷移するときに実行される処理による負荷のピークが小さくなりやすい第３の予定時刻を決定することができる。
【００５２】
（変形例３）
決定部１０３は、さらに別の抽出条件を用いて第２の予定時刻の集合を抽出してもよい。例えば、決定部１０３は、第２の処理のうち、通信の実行が許可されていることを示す権限や識別子が付与されているものだけの集合を抽出する抽出条件を用いてもよい。これらの権限や識別子が付与された第２の処理とは、要するに、通信を行う第２の処理のことであり、反対に、これらが付与されていない第２の処理とは、通信を行わない第２の処理のことである。この抽出条件を用いることにより、決定部１０３は、第１の予定時刻を挟まずに連続する第２の予定時刻のうち、通信を行う第２の処理の実行を予定するものの集合が分散条件を充足しない場合に、その集合に基づいて第３の予定時刻を決定する。
【００５３】
情報処理装置１０ａにおいては、通信を行う第２の処理が分散して実行されることになり、実施形態と同様に、第３の処理を行わない場合に比べて、通信の負荷のピークが小さくなる。一方、通信を行わない第２の処理、すなわち、制御装置１１を通信の完了待ちなどの通信に関する処理でアイドル状態にさせることがない第２の処理については、通信を行う第２の処理のように分散して実行されるということがない。従って、情報処理装置１０ａにおいては、例えば実施形態の抽出条件が用いられる場合に比べて通信を行わない第２の処理が集中して実行されやすくなるが、これらの第２の処理は通信の負荷がないため、通信を行う第２の処理が集中する場合に比べれば負荷のピークが小さくなりやすい。また、情報処理装置１０ａにおいては、通信を行わない第２の処理を分散させない分、第３の処理が実行される回数が少なくなりやすいことになるから、自装置が実行状態になっている期間を減らすことができ、それにより、消費される電力を少なくすることができる。
【００５４】
（変形例４）
決定部１０３は、さらに別の抽出条件を用いて第２の予定時刻の集合を抽出してもよい。例えば、決定部１０３は、第２の処理に上述した権限や識別子の付与を行わず、第２の処理の全てが通信を行うことが可能になっている場合に、過去に通信を行った第２の処理だけの集合を抽出する抽出条件を用いてもよい。
図１２は、本変形例における情報処理装置１０ｂが実現する機能構成を示すブロック図である。情報処理装置１０ｂは、図３に示す各部に加え、第１蓄積部１０６を備える。第１蓄積部１０６は、実行部１０４により第２の処理が実行された際のその第２の処理による通信の履歴を蓄積する第１蓄積手段であり、本発明に係る蓄積手段である。第１蓄積部１０６は、制御装置１１、通信装置１３及び記憶装置１６が協働して実現する機能であり、詳細には次の方法で通信の履歴を蓄積する。
【００５５】
制御装置１１は、実行部１０４が第２の処理を実行したときに通信装置１３を制御して通信を行わせた場合に、その第２の処理を識別する識別子とその通信を開始させた時刻とを記憶装置１６に記憶させる。このようにして記憶された識別子及び時刻は、その識別子により識別される第２の処理が行った通信の履歴を表す。第１蓄積部１０６は、このようにして前述した通信の履歴を蓄積し、決定部１０３から要求された場合にその履歴を決定部１０３に通知する。この場合、決定部１０３は、第１の予定時刻を挟まずに連続する第２の予定時刻のうち、第１蓄積部１０６に通信の履歴が蓄積されている第２の処理の実行を予定するものの集合が分散条件を充足しない場合に、その集合に基づいて第３の予定時刻を決定する。情報処理装置１０ｂによれば、通信を行わなかった第２の処理、すなわち、通信を行った第２の処理に比べて今後も通信を行わない可能性が高い第２の処理については、分散して実行されるということがない。そのため、上述した情報処理装置１０ａと同様に、第３の処理が実行される回数が少なくなりやすいことになるから、自装置が実行状態になっている期間を減らすことができ、それにより、消費される電力を少なくすることができる。
【００５６】
（変形例５）
決定部１０３は、上述した実施形態では、記憶部１０１により記憶されている全ての第１及び第２の予定時刻を取得したが、一部の予定時刻を取得してもよい。例えば、決定部１０３は、現在時刻以降の予め決められた期間に含まれる予定時刻を取得したり、現在時刻以降の予め決められた数の第１の予定時刻と、それらの第１の予定時刻に挟まれた期間に含まれる第２の予定時刻とを取得したりしてもよい。これにより、決定部１０３は、取得する予定時刻の数を少なくして、分散処理において集合を抽出するときの処理の負荷を少なくすることができる。一方、決定部１０３が実施形態のように全ての第１及び第２の予定時刻を取得する場合には、上述した変形例のように、分散条件を充足する現在時刻以降の第２の予定時刻の集合に対してそれぞれ第３の予定時刻を決定しておくことができる。言い換えれば、現在時刻以降に予定されている第１の予定時刻において集中して実行される第２の処理による負荷のピークを予め分散させるように第３の予定時刻を決定しておくことができる。
【００５７】
（変形例６）
決定部１０３は、上述した実施形態とは異なる分散条件を用いて第３の予定時刻を決定してもよい。実施形態では集合に含まれる第２の予定時刻の数が分散閾値よりも多いことが分散条件となっていたが、例えば、集合に含まれる第２の予定時刻に重みを付けて合計した値が分散閾値よりも多いことを分散条件としてもよい。決定部１０３は、例えば、その第２の予定時刻と１つ前の第２の予定時刻との間の時間が長いほど重みを大きくするように重み付けをする。この場合、決定部１０３は、第２の予定時刻が長い期間に分散している場合に、そうでない場合、すなわち、第２の予定時刻が短い期間に集中している場合に比べて、分散条件を充足しないと判断する集合に含まれる第２の予定時刻の数が少なくなりやすくなる。つまり、第２の予定時刻が長い期間に分散している場合には、そうでない場合に比べて、第３の予定時刻が多く決定され、それらの時刻に予定されている第２の処理の実行が後回しにされずに早く実行されやすくなる。第２の予定時刻が分散するほど、次の第２の予定時刻との間の時間が長くなり、第３の処理が行われるまでに第２の処理の実行が保留される期間が長くなる。本変形例によれば、このように保留される期間が長い場合、すなわち、第２の予定時刻が長い期間に分散している場合に、第３の予定時刻が多く決定されるように重み付けをすることで、全体として、第２の処理の実行が保留される期間を短くすることができる。
【００５８】
（変形例７）
決定部１０３は、複数の第２の処理が各々の周期で実行される場合に、上述した非充足時刻のうち、それらの周期に応じた時刻を第３の予定時刻として決定してもよい。決定部１０３は、例えば、非充足時刻のうち、各第２の予定時刻の周期の公倍数となる時間の間隔で訪れる時刻を第３の予定時刻として決定してもよい。
図１３は、本変形例において決定される第３の予定時刻を説明するための図である。図１３では、第１の予定時刻（Ｔｄ３１）と、第２の処理Ａ及びＢの第２の予定時刻（Ｔａ３１からＴａ３９まで及びＴｂ３１からＴｂ３７まで）が示されている。第２の処理Ａは周期Ｇ１で実行されるように第２の予定時刻が予定されており、第２の処理Ｂは周期Ｇ２で実行されるように第２の予定時刻が予定されている。周期Ｇ２は、周期Ｇ１の１．２５倍となっている。この例では、第１の予定時刻Ｔｄ３１、第２の予定時刻Ｔａ３１及びＴｂ３１は、いずれも同じ時刻となっており、その時刻が現在時刻であるものとする。また、分散閾値が１０であるものとする。
【００５９】
決定部１０３は、第１の予定時刻Ｔｄ３１に第１の処理Ｄ、第２の処理Ａ及びＢを実行したあと、周期Ｇ１及びＧ２の公倍数となる時間Ｈ１の間隔で訪れる時刻、すなわち、この公倍数を周期（以下「公倍数周期」という。）とする時刻であるｔ３１、ｔ３２及びｔ３３を算出する。決定部１０３は、算出した公倍数周期で訪れる時刻のうち、次に訪れるｔ３２を、第３の予定時刻Ｔｅ３１として決定する。また、決定部１０３は、第３の予定時刻Ｔｅ３１において実行状態になって各予定時刻処理が実行されたあと、公倍数周期で訪れる時刻のうち、次に訪れるｔ３３を、第３の予定時刻Ｔｅ３２として決定する。
なお、公倍数周期は、複数の第２の予定時刻の周期の最小公倍数を整数倍した周期ともいえる。例えば、時間Ｈ１は、周期Ｇ１の４倍且つ周期Ｇ２の３倍、すなわち、これらの周期の最小公倍数であったが、決定部１０３は、分散閾値が例えば２０であれば、時間Ｈ１を２倍した時間を公倍数周期とする時刻（ｔ３１及びｔ３３）を算出し、次に訪れる時刻ｔ３３を第３の予定時刻として決定してもよい。
【００６０】
本変形例では、決定部１０３が、複数の第２の処理のいずれもが元々実行される予定となっていた第２の予定時刻（図１３の例では第２の予定時刻Ｔａ３５及びＴｂ３４）を第３の予定時刻（図１３の例ではＴｅ３１）として決定する。つまり、これらの第２の予定時刻においては、第２の処理の実行が保留されることがない。また、それ以前の第２の予定時刻はいずれも等間隔に並んでいるため、第２の処理の実行が保留される期間（以下「保留期間」という。）の長さは、最後の第２の予定時刻における保留期間の長さに比例する。本変形例では、前述したように最後の第２の予定時刻における保留期間が０であるから、本変形例のように公倍数周期で訪れる時刻を第３の予定時刻として決定しない場合に比べて、全体の保留期間を短くすることができる。予定時刻処理は、保留期間が長いほど、その処理で扱うデータが変化したり変更されたりする可能性が高まるため、予定時刻に近い時刻に実行されることが望ましい。つまり、保留期間は短いほど望ましい。本変形例によれば、公倍数周期に基づいて第３の予定時刻を決定しない場合に比べて、第２の処理の全体の保留期間を短くすることができ、言い換えれば、全体として第２の予定時刻に近い時刻に第２の処理を実行することができる。また、本変形例では、第３の予定時刻が連続して決定される場合には、それらの第３の予定時刻は等間隔になるため、公倍数周期に基づいて第３の予定時刻を決定しない場合に比べて、第２の処理が実行される間隔の見積もりが容易になる。
【００６１】
（変形例８）
決定部１０３は、複数の第２の処理が各々の周期で実行される場合に、上述した非充足時刻のうち、各第２の予定時刻の周期の最大公約数となる時間を整数倍した時間の間隔で訪れる時刻を第３の予定時刻として決定してもよい。
図１４は、本変形例において決定される第３の予定時刻を説明するための図である。図１４では、第１の予定時刻（Ｔｄ４１）と、第２の処理Ａ及びＢの第２の予定時刻（Ｔａ４１からＴａ４９まで及びＴｂ４１からＴｂ４５まで）が示されている。第２の処理Ａは周期Ｇ３で実行されるように第２の予定時刻が予定されており、第２の処理Ｂは周期Ｇ４で実行されるように第２の予定時刻が予定されている。周期Ｇ４は、周期Ｇ３の２倍となっている。また、第１の予定時刻Ｔｄ４１及び第２の予定時刻Ｔａ４１が同じ時刻となっており、Ｔｂ４１がＴａ４１よりも周期Ｇ１１の３分の１だけ先の時刻となっている。
【００６２】
決定部１０３は、第１の予定時刻Ｔｄ４１に第１の処理Ｄ及び第２の処理Ａを実行したあと、周期Ｇ１及びＧ２の最大公約数となる時間を整数倍（この例では１倍）した時間の間隔で訪れる時刻を算出する。ここで整数倍された時間は、算出する時刻の周期を表すものであり、以下では「最大公約数周期」という。決定部１０３は、この例では、現在時刻ｔ４１が第１の予定時刻Ｔｄ４１である場合に、最大公約数の１倍であるＨ１を最大公約数周期として、その周期で訪れる時刻（ｔ４２からｔ４９まで）を算出する。決定部１０３は、例えば分散閾値が２である場合には、ｔ４２からｔ４９までの各時刻をＴｅ４１からＴｅ４８まで各第３の予定時刻として決定し、分散閾値が４である場合には、時刻ｔ４３、ｔ４５、ｔ４７及びｔ４９を第３の予定時刻Ｔｅ４１、Ｔｅ４２、Ｔｅ４３及びＴｅ４４として決定する。これらの第３の予定時刻は、分散閾値が２及び４の場合は、図１４に示すように等間隔に並ぶように決定されており、図示はしていないが、分散閾値が３及び５の場合であっても、等間隔に並ぶように決定される。
【００６３】
一方、決定部１０３が非充足時刻のうち最もあとの第２の予定時刻と一致するものを第３の予定時刻として決定した場合、図１４の比較例１及び２で示した分散閾値が２及び４の場合には、決定される第３の予定時刻同士の間隔が一定でなくなる。なお、図示せぬ分散閾値が３である場合にはこの間隔が一定になるが、分散閾値が５である場合にはこの間隔は一定ではなくなる。
本変形例では、一定の間隔、すなわち最大公約数周期で訪れる時刻を第３の予定時刻として決定するため、例えば非充足時刻のうち最もあとの第２予定時刻と一致するものを第３の予定時刻として決定する場合に比べて、第３の処理が行われる時刻、つまり、第２の処理が実行される時刻が等間隔になりやすい。従って、本変形例によれば、同様の比較をした場合に、第２の処理が実行される間隔の見積もりが容易になる。
【００６４】
（変形例９）
決定部１０３は、記憶部１０１に予定時刻が記憶されていない場合や、決定部１０３が第３の予定時刻を決定するために必要な数の予定時刻が記憶されていない場合に、過去に自装置が実行状態であった期間を示す履歴（以下「実行状態履歴」という。）と過去に予定時刻処理が実行された時刻を示す履歴（以下「実行履歴」という。）とに基づいて、第３の予定時刻を決定してもよい。記憶部１０１は、上述したとおり、例えば設定した周期及び開始時刻に基づいて所定の期間分の予定時刻を所定の時間の間隔で算出するが、その期間及び時間の間隔によっては、現在時刻以降の予定時刻がほとんど記憶されていない状態が起こり得る。例えば第２の予定時刻が１つしか記憶されていなければ、決定部１０３は、抽出条件を充足する第２の予定時刻の集合を抽出することができない。つまり、決定部１０３が第３の予定時刻を決定するためには、記憶部１０１に少なくとも複数の第２の予定時刻が記憶されている必要がある。決定部１０３は、記憶部１０１に記憶されている予定時刻を用いても第３の予定時刻を決定することができない場合には、上記の実行状態履歴及び実行履歴に基づいて第３の予定時刻を決定する。この場合、情報処理装置は、これら２つの履歴を蓄積する手段を備える。
【００６５】
図１５は、本変形例における情報処理装置１０ｃが実現する機能構成を示すブロック図である。情報処理装置１０ｃは、図３に示す各部に加え、第２蓄積部１０７を備える。第２蓄積部１０７は、上述した実行状態履歴及び実行履歴を蓄積する第２蓄積手段である。第２蓄積部１０７は、制御装置１１及び記憶装置１６が協働して実現する機能であり、詳細には次の方法でこれらの履歴を蓄積する。
制御装置１１は、自装置が実行状態でない状態（例えば非実行状態や電源が投入されていない状態）から実行状態に遷移したときに、実行状態が開始したことを示す情報とその時刻とを対応付けて記憶装置１６に記憶させる。また、制御装置１１は、自装置が実行状態から実行状態でない状態に遷移するときに、実行状態が終了することを示す情報とその時刻とを対応付けて記憶装置１６に記憶させる。このようにして記憶された情報及び時刻は、実行状態が開始した時刻及び終了した時刻を表す履歴、すなわち実行状態履歴となる。
【００６６】
実行部１０４は、予定時刻処理（第１及び第２の処理）を実行した場合に、実行した処理を識別する情報と、実行を開始した時刻とを制御装置１１に通知する。制御装置１１は、通知されたそれらの情報及び時刻を、実行履歴として記憶装置１６に記憶させる。第２蓄積部１０７は、以上のとおり、実行状態履歴及び実行履歴を蓄積する。第２蓄積部１０７は、決定部１０３からの要求に応じて、蓄積したこれらの履歴を示すデータを決定部１０３に供給する。
決定部１０３は、上述したように第２の予定時刻の集合を抽出することができない場合、第２蓄積部１０７に要求して実行状態履歴及び実行履歴を示すデータを取得する。決定部１０３は、取得したデータが示す実行状態履歴及び実行履歴のとおりに自装置の遷移及び予定時刻処理の実行がこの先に行われる場合に、遷移及び第２の処理の実行が同時に行われ、且つ、第１の処理が実行されない時刻を第３の予定時刻として決定する。
【００６７】
図１６は、本変形例において決定される第３の予定時刻を説明するための図である。図１６では、実行状態履歴が示す、過去に自装置が実行状態であった期間（つまり実行状態期間）Ｊ１及びＪ２と、実行履歴が示す、過去に第１の処理Ｄ、第２の処理Ａ及びＢが実行された時刻である実行時刻Ｕｄ５１、Ｕａ５１及びＵｂ５１が示されている。実行状態期間Ｊ１は時刻ｔ５０に開始する時間Ｋ１の期間であり、実行状態期間Ｊ２は実行時刻Ｕａ５１に開始する時間Ｋ２の期間である。これらの実行状態期間Ｊ１及びＪ２は時間Ｋ３だけ離れている。この場合、決定部１０３は、まず、時刻ｔ５０に対応する時刻ｔ６０を算出する。詳細には、決定部１０３は、実行状態履歴において実行状態期間Ｊ１及びＪ２と同様の実行状態が時刻ｔ５０の前に繰り返しあった場合に、時刻ｔ５０に対応する時刻、すなわち実行状態期間Ｊ１に対応する時間Ｋ１の実行状態期間が開始する時刻の周期を算出し、算出した周期を時刻ｔ５０に加算した時刻ｔ６０を、実行状態期間Ｊ１に対応する実行状態となることが想定される期間Ｊ３が開始する時刻として算出する。
【００６８】
決定部１０３は、算出した時刻ｔ６０に時間Ｋ１及びＫ３を加えた時刻ｔ６１を、実行状態期間Ｊ２に対応する期間Ｊ４が開始する時刻として算出する。次に、決定部１０３は、過去の実行状態期間が開始した時刻から、その時刻に第２の処理が実行され、且つ、第１の処理が実行されなかったものを抽出する。この例では、決定部１０３は、第２の処理Ａが実行された時刻ｔ５１を抽出する。決定部１０３は、抽出した時刻ｔ５１に対応する時刻であるｔ６１を、第３の予定時刻として決定する。図１６の例では、第１の処理Ｄ及び第２の処理Ｂは、実行状態期間の最中に実行されているため、各々実行された時刻がそのまま予定時刻であったことになる。一方、第２の処理Ａは、実行状態期間が始まった時刻ｔ５１に実行されているため、この時刻ｔ５１またはそれよりも前に実行が予定されていたことになる。本変形例では、この時刻ｔ５１に対応する時刻ｔ６１を第３の予定時刻として決定することで、第２の処理Ａが前回までと同様に時間Ｋ２の期間が始まる時刻に実行されることになる。このように、本変形例によれば、記憶部１０１に現在時刻以降の予定時刻がほとんど記憶されておらず、抽出条件を充足する第２の予定時刻の集合を抽出することができないような場合であっても、第３の予定時刻を決定することができる。
【００６９】
なお、第２蓄積部１０７は、第１及び第２の予定時刻に加え、第３の予定時刻も蓄積してもよい。その場合、決定部１０３は、第２蓄積部１０７に蓄積された第３の予定時刻に基づき、前述した時刻ｔ６０やｔ６１を算出したのと同じ方法で、過去の履歴に含まれる第３の予定時刻に対応する時刻を算出し、第３の予定時刻として決定してもよい。
【００７０】
（変形例１０）
決定部１０３は、上述した公倍数周期や最大公約数周期を用いて第３の予定時刻を決定する場合に、記憶部１０１による予定時刻の記憶に周期が用いられていなければ、記憶部１０１に記憶されている過去の指定時刻または上記の第２蓄積部１０７に蓄積された実行履歴に基づいて周期を算出してもよい。この場合、決定部１０３は、或る指定時刻処理の過去の指定時刻または実行履歴が表す実行時間の間隔が一定となっていれば、その指定時刻処理はその間隔を周期として実行が予定されていると判断し、その周期を用いて公倍数周期や最小公倍数周期で訪れる時刻を算出する。ここでいう間隔が一定とは、例えば前々回の予定時刻であった指定時刻と前回の予定時刻であった指定時刻との差分が、前回と今回の指定時刻の差分と等しい場合や、前々回の実行時刻と前回の実行時刻との差分、前々回の実行時刻と前回の指定時刻との差分などが、前回と今回の実行時刻の差分と等しい場合のことをいう。なお、決定部１０３は、これらの差分が完全に一致しなくても、その違いが予め決められた誤差の範囲に収まるものであれば、間隔が一定であると判断してもよい。
【００７１】
（変形例１１）
決定部１０３は、過去の所定の期間（例えば１ヶ月）における実行状態履歴及び実行履歴に基づいて自装置の処理の負荷が所定のレベルを超えているか否かを判定し、その判定結果に応じて分散条件を変更してもよい。この所定の期間は、自装置の処理の負荷を判定するために定める期間であり、以下では「判定期間」という。例えば、決定部１０３は、判定期間における実行状態履歴に基づいて、自装置が実行状態及び非実行状態を相互に遷移した回数（遷移回数という。）、実行状態が継続した時間（実行状態時間という。）の平均値または非実行状態が継続した時間（非実行状態時間という。）の平均値を算出する。また、決定部１０３は、判定期間における実行履歴に基づいて、予定時刻処理が実行された回数（実行回数という。）、予定時刻処理の実行時刻において同時に実行された予定時刻処理の数（同時実行数という。例えば、或る実行時刻に２つの予定時刻処理が実行された場合は２つと数える。）の平均値または実行時刻毎に実行された予定時刻処理による動作が継続された時間（処理継続時間という。例えば、或る実行時刻に２つの予定時刻処理が実行された場合、その実行時刻から、それらのうち長く動作を継続させた方が終了するまでの時間。）の平均値を算出する。決定部１０３は、実行状態履歴に基づいて算出した平均値と、実行履歴に基づいて算出した平均値との関係から、自装置の処理の負荷が所定のレベルを超えているか否かを判定する。
【００７２】
上記のとおり算出される値のうち、遷移回数及び実行状態時間の平均値は、その値が大きいほど、第２の処理が分散して実行されやすい。つまり、これらの値は、第２の処理の実行が分散する傾向を表す値であり、以下では「分散傾向値」という。また、非実行状態時間の平均値、実行回数、同時実行数及び処理継続時間は、その値が大きいほど、第２の処理が集中して実行されやすい。つまり、これらの値は、第２の処理の実行が集中する傾向を表す値であり、以下では「集中傾向値」という。決定部１０３は、例えば、集中傾向値のいずれかを、分散傾向値のいずれかで除した値が閾値を超える場合に、前述した処理の負荷が所定のレベルを超えていると判定する。決定部１０３は、処理の負荷が所定のレベルを超えていると判定した場合、第２の処理がより分散して実行されるように分散条件を変更する。例えば、決定部１０３は、分散閾値の値を今よりも小さい値に変更する。これにより、上記のとおり分散条件を変更しない場合に比べて、自装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。
【００７３】
一方、決定部１０３は、処理の負荷が所定のレベルを超えていないと判定した場合には、第３の処理が実行される回数が減少するように分散条件を変更する。例えば、決定部１０３は、分散閾値の値を今よりも大きい値に変更する。これにより、上記のとおり分散条件を変更しない場合に比べて、自装置が実行状態となっている期間を少なくすることができ、さらに、実施形態のように非実行状態では実行状態よりも消費する電力が少ない場合には、情報処理装置において消費される電力を少なくすることができる。
【００７４】
なお、決定部１０３は、上記の分散傾向値が閾値未満である場合に処理の負荷が所定のレベルを超えていると判定したり、上記の集中傾向値が閾値を超える場合に処理の負荷が所定のレベルを超えていると判定したりしてもよい。また、決定部１０３は、分散傾向値の合計や集中傾向値の合計に基づいてこの判定を行ってもよい。また、決定部１０３は、例えば上記のとおり集中傾向値のいずれかを分散傾向値のいずれかで除した値が第１の閾値を超える場合には、処理の負荷が第１のレベルを超えていると判定して第２の処理が分散しやすいように分散条件を変更し、この値が第１の閾値よりも小さい第２の閾値未満である場合には、処理の負荷が第２のレベル未満であると判定して第３の処理が実行される回数が少なくなるように分散条件を変更し、この値が第１の閾値以下で第２の閾値以上である場合には、分散条件を変更しないようにしてもよい。要するに、決定部１０３は、分散傾向値及び集中傾向値を用いて自装置の処理の負荷（またはネットワーク２の通信の負荷）の大きさを判定し、その結果に基づいて負荷を軽減したり自装置が実行状態となっている期間を少なくしたりするように分散条件を変更すればよい。
【００７５】
（変形例１２）
決定部１０３は、時間帯または時期などの期間によって分散条件を変更してもよい。例えば、情報処理装置においては、午前０時から午前５時までの第１の時間帯において、この時間帯を除く第２の時間帯に比べて多く予定時刻処理が実行される場合に、決定部１０３は、現在時刻が第１の時間帯である場合には分散閾値をＶ１（例えば２）として第３の予定時刻を決定し、現在時刻が第２の時間帯である場合には分散閾値をＶ１よりも大きいＶ２（例えば５）として第３の予定時刻を決定する。また、例えば、情報処理装置においては、四半期末の最後の月の後半という第１の時期において、この時期を除く第２の時期に比べて多く予定時刻処理が実行される場合に、決定部１０３は、前述した時間帯と同様に２とおりの分散閾値を使い分けて第３の予定時刻を決定する。本変形例によれば、予定時刻処理が集中しやすい期間（時間帯や時期）においては第２の処理を分散しやすいように第３の予定時刻を決定し、そうでない期間においては自装置が実行状態となっている期間を少なくするように第３の予定時刻を決定することができる。
【００７６】
（変形例１３）
決定部１０３は、上述した実施形態では、抽出した集合に含まれる第２の予定時刻のうち或る時刻から前の第２の予定時刻の集合が分散条件を充足しないときの前述した或る時刻、すなわち上述した非充足時刻のうち、最もあとの（最も未来の）第２の予定時刻と一致するものを、第３の予定時刻として決定したが、これとは異なる方法で第３の予定時刻を決定してもよい。例えば、決定部１０３は、全ての非充足時刻から乱数に基づいて選出した時刻を、第３の予定時刻として決定してもよい。この場合であっても、実行状態遷移が行われるときに集中して実行されていた指定時刻処理が第３の予定時刻に分散して実行されることになり、情報処理装置は、第３の処理を行わない場合に比べて、自装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。
【００７７】
（変形例１４）
情報処理装置は、決定部１０３により決定された第３の予定時刻を、所定の条件が充足された場合に変更する手段を備えていてもよい。以下では、この条件のことを「変更条件」という。
図１７は、本変形例における情報処理装置１０ｄが実現する機能構成を示すブロック図である。情報処理装置１０ｄは、図３に示す各部に加え、第１変更部１０８を備える。第１変更部１０８は、変更条件が充足された場合に第３の予定時刻を変更する第１変更手段である。第１変更部１０８は、例えば、決定部１０３により決定された第３の予定時刻から始まる所定の期間に第２の処理が予定されている場合に充足する変更条件を用いる。第１変更部１０８は、この変更条件が充足された場合には、その所定の期間に第２の処理の実行が予定されている時刻（すなわち第２の予定時刻）に第３の予定時刻を変更する。このように第１変更部１０８が第３の予定時刻を変更することにより、情報処理装置１０ｄが非実行状態である期間が前述した所定の期間分だけ追加されることになる。以下では、この所定の期間のことを「追加期間」という。第１変更部１０８は、制御装置１１及び記憶装置１６が協働して実現する機能であり、詳細には次の方法で第３の予定時刻を変更する。
【００７８】
制御装置１１は、記憶部１０１に要求して、第２の予定時刻を取得する。決定部１０３は、決定した第３の予定時刻を第１変更部１０８の制御装置１１に通知する。制御装置１１は、決定部１０３から通知された第３の予定時刻から始まる追加期間（例えば１時間）を算出し、算出した追加期間に取得した第２の予定時刻が含まれているか否かを判断する。制御装置１１は、第２の予定時刻が含まれていると判断した場合には、その第２の予定時刻として記憶部１０１に記憶されている指定時刻を、第３の予定時刻として記憶部１０１に記憶させ、決定部１０３から通知された第３の予定時刻を記憶部１０１に削除させる。制御装置１１は、追加期間に複数の第２の予定時刻が含まれていると判断した場合には、そのうちの最もあとの第２の予定時刻として記憶されている指定時刻を、第３の予定時刻として記憶部１０１に記憶させる。このようにして、第１変更部１０８は、第３の予定時刻を変更する。
【００７９】
図１８は、本変形例において決定される第３の予定時刻を説明するための図である。図１８では、第１の予定時刻（Ｔｄ２１及びＴｄ２２）と、Ｔｄ２１及びＴｄ２２の間の第２の予定時刻（Ｔａ２１、Ｔｂ２１及びＴｃ２１）が示されている。現在時刻が第１の予定時刻Ｔｄ２１であり、分散閾値が２である場合、決定部１０３は、最もあとの第２の予定時刻と一致する非充足時刻であるＴｂ２１を第３の予定時刻として決定する。第１変更部１０８は、決定部１０３により決定された第３の予定時刻であるＴｂ２１から始まる追加期間（この例ではＦ１とする。）に含まれる第２の予定時刻が記憶部１０１に記憶されているか否かを判断する。図１８（ａ）の例では、追加期間Ｆ１に第２の予定時刻がないため、第１変更部１０８は、そのような第２の予定時刻が記憶されていないと判断し、第３の予定時刻の変更を行わない。
【００８０】
一方、図１８（ｂ）に示す例の場合、追加期間Ｆ１に含まれる第２の予定時刻Ｔｃ２１が記憶部１０１に記憶されているため、第１変更部１０８は、追加期間に含まれる第２の予定時刻が記憶されていると判断し、Ｔｃ２１を第３の予定時刻として決定する。図１８（ｂ）の例において、追加期間Ｆ１に含まれる第２の予定時刻であるＴｃ２１を第３の予定時刻として決定しない場合には、Ｔｃ２１に実行が予定されている第２の処理が第１の予定時刻Ｔｄ２２まで保留されることになる。図１３の公倍数周期の例で述べたように、第２の処理の実行が保留される期間（保留期間）は、短いほど望ましい。本変形例によれば、追加期間に含まれる第２の予定時刻があった場合に、それ以前の第２の処理（この例ではＴａ２１及びＴｂ２１に実行が予定されている第２の処理）とともに実行させることで、その第２の処理の保留期間を短くすることができる。
【００８１】
（変形例１５）
情報処理装置は、第１変更部１０８とは異なる方法で第３の予定時刻を変更する手段を備えていてもよい。
図１９は、本変形例における情報処理装置１０ｅが実現する機能構成を示すブロック図である。情報処理装置１０ｅは、図３に示す各部に加え、第２変更部１０９を備える。第２変更部１０９は、例えば、図１７及び図１８で述べた追加期間に含まれる時刻から乱数に基づいて選出した時刻に第３の予定時刻を変更する。または、第１変更部１０８は、追加期間に含まれ、且つ、自装置が起動した時刻（以下「起動時刻」という。）を起点として所定の時間の間隔で訪れる時刻に第３の予定時刻を変更する。第２変更部１０９は、制御装置１１及び記憶装置１６が協働して実現する機能であり、第１変更部１０８と同様に追加期間を算出し、算出した追加期間及び上記の乱数または起動時刻に基づいて第３の予定時刻を変更する。第２変更部１０９は、第１変更部１０８が用いた変更条件が充足されているか否かに関わらず、第３の予定時刻を変更する。
【００８２】
本変形例では、ネットワーク２に接続する複数台の情報処理装置が同じ第１及び第２の予定時刻をそれぞれ記憶している場合に、乱数や起動時刻に基づいて第３の予定時刻が変更されるため、それらの情報処理装置において最もあとの第２の予定時刻と一致する非充足時刻が同じになっていても、乱数や起動時刻に基づかないで第３の予定時刻を変更する場合に比べて、変更された第３の予定時刻がそれぞれ異なる時刻になりやすい。このように、本変形例によれば、同様の比較をした場合に、ネットワーク２にかかる通信の負荷を集中しにくくすることができ、つまりは通信の負荷のピークを小さくすることができる。
【００８３】
（変形例１６）
決定部１０３は、通信装置１３を介した通信による外部装置からの指示に基づいて分散条件を追加し、変更し、及び削除してもよい。この場合、例えば、図１に示すサーバ装置２０が分散条件に対する指示を示すデータを情報処理装置に送信する。
図２０は、サーバ装置２０のハードウェア構成を示すブロック図である。サーバ装置２０は、制御装置２１と、通信装置２２と、記憶装置２３とを備える。制御装置２１は、ＣＰＵ、ＲＯＭ、ＲＡＭを有するマイクロプロセッサとリアルタイムクロックとを備えている。ＣＰＵは、ＲＡＭをワークエリアとして用いてＲＯＭや記憶装置２３に記憶されたプログラムを実行することによって、サーバ装置２０が備える各装置の動作を制御する。このように、制御装置２１は、サーバ装置２０を制御するコンピュータである。リアルタイムクロックは、現在の日時を算出する機能を有している。通信装置２２は、ネットワーク２に接続するためのインターフェースと、通信を行うための通信回路とを備え、ネットワーク２を介して情報処理装置１０と通信を行う通信手段である。記憶装置２３は、例えばハードディスクなどの記憶手段であり、制御装置２１が制御に用いるデータやプログラムなどを記憶している。
【００８４】
図２１は、サーバ装置２０が実現する機能構成を示すブロック図である。サーバ装置２０は、取得部２０１及び指示部２０２を備える。取得部２０１は、ネットワーク２の通信の状況（以下「通信状況」という。）や、ネットワーク２に接続する情報処理装置の処理の状況（以下「処理状況」という。）を取得する取得手段である。取得部２０１は、制御装置２１及び通信装置２２が協働して実現する機能である。例えば、制御装置２１は、通信装置２２及びネットワーク２を介して情報処理装置に所定のデータを送信し、そのデータに応答して情報処理装置から送信されてくるデータに基づいて、サーバ装置２０と情報処理装置との間のネットワークの通信速度などを上記の通信状況として取得する。また、各情報処理装置が、自装置のＣＰＵ使用率やメモリ使用率などの情報を示すデータを所定の時間の間隔でサーバ装置２０に送信するようにしておく。制御装置２１は、このデータを通信装置２２から供給されることで、このデータが示す情報を上記の処理状況として取得する。このようにして、取得部２０１は、通信状況及び処理状況を取得し、取得したこれらの状況を示すデータを指示部２０２に供給する。
【００８５】
指示部２０２は、取得部２０１により取得された通信状況及び処理状況に基づいて、分散条件を変更する指示を情報処理装置に対して行う指示手段である。指示部２０２は、制御装置２１、通信装置２２及び記憶装置２３が協働して実現する機能である。例えば、制御装置２１は、取得された通信状況により、ネットワーク２における通信の負荷が所定のレベルよりも大きいと判断される場合や、取得された処理状況により、情報処理装置１０が通信を行う相手となる情報処理装置における処理の負荷が所定のレベルよりも大きいと判断される場合には、第２の処理がより分散しやすい分散条件に変更するように指示する。この場合、例えば、制御装置２１は、分散閾値を２に変更するように指示をする。具体的には、制御装置２１は、この指示の内容を示すデータを情報処理装置に対して送信する。
【００８６】
本変形例における情報処理装置の決定部１０３は、制御装置１１及び記憶装置１６に加え、通信装置１３が協働して実現する機能である。決定部１０３は、受信したデータが示す指示の内容に基づき、例えば上記の分散条件の変更が指示された場合であれば、分散閾値を２に変更する。これにより、例えばそれまでの分散閾値が５であった場合には、情報処理装置において５つの第２の処理が集中して実行されるようになっていたものが、集中して実行される第２の処理を２つまでに減らすことになり、ネットワーク２の通信の負荷や、第２の処理による通信の相手となる情報処理装置の処理の負荷が、上記の指示がされない場合に比べて小さくなる。
【００８７】
また、指示部２０２は、上記の他にも、例えば集合に含まれる第２の予定時刻に重みを付けて合計した値が分散閾値よりも多いことを分散条件とするように、分散条件の変更を指示してもよい。いずれの場合も、指示部２０２は、取得部２０１により取得された通信状況及び処理状況により、通信及び処理の負荷が所定のレベルよりも大きいと判断される場合に、その負荷を軽減するように分散条件を変更することを指示する。これにより、情報処理装置は、自装置内では取得できない情報（通信状況及び処理状況）に基づいて、分散処理による第２の処理の分散の度合いを変更させることができる。
一方、指示部２０２は、取得された通信状況及び処理状況により、通信及び処理の負荷が所定のレベルよりも小さいと判断される場合には、第３の処理を実行する回数が少なくなるように分散条件を変更することを指示する。これにより、情報処理装置１０は、このような指示がされない場合に比べて、第３の処理を実行する（すなわち実行状態に遷移させる）回数が少なくなり、自装置が実行状態となっている期間を少なくすることができ、さらに、実施形態のように非実行状態では実行状態よりも消費する電力が少ない場合には、情報処理装置において消費される電力を少なくすることができる。
【００８８】
なお、指示部２０２は、分散条件を変更するように指示するだけでなく、第３の予定時刻そのものを指示してもよい。この場合、情報処理装置の決定部１０３は、分散条件に基づいて第３の予定時刻を決定するための処理（例えば第２の予定時刻の抽出や分散条件が充足されているか否かの判断）を行うことなく、指示されたとおりに第３の予定時刻を決定する。これにより、第３の予定時刻を決定するための処理が行われなくなる分、このような指示がされない場合に比べて、情報処理装置の処理の負荷が少なくなる。
【００８９】
また、指示部２０２は、情報処理装置が指示を受け付けた場合に、例えば表示装置が備える表示面を点灯したり、所定の画像を表示したりするように指示してもよい。外部装置（この場合はサーバ装置２０）からの指示により表示面が点灯したり画像が表示されたりすることをユーザが把握している場合には、この点灯及び表示により、外部装置からの指示によって分散条件が変更されたことがユーザに通知されることになる。要するに、指示部２０２は、自装置が外部装置からの指示を受け付けたことをユーザに通知するための処理を行うように、情報処理装置に対して指示をしてもよい。
なお、指示部２０２は、表示面が点灯されることを契機に開始される処理が複数の情報処理装置で行われる場合に、表示面を点灯させる指示を各情報処理装置に対して時刻を分散させて（例えば５分間隔の時刻に）行ってもよい。これにより、このような指示がされない場合に比べて、それらの情報処理装置がより分散したタイミングでこの処理をそれぞれ行うことになり、この処理が通信を伴うものであれば、通信が集中することを抑えて通信による負荷のピークを小さくすることができる。
【００９０】
（変形例１７）
記憶部１０１は、上述した実施形態では、記憶装置１６に記憶されているテーブルに基づいて予定時刻処理が第１及び第２の処理のいずれであるかを判断したが、他の方法でこの判断を行ってもよい。記憶部１０１は、例えば、ある予定時刻処理の予定時刻になったときに非実行状態であった場合に、常に、実行部１０４が遷移部１０２に遷移を行わせ、且つ、その予定時刻処理を実行するものについては、その予定時刻処理を第１の処理として判断する。一方、記憶部１０１は、同じ場合に、実行部１０４が遷移部１０２に遷移を行わせないことがあるもの、または、その遷移は行うが予定時刻処理を実行しないことがあるものについては、その予定時刻処理を第２の処理として判断する。このような予定時刻処理としては、或る条件（例えば、処理すべきデータ量が閾値を超えていることなど。）が充足されている場合には上記の遷移を行ってから処理を実行し、その条件が充足されていない場合には遷移を行うことなく、次に遷移が行われたときに処理を実行するというものなどがある。
【００９１】
第１の処理は、常に遷移を行って処理を実行するため、非実行状態では処理の実行を保留する第２の処理に比べて、処理の実行が分散する傾向が大きい処理といえる。反対に、第２の処理は、第１の処理に比べて処理の実行が集中する傾向が大きい処理といえる。これに対し、上述した条件に応じて遷移を行ったり行わなかったりする予定時刻処理は、第１及び第２の処理の中間の上記の傾向を示すものといえる。上記の例では、このような予定時刻処理を第２の処理として判断するため、これを第１の処理として判断する場合に比べて、分散処理が行われやすくなり、自装置の状態が遷移するときに実行される処理による負荷のピークを小さくすることができる。なお、記憶部１０１は、このような予定時刻処理を第１の処理として判断してもよい。この場合は、これを第２の処理として判断する場合に比べて、第３の処理が実行される回数が減少しやすくなり、自装置が実行状態となっている期間を少なくすることができる。
【００９２】
（変形例１８）
決定部１０３は、所定の条件が充足されている間は、第３の予定時刻の決定を保留するようにしてもよい。決定部１０３は、例えば、自装置に電源が投入されてから時間が経過するほど処理対象となるデータ量が増えて処理の負荷や通信の負荷が増えるような予定時刻処理（第１及び第２の処理）が行われる場合に、自装置の電源が投入されてから一定の時間以内である間は所定の条件が充足されているものとして、第３の予定時刻の決定を保留する。また、決定部１０３は、例えば、予定時刻処理が実行された回数が増えるほど処理対象となるデータ量が増えるような場合に、上記と同様に、予定時刻処理が実行された回数が閾値以下である間は第３の予定時刻の決定を保留する。本変形例における決定部１０３は、これらの例に示すように、予定時刻処理による処理及び通信の負荷が何らかの条件によって変化する場合に、その負荷が所定のレベルよりも小さくなるような条件が充足されている間は、第３の予定時刻の決定を保留する。これにより、このような保留を行わない場合に比べて、第３の処理が実行される回数が減少しやすくなり、自装置が実行状態となっている期間を少なくすることができる。
【００９３】
（変形例１９）
情報処理装置は、上述した実施形態では、実行状態ではいかなる処理をも実行され得る状態となっており、非実行状態では遷移処理及び決められた最低限の処理以外は実行されない状態となっていたが、これとは異なる状態となっていてもよい。情報処理装置は、例えば、実行状態でも或る処理については実行されないようになっていてもよいし、非実行状態において実行され得る処理を増やしてもよい。いずれにしても、情報処理装置は、実行状態においては第１及び第２の処理が実行され得るようになっており、非実行状態においては第１及び第２の処理が実行されないようになっていればよい。
【００９４】
（変形例２０）
決定部１０３は、上述した実施形態では、図８で述べたとおり、実行部１０４が第１及び第２の処理を実行し終わったときに第３の予定時刻を決定したが、他のときにこの決定を行ってもよい。決定部１０３は、例えば、記憶部１０１が第１及び第２の処理の予定時刻を記憶したときに第３の予定時刻を決定してもよい。この場合、記憶部１０１が予定時刻を記憶させる動作を行う時間（例えば１日）の間隔で第３の予定時刻が決定されることになる。また、決定部１０３は、所定の時間（例えば１日）の間隔で第３の予定時刻を決定してもよい。第１及び第２の処理の実行が終了したときに第３の予定時刻が決定される方法では、例えば第１の処理が１週間ほど予定されておらず、且つ、情報処理装置も使用されずに非実行状態のままであった場合に、その間に実行が予定されていた第２の処理は次の遷移が行われたときにまとめて実行されることになる。このような場合であっても、本変形例によれば、第３の予定時刻を決定する時間の間隔を適当に定めておくことで、予定時刻処理が集中して実行されることを防ぐことができる。ここでいう適当な時間の間隔とは、例えば、情報処理装置で実行される第１及び第２の処理が分散閾値の数だけ実行されるのに要する平均的な時間の間隔である。
【００９５】
また、決定部１０３は、遷移部１０２が非実行状態から実行状態への遷移を行ったときに第３の予定時刻を決定してもよい。遷移部１０２がこの遷移を行うときとは、例えば、非実行状態において第１の処理及び第３の処理が実行されたときや、ユーザがこの遷移のための操作を行ったときである。この場合、遷移部１０２は、この遷移を行ったときに、その旨を決定部１０３に通知する。決定部１０３は、遷移部１０２からこの通知を受けたことを契機に、図８に示す分散処理を実行して、第３の予定時刻を決定する。第１及び第２の処理の実行が終了したときに第３の予定時刻が決定される方法では、例えばこれらの予定時刻処理が実行されている間にユーザの操作などにより自装置が非実行状態となった場合に、実行中だった予定時刻処理が次に実行状態になったときに継続して処理を実行できるようになっていなければ、分散処理が実行されずに第３の予定時刻が決定されないことになる。つまり、第３の予定時刻を決定し損なってしまうことになる。その結果、第３の予定時刻が決定されていた場合に比べて、そのあとに予定されている第２の処理が集中して実行され、負荷のピークが大きくなってしまうことがある。本変形例によれば、遷移が行われた時点で第３の予定時刻を決定するため、このように第３の予定時刻を決定し損なうことを防ぐことができる。
【００９６】
なお、決定部１０３は、実行状態において第１及び第２の処理が実行されたときに、第３の予定時刻を決定してもよい。要するに、決定部１０３は、第２の処理が集中して実行されてしまい負荷のピークが大きくなってしまう状態（例えば、分散閾値よりも多い第２の処理が実行されずにそれらの第２の予定時刻が経過した状態）になる前に第３の予定時刻を決定すればよい。
【００９７】
（変形例２１）
本発明は、上述した情報処理装置やサーバ装置、情報処理装置及びサーバ装置を備える情報処理システムの他にも、その情報処理装置が実施する処理を実現するための情報処理方法としても捉えられるものである。ここでいう処理とは、例えば、図５、図６、図７及び図８に示す第１、第２、第３の実行処理及び分散処理である。また、本発明は、情報処理装置を制御するコンピュータ（図１に示す制御装置１１）を、図３等の機能構成を示す図にそれぞれ示す各手段として機能させるためのプログラムや、サーバ装置を制御するコンピュータ（図２０に示す制御装置２１）を、図２１に示す各手段として機能させるためのプログラムとしても捉えられるものである。かかるプログラムは、これを記憶させた光ディスク等の記録媒体の形態で提供されたり、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、これをインストールして利用可能にするなどの形態で提供されたりするものであってもよい。
【符号の説明】
【００９８】
１…情報処理システム、２…ネットワーク、１０…情報処理装置、２０…サーバ装置、１１…制御装置、１２…音声入出力装置、１３…通信装置、１４…操作装置、１５…表示装置、１６…記憶装置、２１…制御装置、２２…通信装置、２３…記憶装置、１０１…記憶部、１０２…遷移部、１０３…決定部、１０４…実行部、１０５…取消部、１０６…第１蓄積部、１０７…第２蓄積部、１０８…第１変更部、１０９…第２変更部、２０１…取得部、２０２…指示部
【図１】
2014021628.tif 000003
【図２】
2014021628.tif 000004
【図３】
2014021628.tif 000005
【図４】
2014021628.tif 000006
【図５】
2014021628.tif 000007
【図６】
2014021628.tif 000008
【図７】
2014021628.tif 000009
【図８】
2014021628.tif 000010
【図９】
2014021628.tif 000011
【図１０】
2014021628.tif 000012
【図１１】
2014021628.tif 000013
【図１２】
2014021628.tif 000014
【図１３】
2014021628.tif 000015
【図１４】
2014021628.tif 000016
【図１５】
2014021628.tif 000017
【図１６】
2014021628.tif 000018
【図１７】
2014021628.tif 000019
【図１８】
2014021628.tif 000020
【図１９】
2014021628.tif 000021
【図２０】
2014021628.tif 000022
【図２１】
2014021628.tif 000023