(57)【要約】【課題】連携して動作すべきプログラムの実行準備期間中にアプリケーションプログラムが起動されることに起因するタイムアウトエラーの発生を効率よく防止することが可能な情報処理装置を実現する。【解決手段】ＡＶアプリケーションプログラム１０１は、その起動時に、オペレーティングシステム１０２が起動されてから現在までの経過時間を取得する。取得した経過時間が環境立ち上げ時間を超えているならば、ＡＶアプリケーションプログラム１０１は、通常のタイムアウト時間を用いてサービスプログラムの状態チェック処理を実行する。一方、取得した経過時間が環境立ち上げ時間内であるならば、ＡＶアプリケーションプログラム１０１は、通常のタイムアウト時間よりも長いタイムアウト時間を用いてサービスプログラムの状態チェック処理を実行する。【選択図】      図４
2008293204.tif 000002
【特許請求の範囲】
【請求項１】
所定のアプリケーションプログラムが起動された時、オペレーティングシステムが最後に起動されてからの経過時間を検出する検出手段と、
前記検出された経過時間が所定時間を超えている場合、第１のタイムアウト時間を選定し、前記検出された経過時間が前記所定時間以内である場合、前記第１のタイムアウト時間よりも長い第２のタイムアウト時間を選定するタイムアウト時間選定手段と、
前記所定のアプリケーションプログラムと連携して動作すべき所定のプログラムの状態をチェックするための状態チェック処理を実行し、前記状態チェック処理を開始してから前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に、前記所定のプログラムが実行状態であることが確認されなかった場合、エラーの発生を示すメッセージを出力するエラー出力手段とを具備することを特徴とする情報処理装置。
【請求項２】
前記タイムアウト時間選定手段は、前記検出された経過時間が前記所定時間以内である場合、前記所定時間までの残り時間と前記第１のタイムアウト時間との合計時間を算出し、前記算出された合計時間を前記第２のタイムアウト時間として選定することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記所定のアプリケーションプログラムは録画予約された放送番組データを録画するための予約録画機能を有しており、
前記所定のアプリケーションプログラムによって録画予約された放送番組データの録画開始時刻の所定時間前に、前記情報処理装置をパワーオンする手段と、
前記情報処理装置がパワーオンされたことに応答して、前記オペレーティングシステムを起動する手段と、
前記オペレーティングシステムの起動された後に前記所定のアプリケーションプログラムを起動する手段とをさらに具備することを特徴とする請求項１または２のいずれか１項記載の情報処理装置。
【請求項４】
前記エラー出力手段は、前記所定のプログラムが実行状態であることが確認されるまで、前記オペレーティングシステム上で動作する管理プログラムに対して前記所定のプログラムの状態を繰り返し問い合わせ、前記問い合わせを開始してから前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に前記所定のプログラムが実行状態であることが確認されなかった場合、前記エラーの発生を示すメッセージを出力することを特徴とする請求項１乃至３のいずれか１項記載の情報処理装置。
【請求項５】
所定のアプリケーションプログラムが起動された時、オペレーティングシステムが最後に起動されてからの経過時間を検出する検出手段と、
前記検出された経過時間が所定時間を超えている場合、第１のタイムアウト時間を選定し、前記検出された経過時間が前記所定時間以内である場合、前記第１のタイムアウト時間よりも長い第２のタイムアウト時間を選定するタイムアウト時間選定手段と、
前記所定のアプリケーションプログラムが当該所定のアプリケーションプログラムと連携して動作すべき所定のプログラムに対して要求を送信してから、前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に、前記所定のプログラムから応答が返送されない場合、エラーを示すメッセージを出力するエラー出力手段とを具備することを特徴とする情報処理装置。
【請求項６】
前記タイムアウト時間選定手段は、前記検出された経過時間が前記所定時間以内である場合、前記所定時間までの残り時間と前記第１のタイムアウト時間との合計時間を算出し、前記算出された合計時間を前記第２のタイムアウト時間として選定することを特徴とする請求項５記載の情報処理装置。
【請求項７】
情報処理装置によって実行される所定のアプリケーションプログラムの動作環境に関するエラーを検出するエラー検出方法であって、
前記所定のアプリケーションプログラムが起動された時、オペレーティングシステムが最後に起動されてからの経過時間を検出するステップと、
前記検出された経過時間が所定時間を超えている場合、第１のタイムアウト時間を選定し、前記検出された経過時間が前記所定時間以内である場合、前記第１のタイムアウト時間よりも長い第２のタイムアウト時間を選定するタイムアウト時間選定ステップと、
前記所定のアプリケーションプログラムと連携して動作すべき所定のプログラムの状態をチェックするための状態チェック処理を実行し、前記状態チェック処理を開始してから前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に、前記所定のプログラムが実行状態であることが確認されなかった場合、エラーの発生を示すメッセージを出力するステップとを具備することを特徴とするエラー検出方法。
【請求項８】
前記タイムアウト時間選定ステップは、前記検出された経過時間が前記所定時間以内である場合、前記所定時間までの残り時間と前記第１のタイムアウト時間との合計時間を算出し、前記算出された合計時間を前記第２のタイムアウト時間として選定することを特徴とする請求項７記載のエラー検出方法。
【請求項９】
情報処理装置によって実行される所定のアプリケーションプログラムの動作環境に関するエラーを検出するエラー検出方法であって、
前記所定のアプリケーションプログラムが起動された時、オペレーティングシステムが最後に起動されてからの経過時間を検出するステップと、
前記検出された経過時間が所定時間を超えている場合、第１のタイムアウト時間を選定し、前記検出された経過時間が前記所定時間以内である場合、前記第１のタイムアウト時間よりも長い第２のタイムアウト時間を選定するタイムアウト時間選定ステップと、
前記所定のアプリケーションプログラムが当該所定のアプリケーションプログラムと連携して動作すべき所定のプログラムに対して要求を送信してから、前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に、前記所定のプログラムから応答が返送されない場合、エラーを示すメッセージを出力するステップとを具備することを特徴とするエラー検出方法。
【請求項１０】
前記タイムアウト時間選定ステップは、前記検出された経過時間が前記所定時間以内である場合、前記所定時間までの残り時間と前記第１のタイムアウト時間との合計時間を算出し、前記算出された合計時間を前記第２のタイムアウト時間として選定することを特徴とする請求項９記載のエラー検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータのような情報処理装置および同装置に適用されるエラー検出方法に関する。
【背景技術】
【０００２】
近年、ＤＶＤ（Digital Versatile Disc）プレーヤ、ＴＶ装置、のようなオーディオ・ビデオ（ＡＶ）機器と同様のＡＶ機能を備えたパーソナルコンピュータが開発されている。
【０００３】
このようなパーソナルコンピュータにおいては、ＡＶ機能を実行するためのアプリケーションプログラム（ＡＶアプリケーションプログラム）がインストールされている。このＡＶアプリケーションプログラムは、様々な処理を効率良く実行できるようにするために、通常は、サービスプログラム、ドライバプログラムといった他の様々なプロクラムと連携して動作するように構成されている。
【０００４】
また、放送番組データの予約録画を実行可能なパーソナルコンピュータにおいては、放送番組データの録画開始時刻が到来する少し前に、録画処理を実行するためのアプリケーションプログラムを自動実行するための機能も設けられている。
【０００５】
アプリケーションプログラムを自動実行するための技術として、例えば、特許文献１には、情報取得のためのアプリケーションを起動すべき時間的条件を管理し、時間的条件を満足するときに当該アプリケーションを起動する、という機能を有する通信端末装置が開示されている。
【特許文献１】特開２００２−１９０８４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、パーソナルコンピュータにおいては、アプリケーションプログラムのみならず、他の多くのサービスプログラム、ドライバプログラム等も実行される。これらプログラムは、パーソナルコンピュータの起動時にオペレーティングシステムによって順次自動起動される。このため、パーソナルコンピュータの起動直後は実行状態になっておらず、しばらく経過した後に実行状態になるサービスプログラムやドライバプログラムも存在する。
【０００７】
したがって、パーソナルコンピュータが通常稼働状態の場合には何ら問題なく利用可能なサービスプログラムが、パーソナルコンピュータの起動直後においては利用することができないというケースが発生することも想定される。
【０００８】
通常、サービスプログラムと連携して動作するアプリケーションプログラムは、一定のタイムアウト時間だけサービスプログラムの実行開始待ちを行い、もしタイムアウト時間が経過してもサービスプログラムが実行状態とならない場合には、アプリケーションプログラムは当該アプリケーションプログラムが正常動作することが可能な環境ではないと判断して、タイムアウトエラーの発生を検出する。
【０００９】
したがって、もしアプリケーションプログラムがパーソナルコンピュータの起動直後に起動されたならば、実際にはもう少し待つとサービスプログラムが実行状態になるにもかかわらず、タイムアウトエラーとして扱われてしまうという状況が発生する場合がある。
【００１０】
また、録画処理を実行するためのアプリケーションプログラムについては、ユーザ操作によって起動されるだけでなく、録画予約された放送番組の録画開始時刻に従って自動的に起動されることもある。自動起動時には、録画開始時刻の少し前にパーソナルコンピュータが起動され、そしてその直後にアプリケーションプログラムが起動される。このため、連携して動作すべきプログラムの実行準備期間中にアプリケーションプログラムが起動されることに起因する上述のようなタイムアウトエラーが発生され易くなる。
【００１１】
本発明は上述の事情を考慮してなされたものであり、連携して動作すべきプログラムの実行準備期間中にアプリケーションプログラムが起動されることに起因するタイムアウトエラーの発生を効率よく防止することが可能な情報処理装置およびエラー検出方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述の課題を解決するため、本発明の情報処理装置は、所定のアプリケーションプログラムが起動された時、オペレーティングシステムが最後に起動されてからの経過時間を検出する検出手段と、前記検出された経過時間が所定時間を超えている場合、第１のタイムアウト時間を選定し、前記検出された経過時間が前記所定時間以内である場合、前記第１のタイムアウト時間よりも長い第２のタイムアウト時間を選定するタイムアウト時間選定手段と、前記所定のアプリケーションプログラムと連携して動作すべき所定のプログラムの状態をチェックするための状態チェック処理を実行し、前記状態チェック処理を開始してから前記選定された前記第１または第２のタイムアウト時間が経過するまでの期間中に、前記所定のプログラムが実行状態であることが確認されなかった場合、エラーの発生を示すメッセージを出力するエラー出力手段とを具備することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、連携して動作すべきプログラムの実行準備期間中にアプリケーションプログラムが起動されることに起因するタイムアウトエラーの発生を効率よく防止することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して、本発明の実施形態を説明する。  
まず、図１および図２を参照して、本発明の一実施形態に係る情報処理装置の構成を説明する。この情報処理装置は、例えば、ノートブック型の携帯型パーソナルコンピュータ１０から実現されている。
【００１５】
このコンピュータ１０は、放送信号によって放送される放送番組データの再生および録画を実行するＴＶ機能を有している。このＴＶ機能には、ユーザによって設定された録画予約にしたがって放送番組データを録画する予約録画機能も含まれている。また、コンピュータ１０は、ＤＶＤメディアやハードディスク等の記憶媒体に格納された映像および音声等のＡＶコンテンツを管理および再生するためのＡＶデータライブラリ機能を有しているこれらＴＶ機能およびＡＶデータライブラリ機能は、例えば、コンピュータ１０に予めインストールされているＡＶアプリケーションプログラムによって実現されている。
【００１６】
図１はコンピュータ１０のディスプレイユニットを開いた状態における斜視図である。本コンピュータ１０は、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。
【００１７】
ディスプレイユニット１２には、ＴＦＴ−ＬＣＤ（Thin Film Transistor Liquid Crystal Display）１７から構成される表示装置が組み込まれている。ディスプレイユニット１２は、コンピュータ本体１１に対して開放位置と閉塞位置との間を回動自在に取り付けられている。
【００１８】
コンピュータ本体１１は薄い箱形の筐体を有しており、その上面にはキーボード１３、本コンピュータ１０を電源オン／オフするためのパワーボタン１４、入力操作パネル１５、およびタッチパッド１６などが配置されている。
【００１９】
また、コンピュータ本体１１の正面には、本コンピュータ１０のＴＶ機能を遠隔制御する外部のリモコンユニットとの通信を実行するためのリモコンユニットインタフェース部２０が設けられている。リモコンユニットインタフェース部２０は、例えば、赤外線信号受信部などから構成されている。
【００２０】
次に、図２を参照して、本コンピュータ１０のシステム構成について説明する。
【００２１】
本コンピュータ１０は、図２に示されているように、ＣＰＵ１１１、ノースブリッジ１１２、メインメモリ１１３、グラフィクスコントローラ１１４、サウスブリッジ１１９、ＢＩＯＳ−ＲＯＭ１２０、ハードディスクドライブ（ＨＤＤ）１２１、光ディスクドライブ（ＯＤＤ）１２２、チューナ装置（受信デバイス）１２３Ａ，１２３Ｂ、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１２４、およびネットワークコントローラ１２５等を備えている。
【００２２】
ＣＰＵ１１１は本コンピュータ１０の動作を制御するために設けられたプロセッサであり、ハードディスクドライブ（ＨＤＤ）１２１からメインメモリ１１３にロードされる、オペレーティングシステム１０２、およびＡＶアプリケーションプログラム１０１のような各種アプリケーションプログラムを実行する。また、ＣＰＵ１１１は、様々なサービスプログラム、デバイスドライバプログラム、データベースサービスプログラム等も実行する。これらサービスプログラム、デバイスドライバプログラム、データベースサービスプログラム等は、オペレーティングシステム１０２の起動時に当該オペレーティングシステム１０２によって自動的に起動される。
【００２３】
ＡＶアプリケーションプログラム１０１は、放送番組データの再生および録画を制御するＴＶ機能、および記憶媒体に格納された映像および音声等のＡＶコンテンツを管理および再生するためのＡＶデータライブラリ機能等を実行するためのアプリケーションプログラムである。
【００２４】
ＴＶ機能の実行時においては、ＡＶアプリケーションプログラム１０１は、チューナデバイス１２３Ａ，１２３Ｂを制御して、放送信号によって放送される放送番組データ（ＴＶ放送番組）の再生および録画（予約録画を含む）を実行する。ＡＶアプリケーションプログラム１０１は、オペレーティングシステム１０２上で動作するように構成されている。また、ＡＶアプリケーションプログラム１０１は、様々なサービスプログラムやＳＱＬデータベースサービスプログラム等と連携して動作するように構成されており、さらに、各種デバイスドライバプログラムも利用する。このため、ＡＶアプリケーションプログラム１０１が正常動作するためには、ＡＶアプリケーションプログラム１０１と連携すべき上述の各種プログラムが実行状態になっていることが必要である。
【００２５】
ＡＶアプリケーションプログラム１０１と連携すべき各種プログラムは、オペレーティングシステム１０２に対して予め登録されている。この登録処理は、例えば、ＡＶアプリケーションプログラム１０１のインストール時にＡＶアプリケーションプログラム１０１のインストーラ等によって実行される。オペレーティングシステム１０２の起動時には、オペレーティングシステム１０２は、インストール済みのアプリケーションそれぞれの実行に必要な各種プログラム（サービスプログラム、デバイスドライバプログラム、ＳＱＬデータベースサービスプログラム、等）を順番に起動する。
【００２６】
コンピュータ１０が通常稼働状態である場合には、通常は、サービスプログラムやデバイスドライバプログラム等は実行状態になっているはずであるので、ＡＶアプリケーションプログラム１０１の実行に影響が生じることはない。しかし、サービスプログラムやデバイスドライバプログラム等がユーザ操作によって停止されているなどのケースもあるので、ＡＶアプリケーションプログラム１０１は、その起動時に、ＡＶアプリケーションプログラム１０１と連携して動作すべき、サービスプログラムのようなプログラムの状態をチェックするための状態チェック処理を実行する。もし、この状態チェック処理を開始してから直ぐに特定のプログラムが実行状態であることが確認できなかったならば、ＡＶアプリケーションプログラム１０１は、特定のプログラムが実行状態であることが確認されるのを、例えば、ユーザにストレスを与えない程度の所定のタイムアウト時間だけ待つ。このタイムアウト時間だけ待っても特定のプログラムが実行状態であることが確認されなかったならば、つまり、状態チェック処理を開始してからタイムアウト時間が経過するまでの期間中に、特定のプログラムが実行状態であることが確認されなかったならば、ＡＶアプリケーションプログラム１０１は、ＡＶアプリケーションプログラム１０１が正常に動作するために必要な動作環境が整っていないと判断し、エラーを示すメッセージ（エラーメッセージ）を出力する。
【００２７】
ユーザにストレスを与えない程度のタイムアウト時間（待ち時間）は、せいぜい数秒程度である。したがって、ＡＶアプリケーションプログラム１０１は、サービスプログラムのような特定のプログラムの実行開始を数秒程度しか待つことができない。ＡＶアプリケーションプログラム１０１がコンピュータ１０の起動直後、つまりオペレーティングシステム１０２の起動直後に起動された場合、その数秒程度の期間では、ＡＶアプリケーションプログラム１０１と連携する、サービスプログラム、デバイスドライバのような特定のプログラムの準備が間に合わない場合がある。この場合、もう少し待てばサービスプログラム、デバイスドライバのような特定のプログラムが実行状態になるにもかかわらず、エラーとして扱われてしまうという現象が発生する。
【００２８】
なお、もしタイムアウト時間を一意に長く設定してしまうと、本当に問題があってタイムアウトするような状況の場合には、エラーメッセージの表示までに多くの時間を要してしまうことになる。
【００２９】
そこで、本実施形態においては、ＡＶアプリケーションプログラム１０１には、タイムアウト時間の長さを自動調整する機能が設けられている。すなわち、ＡＶアプリケーションプログラム１０１が起動された時、ＡＶアプリケーションプログラム１０１は、サービスプログラム、デバイスドライバのようなプログラム群を起動する環境立ち上げ処理がオペレーティングシステム１０２によって既に完了されているか否かを判定し、その判定結果に従って、タイムアウト時間の長さを自動調整する。環境立ち上げ処理が完了されているか否かの判定には、オペレーティングシステム１０２が起動されてから、ＡＶアプリケーションプログラム１０１が起動されるまでの経過時間が用いられる。この経過時間がある一定時間を超えているならば、ＡＶアプリケーションプログラム１０１は、環境立ち上げ処理が完了していていると判断し、通常のタイムアウト時間を用いて状態チェック処理を行う。一方、経過時間が一定時間以内であれば、ＡＶアプリケーションプログラム１０１は、環境立ち上げ処理が完了していないと判断し、通常のタイムアウト時間よりも長いタイムアウト時間を用いて状態チェック処理を行う。
【００３０】
このように、本実施形態においては、オペレーティングシステム１０２が起動されてからの経過時間に応じてタイムアウト時間が自動的に調整される。したがって、オペレーティングシステム１０２の起動直後にＡＶアプリケーションプログラム１０１が起動された場合でも、上述のような、待ち時間の不足によるエラーの発生を抑制することが可能となる。
【００３１】
さらに、ＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１２０に格納されたＢＩＯＳ（Basic Input Output System）も実行する。ＢＩＯＳはハードウェア制御のためのプログラムである。
【００３２】
ノースブリッジ１１２はＣＰＵ１１１のローカルバスとサウスブリッジ１１９との間を接続するブリッジデバイスである。ノースブリッジ１１２には、メインメモリ１１３をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ１１２は、グラフィクスコントローラ１１４との通信を実行する機能も有している。
【００３３】
グラフィクスコントローラ１１４は本コンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７を制御する表示コントローラである。このグラフィクスコントローラ１１４はオペレーティングシステム１０２またはＡＶアプリケーションプログラム１０１によってビデオメモリ（ＶＲＡＭ）１１４Ａに書き込まれた画像データをＬＣＤ１７に表示する。サウスブリッジ１１９は、ＬＰＣ（Low Pin Count）バス上の各デバイス、およびＰＣＩ（Peripheral Component Interconnect）バス上の各デバイスを制御する。また、サウスブリッジ１１９は、ＨＤＤ１２１、ＯＤＤ１２２を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラを内蔵している。
【００３４】
さらに、サウスブリッジ１１９は、リアルタイムクロック（ＲＴＣ）１１９Ａを備えている。リアルタイムクロック（ＲＴＣ）１１９Ａは、現在日時（年、月、日、時、分、秒）を計時する時計モジュールとして機能する。リアルタイムクロック（ＲＴＣ）１１９Ａ内のレジスタ（ＲＴＣレジスタ）には、本コンピュータ１０を電源オンすべき時間（年、月、日、時、分、秒）を指定するアラーム時間をセットすることができる。リアルタイムクロック（ＲＴＣ）１１９Ａは、現在の時間が、ＢＩＯＳ等を介してＴＶアプリケーションプログラム１０１によってＲＴＣレジスタにセットされたアラーム時間に達したとき、本コンピュータ１０をパワーオンすべきことを示すパワーオンイベントの発生をＥＣ／ＫＢＣ１２４に通知する。このパワーオンイベントの発生に応答して、ＥＣ／ＫＢＣ１２４は、本コンピュータ１０をパワーオンする。
【００３５】
チューナデバイス１２３Ａ，１２３Ｂは、それぞれ放送信号によって放送される放送番組データを受信する受信デバイスである。本実施形態では、例えば、チューナデバイス１２３Ａは、アナログ放送信号によって放送される放送番組データを受信するアナログＴＶチューナから構成され、チューナデバイス１２３Ａは、地上波デジタル放送信号によって放送される放送番組データを受信するデジタルＴＶチューナから構成されている。
【００３６】
ＥＣ／ＫＢＣ１２４は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）１３およびタッチパッド１６を制御するためのキーボードコントローラとが集積された、１チップマイクロコンピュータである。ＥＣ／ＫＢＣ１２４は、ユーザによるパワーボタン１４の操作に応じて本コンピュータ１０をパワーオン／パワーオフする機能を有している。本コンピュータ１０の各コンポーネントに供給される動作電源は、本コンピュータ１０に内蔵されたバッテリ１２６、またはＡＣアダプタ１２７を介して外部から供給される外部電源から生成される。また、ＥＣ／ＫＢＣ１２４はリモコンユニットインタフェース部２０にも接続されている。
【００３７】
ＡＶアプリケーションプログラム１０１の制御は、ユーザによる、キーボード（ＫＢ）１３、タッチパッド（マウス）１６のような入力装置の操作のみならず、外部のリモコンユニットの操作によっても実行することができる。
【００３８】
ネットワークコントローラ１２５は有線または無線のネットワークに接続するための通信デバイスであり、インターネットなどの外部ネットワークとの通信を実行するために使用される。
【００３９】
次に、図３を参照して、ＡＶアプリケーションプログラム１０１の機能構成を説明する。
【００４０】
ＡＶアプリケーションプログラム１０１は、上述のＴＶ機能、ＡＶデータライブラリ機能を実行するためのプログラムモジュール群を有している。これらプログラムモジュール群は、サービスプログラム、ＳＱＬデータベースサービスプログラム、デバイスドライバプログラム等と連携して動作し、例えば、あるサービスプログラムとの間でメッセージ通信等を行うことによって、必要なサービスをサービスプログラムから受ける。
【００４１】
また、このＡＶアプリケーションプログラム１０１は、上述のタイムアウト時間自動調整機能を実行するためのプログラムモジュールとして、経過時間検出部２０１、タイムアウト時間選定部２０２、およびエラー出力部２０３を備えている。
【００４２】
ＡＶアプリケーションプログラム１０１がユーザ操作によってまたは上述の予約録画のための自動起動によって起動された時、経過時間検出部２０１は、オペレーティングシステム１０２が最後に起動されてから現在までの経過時間を検出する。コールドブートまたは再起動によってオペレーティングシステム１０２がスタートされると、オペレーティングシステム１０２は経過時間のカウントを開始する。経過時間検出部２０１は、オペレーティングシステム１０２に用意された例えばGetTickCountのようなＡＰＩを通じて、オペレーティングシステム１０２が最後に起動されてからの経過時間をオペレーティングシステム１０２から取得することができる。
【００４３】
タイムアウト時間選定部２０２は、経過時間検出部２０１によって検出された経過時間と予め決められた環境立ち上げ時間とを比較する。環境立ち上げ時間はオペレーティングシステム１０２が起動してから環境立ち上げ処理が完了するまでに要する時間の推定値であり、この値は、例えば、システム性能やオペレーティングシステム１０２の種類等に応じて予め決められている。経過時間が環境立ち上げ時間を超えている場合には、タイムアウト時間選定部２０２は、通常のタイムアウト時間（第１のタイムアウト時間）を使用すべきタイムアウト時間として選定する。一方、経過時間が環境立ち上げ時間以内であるならば、タイムアウト時間選定部２０２は、通常タイムアウト時間よりも長いタイムアウト時間（第２のタイムアウト時間）を使用すべきタイムアウト時間として選定する。
【００４４】
エラー出力部２０３は、ＡＶアプリケーションプログラム１０１と連携して動作すべきサービスプログラムのような所定のプログラムの状態チェック処理を実行する。状態チェック処理を開始してから、選定されたタイムアウト時間が経過するまでの期間中に、所定のプログラムが実行状態であることが確認されなかった場合、エラー出力部２０３は、エラーの発生またはそのエラーの内容等をユーザに通知するために、エラーの発生を示すメッセージ（エラーメッセージ）を出力する。エラーメッセージは例えばＬＣＤ１７の表示画面上に表示される。
【００４５】
次に、図４のフローチャートを参照して、ＡＶアプリケーションプログラム１０１の起動時に実行される処理手順を説明する。
【００４６】
ＡＶアプリケーションプログラム１０１が起動された時、ＡＶアプリケーションプログラム１０１は、まず、オペレーティングシステム１０２が起動されてから現在までの経過時間を取得する（ステップＳ１１）。このステップＳ１１では、GetTickCountのような取得要求メッセージがＡＶアプリケーションプログラム１０１からオペレーティングシステム１０２に送信され、オペレーティングシステム１０２によって管理されている経過時間を示す値がＡＶアプリケーションプログラム１０１に戻される。
【００４７】
次に、ＡＶアプリケーションプログラム１０１は、オペレーティングシステム１０２から取得した経過時間が上述の環境立ち上げ時間内であるか否かを判定する（ステップＳ１２）。環境立ち上げ時間は、例えば、５分程度に設定されている。
【００４８】
経過時間が環境立ち上げ時間を超えているならば（ステップＳ１２のＮＯ）、ＡＶアプリケーションプログラム１０１は、通常のタイムアウト時間（第１のタイムアウト時間）を選定し、状態チェック処理で使用すべきタイムアウト時間をその第１のタイムアウト時間に設定する（ステップＳ１３）。第１のタイムアウト時間は必要なサービスプログラム等が既に実行状態である場合を前提とした待ち時間であり、この値は、ユーザにストレスを与えないこと、およびメッセージ通信等によるディレイ等を考慮して、例えば５秒程度に設定されている。
【００４９】
一方、経過時間が環境立ち上げ時間以内であるならば（ステップＳ１２のＹＥＳ）、ＡＶアプリケーションプログラム１０１は、通常のタイムアウト時間（第１のタイムアウト時間）よりも長いタイムアウト時間（第２のタイムアウト時間）を選定し、状態チェック処理で使用すべきタイムアウト時間をその第２のタイムアウト時間に設定する（ステップＳ１４）。第２のタイムアウト時間は必要なサービスプログラム等を起動する処理が完了していない場合を前提とした待ち時間であり、この値は、サービスプログラム等の起動に要する時間を考慮して、例えば１〜２分程度に設定されている。
【００５０】
次に、ＡＶアプリケーションプログラム１０１は、必要なサービスプログラム等の所定のプログラムの状態をチェックするための状態チェック処理を実行する（ステップＳ１５）。そして、状態チェック処理を開始してから、設定されたタイムアウト時間が経過するまでの期間中に、所定のプログラムが実行状態であることが確認されなかった場合（ステップＳ１５のＹＥＳ）、ＡＶアプリケーションプログラム１０１は、ＡＶアプリケーションプログラム１０１の動作に必要な動作環境が整っていないと判断し、エラーメッセージを表示する（ステップＳ１６）。
【００５１】
例えば、あるサービスプログラムが実行状態であるか否かの判定は、例えば、図５に示すように、処理要求等の何らかの要求をＡＶアプリケーションプログラム１０１からサービスプログラムに送信してから当該サービスプログラムからＡＶアプリケーションプログラム１０１に応答が返送されるまでの待ち時間Ｔをカウントすることによって行うことが出来る。この待ち時間Ｔが設定されたタイムアウト時間を超えた場合、すなわち、サービスプログラムに対して要求を送信してからタイムアウト時間が経過するまでの期間中に応答が返送されない場合は、タイムアウトエラーの発生が検出される。
【００５２】
また、あるサービスプログラムが実行状態であるか否かの判定を、図６に示すように、サービスプログラムの状態を問い合わせることによって行うことも出来る。この場合、ＡＶアプリケーションプログラム１０１は、サービスプログラムが実行状態であることが確認されるまで、オペレーティングシステム１０２上で動作するサービス管理プログラムであるサービスマネージャに対して所定のサービスプログラムの状態を繰り返し問い合わせる。そして、ＡＶアプリケーションプログラム１０１は、問い合わせを開始してから所定のサービスプログラムが実行状態であることが確認されるまでの待ち時間Ｔをカウントする。この待ち時間Ｔが設定されたタイムアウト時間を超えた場合、すなわち、問い合わせを開始してからタイムアウト時間が経過するまでの期間中にサービスプログラムが実行状態であることが確認できなかった場合は、タイムアウトエラーの発生が検出される。
【００５３】
サービスマネージャは、各サービスプログラムについて、その状態（実行状態、停止状態、実行状態への移行処理途中の状態、停止状態への移行処理途中の状態、等）を管理しており、アプリケーションプログラムからの状態問い合わせに応じて、その問い合わせによって指定されたサービスプログラムの現在の状態をアプリケーションプログラムに通知する。サービスプログラムが実行状態とは、そのサービスプログラムのサービスが開始されており、アプリケーションプログラムからサービスプログラムを利用可能であることを意味している。
【００５４】
なお、ＡＶアプリケーションプログラム１０１と連携して動作すべきサービスプログラムが複数存在する場合であっても、それら複数のサービスプログラム同士の関連付けを予めオペレーティングシステム１０２に登録した場合には、それらサービスプログラム内の一つのサービスプログラムの状態のみをチェックすれば十分である。これは、基本的には、関連付けされたサービスプログラム群についてはその全てがオペレーティングシステム１０２によって起動され、あるサービスプログラムのみが起動され、他のサービスプログラムが起動されないという事態は生じないからである。
【００５５】
次に、図７のフローチャートを参照して、上述の第２のタイムアウト時間の値を適応的に調整する処理について説明する。
【００５６】
図４で説明した処理においては、第２のタイムアウト時間の値が予め決められている場合を想定したが、本例では、オペレーティングシステム１０２が起動されてからの経過時間が環境立ち上げ時間以内であった場合には、環境立ち上げ時間までの残り時間に基づいて第２のタイムアウト時間の値が算出される。
【００５７】
すなわち、オペレーティングシステム１０２から取得した経過時間が環境立ち上げ時間以内であった場合、ＡＶアプリケーションプログラム１０１は、まず、環境立ち上げ時間から経過時間を減算して、環境立ち上げ時間に達するまでの残り時間を算出する（ステップＳ２１）。次いで、ＡＶアプリケーションプログラム１０１は、算出した残り時間と通常のタイムアウト時間（第１のタイムアウト時間）との合計時間を算出し（ステップＳ２２）、その合計時間を第２のタイムアウト時間として設定する（ステップＳ２３）。
【００５８】
この処理により、少なくとも、オペレーティングシステム１０２が起動されてから環境立ち上げ時間分だけ経過する時点までは最終的なエラー判定は行われなくなるので、サービスプログラムの実行準備期間中にＡＶアプリケーションプログラム１０１が起動されることに起因するタイムアウトエラーの発生をより効率よく低減することが可能となる。
【００５９】
次に、図８のフローチャートを参照して、本コンピュータ１０がパワーオフされている状態からＴＶアプリケーションプログラム１０１が自動的に起動されるまでの一連の処理について説明する。
【００６０】
ＴＶアプリケーションプログラム１０１は、録画予約された放送番組データを指定する録画予約情報を格納するデータベースを管理している。このデータベースは、例えば、ＨＤＤ１２１内の所定の記憶領域に保存されている。ＴＶアプリケーションプログラム１０１は、例えば、ＢＩＯＳを通じて、予約録画すべき放送番組データの録画開始時刻の例えば１５分程度前の時刻を次回のパワーオン時刻としてＲＴＣ１１９Ａに設定する。
【００６１】
本コンピュータ１０がパワーオフされている状態で録画開始時刻の所定時間前（例えば１５分前）になると、ＲＴＣ１１９Ａからのパワーオンイベント等に応答してＥＣ／ＫＢＣ１２４が本コンピュータ１０を自動的にパワーオンする。そしてＢＩＯＳの制御の下に、本コンピュータ１０の各デバイスを初期化する処理等を含む自動電源オン処理（ステップＳ３１）が実行される。そして、本コンピュータ１０がパワーオンされたことに応答して、ＢＩＯＳは、オペレーティングシステム１０２を起動（ブート）するためのＯＳ起動処理を開始する（ステップＳ３２）。
【００６２】
オペレーティングシステム１０２が起動されると、オペレーティングシステム１０２内のスケジューリングプログラムなどの制御の下、各種サービスプログラムを起動する処理（ステップＳ３３，３４）や、ＡＶアプリケーションプログラム１０１を起動する処理（ステップＳ３５）等が実行される。
【００６３】
このように、ＡＶアプリケーションプログラム１０１を自動起動する場合においては、ＡＶアプリケーションプログラム１０１はオペレーティングシステム１０２の起動直後に起動される。ＡＶアプリケーションプログラム１０１が起動されると、ＡＶアプリケーションプログラム１０１は、図４のフローチャートで説明した処理を開始する。
【００６４】
ＡＶアプリケーションプログラム１０１が起動されたタイミングが環境立ち上げ処理の完了前であるならば、第２のタイムアウト時間が選定される。必要なサービスプログラムが実行状態であることが第２のタイムアウト時間内に確認されなかったならば、ＡＶアプリケーションプログラム１０１は、エラーメッセージを生じて、エラー終了する。一方、必要なサービスプログラムが実行状態であることが第２のタイムアウト時間内に確認されたたならば、ＡＶアプリケーションプログラム１０１は、録画予約された放送番組データの録画処理の準備を開始する。
【００６５】
以上のように、本実施形態によれば、オペレーティングシステムの起動からの経過時間に応じてタイムアウト時間を自動調整することにより、通常稼働状態の期間内にＡＶアプリケーションプログラム１０１が起動された場合には、通常のタイムアウト時間を使用し、オペレーティングシステムの起動直後にＡＶアプリケーションプログラム１０１が起動された場合には、通常のタイムアウト時間よりも長いタイムアウト時間を使用することができる。よって、連携して動作すべきプログラムの実行準備期間中にアプリケーションプログラムが起動されることに起因するタイムアウトエラーの発生を効率よく防止することが可能となる。
【００６６】
特に、録画予約された放送番組データの録画開始時刻に従ってコンピュータ１０が自動起動された場合には、オペレーティングシステム１０２の起動直後にＡＶアプリケーションプログラム１０１が起動される可能性が高いが、本実施形態のタイムアウト時間自動調整機能により、タイムアウトエラーの発生を効率よく防止することが可能となる。したがって、予約録画処理に失敗する可能性を大幅に低減することが可能となる。
【００６７】
なお、本実施形態のＡＶアプリケーションプログラム１０１の機能は全てソフトウェアによって実現することができるので、このソフトウェアをコンピュータ読み取り可能な記憶媒体を通じて、通常のコンピュータに導入するだけで、本実施形態と同様の効果を容易に実現することができる。
【００６８】
また、本実施形態の制御は、ＡＶアプリケーションプログラムに限らず、他のプログラムと連携して動作する全てのアプリケーションプログラムに対して適用することができる。
【００６９】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００７０】
【図１】本発明の一実施形態に係る情報処理装置の概観の例を示す斜視図。
【図２】図１の情報処理装置のシステム構成の例を示すブロック図。
【図３】図１の情報処理装置によって実行されるＡＶアプリケーションプログラムの機能構成の例を示すブロック図。
【図４】図３のＡＶアプリケーションプログラムによって実行される処理手順を示すフローチャート。
【図５】図３のＡＶアプリケーションプログラムによって実行されるタイムアウトエラー検出処理の例を示す図。
【図６】図３のＡＶアプリケーションプログラムによって実行されるタイムアウトエラー検出処理の他の例を示す図。
【図７】図３のＡＶアプリケーションプログラムによって実行されるタイムアウト時間算出処理の例を示すフローチャート。
【図８】図３のＡＶアプリケーションプログラムを自動起動する処理の手順の例を示すフローチャート。
【符号の説明】
【００７１】
１０１…ＡＶアプリケーションプログラム、１０２…オペレーティングシステム、１１１…ＣＰＵ、１２３Ａ，１２３Ｂ…チューナデバイス、２０１…経過時間検出部、２０２…タイムアウト時間選定部、２０３…エラー出力部。
【図１】
2008293204.tif 000003
【図２】
2008293204.tif 000004
【図３】
2008293204.tif 000005
【図４】
2008293204.tif 000006
【図５】
2008293204.tif 000007
【図６】
2008293204.tif 000008
【図７】
2008293204.tif 000009
【図８】
2008293204.tif 000010