(57)【要約】本発明は、サービスを継続的に実施することができる電子機器を提供することを目的とする。本発明の電子機器は、他の電子機器が保持するアプリケーションを認識するアプリ認識部と、アプリ認識部によって認識されたアプリケーションが他の電子機器において実行不能であるか否かを検出するアプリ実行不能検出部と、アプリ実行不能検出部によって実行不能と検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するアプリ実行判断部と、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断する代替アプリ保持判断部と、代替アプリケーションを実行するアプリ実行部とを備える。
2005076134.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器であって、
前記他の電子機器が保持するアプリケーションを認識するアプリ認識部と、
前記アプリ認識部によって認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するアプリ実行不能検出部と、
前記アプリ実行不能検出部によって実行不能と検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するアプリ実行判断部と、
実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断する代替アプリ保持判断部と、
前記代替アプリケーションを実行するアプリ実行部とを備える、電子機器。
【請求項２】
前記アプリ実行判断部は、前記アプリ実行不能検出部によって実行不能と検出されたアプリケーションに対する起動要求を検出するアプリ起動要求検出部を含み、
前記アプリ実行判断部は、前記アプリ起動要求検出部によって前記実行不能と検出されたアプリケーションに対する起動要求が検出された場合、前記代替アプリケーションを実行すると判断する、請求項１に記載の電子機器。
【請求項３】
前記代替アプリ保持判断部は、前記アプリ認識部によって認識された前記他の電子機器が保持するアプリケーションと同一の機能を有する同一機能アプリケーションが自機器内に保持されているか否かを判断して、前記他の電子機器が保持するアプリケーションと自機器内に保持されている同一機能アプリケーションとを対応付けた同一性テーブルを作成するアプリ同一性判定部を含み、
前記同一機能アプリケーションは、代替アプリケーションであり、
前記代替アプリ保持判断部は、前記アプリ同一性判定部によって作成された前記同一性テーブルに基づいて、前記代替アプリケーショが自機器内に保持されているか否かを判断する、請求項１に記載の電子機器。
【請求項４】
前記代替アプリ保持判断部は、前記アプリ認識部によって認識された前記他の電子機器が保持するアプリケーションに関連する機能を有する関連機能アプリケーションを、前記他の電子機器が保持するアプリケーションと対応付けて、関連テーブルを作成する関連アプリ判定部を含み、
前記関連機能アプリケーションは、代替アプリケーションであり、
前記代替アプリ保持判断部は、前記関連アプリ判定部によって作成された前記関連テーブルに基づいて、前記代替アプリケーションが自機器内に保持されているか否かを判断する、請求項１に記載の電子機器。
【請求項５】
前記アプリ実行判断部は、前記他の電子機器上で実行されているアプリケーションでの実行状態をアプリ実行状態情報として取得するアプリ実行状態取得部を含み、
前記アプリ実行判断部は、前記アプリ起動要求検出部によって前記実行不能と検出されたアプリケーションについての前記アプリ実行状態情報が前記アプリ実行状態取得部によって保持されている場合、前記代替アプリケーションを実行すると判断し、
前記アプリ実行部は、前記アプリ実行状態情報に基づいて、前記実行不能と検出されたアプリケーションを継続するように、前記代替アプリケーションを実行する、請求項１に記載の電子機器。
【請求項６】
前記アプリ実行判断部は、前記ネットワークに接続された他の電子機器に対して、前記代替アプリケーションを保持しているか否かを問い合わせ、前記代替アプリケーションを保持している他の電子機器と通信して、前記代替アプリケーションを自機器内で実行するか否かを判断する機器間起動調停部を含む、請求項１に記載の電子機器。
【請求項７】
アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器の処理方法であって、
前記他の電子機器が保持するアプリケーションを認識するステップと、
前記認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断するステップと、
前記代替アプリケーションを実行するステップとを備える、方法。
【請求項８】
アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器で実行されるプログラムであって、
前記他の電子機器が保持するアプリケーションを認識するステップと、
前記認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断するステップと、
前記代替アプリケーションを実行するステップとを備える、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、ネットワークに接続される電子機器に関し、より特定的には、ソフトウエアプログラム（アプリケーション）を実行することによってサービスを実施する電子機器に関する。
【背景技術】
【０００２】  ネットワークに接続された家電機器等の電子機器上で、アプリケーションを動作させるアプリケーション実行系の技術として、サンマイクロシステムズ（登録商標）社のＪＡＶＡ（登録商標）や、マイクロソフト（登録商標）社の．ＮＥＴ（ドットネット）などがある。【０００３】  これらの技術は、仮想マシンの仕組みを備えており、ネットワーク家電のＣＰＵ等のハードウエアに依存せずに同一のアプリケーションを動作させることができるので、サービスの実施のための共通プラットフォームとなることが期待されている。【０００４】  また、ネットワークを介してアプリケーションを実行する環境の自動設定を行う技術として、マイクロソフト（登録商標）社によって提唱されている技術であるＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）や、サンマイクロシステムズ（登録商標）社によって提唱されている技術であるＪｉｎｉ（ＴＭ）などが存在する。【０００５】  これらの技術の特徴として、ネットワークに機器を繋ぐだけで、ユーザが複雑な設定作業を行わなくともすぐにネットワーク機能を利用可能な状態にすることができる、という利便性をユーザに対して提供する、という事が挙げられる。【０００６】  ユーザの利用する機器からネットワークを介して、ユーザ要求に対応する機能を持つ機器を探し出すシステムの例として、特許文献１に示す技術が提案されている。【０００７】  サービスに関して何らかの障害が発生した場合に、サーバ機器によって復旧を実施するシステムの例として、特許文献２に示す技術が提案されている。【０００８】  また、ユーザの利用したい端末でサービスを実施できなかった場合に、代替となる機器を探し出し実施する方法の例として、特許文献３に示す技術が提案されている。
【特許文献１】特開２００３−１７８０３６号公報
【特許文献２】特開２００２−２４０３９号公報
【特許文献３】特開２００２−９４９１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】  家電機器は、アプリケーションの実行を行うことができない状態に陥ることが頻繁に起こる。【００１０】  代表的なケースは、機器の電源が切断される、（モバイル機器等において）バッテリが消費される、などの事態に陥った場合に、通電状態が確保できなくなる場合である。他には、同じ機器上で、優先度の高い他のアプリケーションが実行される場合、主に資源の欠乏の問題から別のアプリケーションの実行を行うことができなくなる場合がある。【００１１】  こういった状態に家電機器が陥ると、新たなサービスを家電機器によって実施しようとしても、アプリケーションの起動ができず、サービスの提供が不可能になる。また、たとえ、アプリケーションを実行中であっても、その実行を中断してサービスの提供を停止せざるを得なくなる。【００１２】  したがって、サービスの実施が不可能な状態に陥った機器に対して、家電機器がネットワークに接続されているという特性を利用し、サービス実施のための復旧を試みたり、そのサービスの代替実施手段を提供したりすることを目的にした技術を発明すべきである。【００１３】  特許文献１は、家電ネットワークシステムにおけるユーザ環境の変化やユーザ要求を考慮に入れたシステムを提案している。しかし、特許文献１は、上記のようなサービスの実施が不可能な状態に陥った場合の具体的な処理方法に関して、言及していない。したがって、サービスの実施の確実性を高めたい場合には、別途具体的な処理手段を実装する必要がある。【００１４】  また、特許文献２は、サービスの実施が不可能な状態に陥った場合、センターサーバが障害対策と復旧処理とを行うシステムについて述べている。しかし、これはあくまでセンターサーバの存在を前提としたものである。したがって、センターサーバの存在を仮定しない、例えば家電機器のピア・ツー・ピアのネットワーク構成のみを前提としたネットワークには、対応することができない。【００１５】  また、特許文献３は、利用予約した機器に不具合があり、サービスの実施が不可能な状態に陥った場合に、代替となる機器を探し出し利用予約を実施する方法について述べている。しかし、この方法では、予め機器の組み合わせによって、代替アクションの登録を行っておく必要がある。また、特許文献３は、何らかのサービスの実施の最中に、そのサービスの継続が不可能な状態に陥った場合に、そのサービスを継続するための対応に関して、言及していない。【００１６】  上記のように、センターサーバによる集中管理方式を前提としない、機器同士のみにより構成されたネットワーク上でも、可能な限りユーザの手を煩わせることなく、サービスの安定性を確保することを目的とする技術に関しては、とりわけ、何らかのサービスの実施中にそのサービスの継続が不可能な状態に陥った場合の復旧手段に関しては、これまでは有効な手段が考えられてはいなかった。【００１７】  それゆえ、本発明の目的は、機器同士のみにより構成されたネットワーク上においても、サービスを継続的に実施することができる電子機器を提供することである。また、本発明の目的は、当該電子機器で実行されるプログラム、方法、当該プログラムを記録した記録媒体を提供することである。
【課題を解決するための手段】
【００１８】  上記課題を解決するために、本発明は、以下のような特徴を有する。本発明は、アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器であって、他の電子機器が保持するアプリケーションを認識するアプリ認識部と、アプリ認識部によって認識されたアプリケーションが他の電子機器において実行不能であるか否かを検出するアプリ実行不能検出部と、アプリ実行不能検出部によって実行不能と検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するアプリ実行判断部と、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断する代替アプリ保持判断部と、代替アプリケーションを実行するアプリ実行部とを備える。【００１９】  好ましくは、アプリ実行判断部は、アプリ実行不能検出部によって実行不能と検出されたアプリケーションに対する起動要求を検出するアプリ起動要求検出部を含み、アプリ実行判断部は、アプリ起動要求検出部によって実行不能と検出されたアプリケーションに対する起動要求が検出された場合、代替アプリケーションを実行すると判断するとよい。【００２０】  好ましくは、代替アプリ保持判断部は、アプリ認識部によって認識された他の電子機器が保持するアプリケーションと同一の機能を有する同一機能アプリケーションが自機器内に保持されているか否かを判断して、他の電子機器が保持するアプリケーションと自機器内に保持されている同一機能アプリケーションとを対応付けた同一性テーブルを作成するアプリ同一性判定部を含み、同一機能アプリケーションは、代替アプリケーションであり、代替アプリ保持判断部は、アプリ同一性判定部によって作成された同一性テーブルに基づいて、代替アプリケーションが自機器内に保持されているか否かを判断するとよい。【００２１】  好ましくは、代替アプリ保持判断部は、アプリ認識部によって認識された他の電子機器が保持するアプリケーションに関連する機能を有する関連機能アプリケーションを、他の電子機器が保持するアプリケーションと対応付けて、関連テーブルを作成する関連アプリ判定部を含み、関連機能アプリケーションは、代替アプリケーションであり、代替アプリ保持判断部は、関連アプリ判定部によって作成された関連テーブルに基づいて、代替アプリケーションが自機器内に保持されているか否かを判断するとよい。【００２２】  好ましくは、アプリ実行判断部は、他の電子機器上で実行されているアプリケーションでの実行状態をアプリ実行状態情報として取得するアプリ実行状態取得部を含み、アプリ実行判断部は、アプリ起動要求検出部によって実行不能と検出されたアプリケーションについてのアプリ実行状態情報がアプリ実行状態取得部によって保持されている場合、代替アプリケーションを実行すると判断し、アプリ実行部は、アプリ実行状態情報に基づいて、実行不能と検出されたアプリケーションを継続するように、代替アプリケーションを実行するとよい。【００２３】  好ましくは、アプリ実行判断部は、ネットワークに接続された他の電子機器に対して、代替アプリケーションを保持しているか否かを問い合わせ、代替アプリケーションを保持している他の電子機器と通信して、代替アプリケーションを自機器内で実行するか否かを判断する機器間起動調停部を含むとよい。【００２４】  また、本発明は、アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器の処理方法であって、他の電子機器が保持するアプリケーションを認識するステップと、認識されたアプリケーションが他の電子機器において実行不能であるか否かを検出するステップと、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するステップと、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断するステップと、代替アプリケーションを実行するステップとを備える。【００２５】  また、本発明は、アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器で実行されるプログラムであって、他の電子機器が保持するアプリケーションを認識するステップと、認識されたアプリケーションが他の電子機器において実行不能であるか否かを検出するステップと、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションを実行するか否かを判断するステップと、実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断するステップと、代替アプリケーションを実行するステップとを備える。
【発明の効果】
【００２６】  本発明によれば、ネットワーク上に存在するある電子機器が備えているアプリケーションの実行が不可能になり、サービスが不能の状態に陥ったとしても、代替となるアプリケーションが実行されることによって、サービスが自動継続されることとなる。したがって、ネットワーク上において、サービスが安定的に提供されることとなる。【００２７】  実行が不能となったアプリケーションと同一の機能を有するアプリケーションが存在すれば、実行が不能となったサービスと同等のサービスが継続して提供されることとなる。【００２８】  実行が不能となったアプリケーションに関連する機能を有するアプリケーションが存在すれば、実行が不能となったサービスと類似のサービスあるいは実行が不能となったサービスを補佐するサービスが実行されることとなり、サービスの利便性・柔軟性が向上する。【００２９】  電子機器は、アプリケーションへの起動要求を検出するだけで、アプリケーションが実行不能となっているか否かを認識することができる。したがって、アプリケーションの実行不能状態の検出が容易となる。【００３０】  また、電子機器は、実行不能となったアプリケーションの途中の状態を継続して代替アプリケーションを実行することができるので、サービスの継続性が向上する。【００３１】  ネットワーク上の複数の電子機器が代替アプリケーションを保持している場合、機器間で調停が行われて、適切な電子機器が代替アプリケーションを実行することとなるので、ネットワーク上の資源が有効に利用されることとなる。【００３２】  以上のように、本発明によれば、センターサーバのような集中管理方式を前提としていないネットワーク上の電子機器でも、サービスの高い安定性を確保することができることとなる。【００３３】  本発明のこれらおよび他の目的、特徴、局面、効果は、添付図面と照合して、以下の詳細な説明から一層明らかになるであろう。
【図面の簡単な説明】
【００３４】
【図１】図１は、本発明の第１の実施形態に係る電子機器を備えるシステム全体の構成を示す図である。
【図２】図２は、本発明の第１の実施形態に係る電子機器１〜５のハードウエア的構成を示す図である。
【図３】図３は、アプリ属性情報の実現例をテーブル形式で示す図である。
【図４】図４は、アプリ継続プログラムを実行したときの電子機器の機能的構成を示すブロック図である。
【図５】図５は、アプリ継続プログラムを実行したときの電子機器１の動作の概略を示すフローチャートである。
【図６】図６は、アプリ同一性判定部１５１の動作を示すフローチャートである。
【図７】図７は、同一性テーブルの一例を示す図である。
【図８】図８は、ユーザによって関連テーブルが登録されるときの処理手順を説明するための図である。
【図９】図９は、関連テーブルの一例を示す図である。
【図１０】図１０は、アプリ実行不能検出部１３の動作の一例を示すフローチャートである。
【図１１】図１１は、第１の基本処理を実行するときの電子機器１の動作を示すフローチャートである。
【図１２】図１２は、第２の基本処理を実行するときの電子機器１の動作を示すフローチャートである。
【図１３】図１３は、第３の基本処理を実行するときの電子機器１の動作を示すフローチャートである。
【図１４】図１４は、第４の基本処理を実行するときの電子機器１の動作を示すフローチャートである。
【図１５】図１５は、第２の実施形態に係るアプリ継続プログラムを実行したときの電子機器１および３の機能的構成を示すブロック図である。
【図１６】図１６は、第１の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。
【図１７】図１７は、第２の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。
【図１８】図１８は、第３の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。
【図１９】図１９は、第４の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。
【図２０】図２０は、代替アプリケーションの起動可否判定処理（ステップＳ７０１，Ｓ８０１，Ｓ９０１，Ｓ１００１）における電子機器１の詳しい動作を示すフローチャートである。
【図２１】図２１は、代替アプリケーションの起動可否判定処理（ステップＳ７０１，Ｓ８０１，Ｓ９０１，Ｓ１００１）におけるネットワーク上の電子機器間の通信を示すシーケンス図である。
【図２２】図２２は、起動調停情報のテーブル形式の一例を示す図である。
【符号の説明】
【００３５】１〜５  電子機器
６  ネットワーク
１００  中央処理装置
１０１  主記憶装置
１０２  補助記憶装置
１０３  通信装置
１０４  入力装置
１０５  出力装置
１１  タイミング制御部
１２  アプリ認識部
１３  アプリ実行不能検出部
１４  アプリ実行判断部
１４１  アプリ起動要求検出部
１４２  アプリ実行状態取得部
１５  代替アプリ保持判断部
１５１  アプリ同一性判定部
１５２  関連アプリ判定部
１６  アプリ実行部
７ａ，７ｂ，７ｃ，７ｄ  ユーザインタフェース
２０  機器間起動調停部
【発明を実施するための最良の形態】
【００３６】  以下、図面を参照しながら、本発明の実施形態について説明する。
（第１の実施形態）
図１は、本発明の第１の実施形態に係る電子機器を備えるシステム全体の構成を示す図である。図１において、電子機器１〜５は、ネットワーク６を介して、相互に通信可能に接続されている。【００３７】  本発明の電子機器は、少なくとも２以上の電子機器がネットワークを介して接続された環境下において適用されるものである。したがって、図１では、電子機器は、５つであるとしたが、２以上４以下であってもよいし、６以上であってもよい。【００３８】  ネットワーク６の通信規格は、接続された電子機器間でデータの通信が可能なものであれば何でもよい。また、ネットワーク６は、インターネットのようなパブリックなネットワークであっても、ＬＡＮのように限られたドメインの中で閉じられたネットワークであっても良いし、その両者の組合せからなっていても良い。【００３９】  図２は、本発明の第１の実施形態に係る電子機器１〜５のハードウエア的構成を示す図である。以下、代表して、電子機器１について説明する。図２において、電子機器１は、中央処理装置１００と、主記憶装置１０１と、補助記憶装置１０２と、通信装置１０３と、入力装置１０４と、出力装置１０５とを備える。なお、電子機器１がパーソナルコンピュータのような汎用的な機器であれば、図２に示す各ブロックは、別々の集積回路やデバイスによって実現されることが多い。しかし、電子機器１が携帯電話やネット家電のような専用の機器であれば、図２に示す各ブロックは、専用の集積回路上に形成されることもある。【００４０】  中央処理装置１００は、電子機器１の動作を制御する。中央処理装置１００は、電子機器１の動作を制御するための機能をそれ自身に持っていてもよいし、補助記憶装置１０２に格納されているプログラム（ファームウエアやソフトウエア）を主記憶装置１０１に読み込んで、当該プログラムを実行することによって電子機器１の動作を制御してもよい。また、中央処理装置１００は、電子機器１の物理層またはＭＡＣ層等の下位層を実現するためのハード構成を備えている。【００４１】  主記憶装置１０１は、読み出しおよび書き込み可能なメモリであって、中央処理装置１００での動作に必要な情報を格納する【００４２】  補助記憶装置１０２は、フラッシュメモリやハードディスク、光ディスク等を記録媒体とする記憶装置である。補助記憶装置１０２には、電子機器１で実行されるアプリケーションに関するプログラム（以下、単にアプリケーションという）が格納されている。アプリケーションには、アプリケーションの属性を示す固有の情報として、アプリ属性情報が付加されている。また、補助記憶装置１０２には、本発明のアプリ継続プログラムが格納されている。アプリ継続プログラムは、他の電子機器で実行されていたアプリケーションの代わりとなるアプリケーション（以下、代替アプリケーションという）を、電子機器１において実行すべきか否かを判断するためのプログラムである。アプリ継続プログラムは、中央処理装置１００によって主記憶装置１０１に読み込まれ、中央処理装置１００によって実行されることによって、本発明の動作が実現される。アプリ継続プログラムは、電子機器内に予め記憶されているファームウエアであってもよいし、後で電子機器内に記憶されたソフトウエアであってもよい。アプリ継続プログラムは、コンピュータ読み取り可能な記録媒体に格納されており、当該記録媒体から補助記憶装置１０２に格納されてもよい。また、アプリ継続プログラムは、ネットワーク６を介して他の電子機器からダウンロードして、補助記憶装置１０２に格納されてもよい。代替アプリケーションには、他の電子機器で実行されていたアプリケーションと同一の機能を有する同一機能アプリケーションと、他の電子機器で実行されていたアプリケーションに関連する機能を有する関連機能アプリケーションとがある。関連機能アプリケーションは、他の電子機器で実行されていたアプリケーションによって提供されるサービスと類似のサービスを提供することができるアプリケーション、あるいは他の電子機器で実行されていたアプリケーションを補佐するサービスを提供することができるアプリケーションである。【００４３】  たとえば、電子機器１で実行されるアプリケーションがＪＡＶＡ（登録商標）アプリケーションである場合、アプリケーションに関するプログラムは、ＪＡＲファイルとなる。【００４４】  アプリ属性情報とは、アプリケーションの名称、アプリケーションの取得元、アプリケーションを動作させるために必要なプロファイルの情報など、アプリケーションの特徴を示した情報のことをいう。【００４５】  例えば、ＪＡＶＡ（登録商標）のモバイル機器向けの標準プロファイルであるＭＩＤＰプロファイルに準拠したＪＡＶＡ（登録商標）アプリケーションにおいて、アプリ属性情報は、ＪＡＤファイルに記述されることによって提供される。しかし、ＪＡＤファイルのようなアプリ属性情報が提供されない場合でも、電子機器１は、ＪＡＶＡ（登録商標）アプリケーションの本体であるＪＡＲファイルを解析することによって、アプリ属性情報として、アプリケーションのサイズなどの情報を取得することができる。【００４６】  図３は、アプリ属性情報の実現例をテーブル形式で示す図である。図３において、それぞれのエントリには、アプリケーションの属性を示す情報が登録されている。図３に示したそれぞれのエントリについて説明する。【００４７】  アプリケーション名には、アプリケーションに与えられた名称が記述されている。【００４８】  アプリケーションの取得元には、電子機器に対するアプリケーションの配布元が記述されている。図３では、アプリケーションの取得元がＵＲＬ形式で記述されているが、もちろん、他の情報で記述されていてもよい。【００４９】  メインクラス名には、アプリケーションを開始する際に最初に呼ばれるメソッドであるｍａｉｎメソッドを実装したクラス名が記述されている。【００５０】  必要プロファイルには、アプリケーションを動作させるために必要な、コンフィグレーション、プロファイル、およびライブラリ等の情報が記述されている。【００５１】  必要リソースには、アプリケーションを動作させるために必要な資源量が記述されている。【００５２】  最終更新日には、アプリケーションを最後に更新した日時が記述されている。【００５３】  バージョン番号には、アプリケーションに与えられたバージョン管理番号が記述されている。【００５４】  アプリケーションサイズには、アプリケーションの本体（ＪＡＶＡ（登録商標）の場合、ＪＡＲファイル）のサイズが記述されている。【００５５】  アプリケーション作成者には、アプリケーションの作成者を示すための識別情報が記述されている。図３では、作成者の名称を示す文字列が記述されているが、もちろん他の情報であっても良い。【００５６】  代替可能アプリケーションには、他のアプリケーションを特定するための情報が記述されている。このエントリは、もし実行中のアプリケーションが中断してしまった場合、本エントリに記録されたアプリケーションが、中断したアプリケーションの実行状態を引き継いで、代わりにサービスを継続可能であることを示す。このエントリがどのように使用されるかに関しては、後述する。【００５７】  被代替可能アプリケーションには、他のアプリケーションを特定するための情報が記述されている。このエントリは、このエントリに記述された情報に対応するアプリケーションがもし実行中に中断してしまった場合、アプリケーション名に記述されているアプリケーションが、被代替可能アプリケーションの実行状態を引き継いでサービスを継続可能であることを示す。このエントリがどのように使用されるかに関しては後述する。【００５８】  当然、図３は、アプリ属性情報の実現例の一つである。図３の示したテーブルのエントリの内、一部がなくてもよいし、あるいは他の属性の情報を示すエントリが含まれていてもよい。【００５９】  通信装置１０３は、ネットワーク６に接続された他の電子機器との間でデータを送受信するための機能を有する。本発明において、通信装置１０３での変復調方式やメディアアクセス方式等の通信方式は、何でもよく、特に限定されるものではない。【００６０】  入力装置１０４は、ボタンスイッチやキーボード、マウス、タッチパネル等、ユーザによる操作を入力するための装置である。【００６１】  出力装置１０５は、液晶ディスプレイやスピーカ等、中央処理装置１００における処理結果を出力するための装置である。【００６２】  図４は、アプリ継続プログラムを実行したときの電子機器の機能的構成を示すブロック図である。なお、本実施形態において、電子機器１〜５の内、少なくとも一つの電子機器がアプリ継続プログラムを実行できればよい。ここでは、説明を簡単にするために、電子機器１がアプリ継続プログラムを実行するものとし、電子機器２がアプリケーションを実行するものとし、電子機器２で実行されていたアプリケーションを電子機器１が継続して実行するものとする。先述のように、代替アプリケーションには、同一機能アプリケーションと関連機能アプリケーションとがある。本実施形態において、電子機器１は、同一機能アプリケーションが存在すれば、同一機能アプリケーションを実行し、同一機能アプリケーションが存在しなければ、関連機能アプリケーションを実行するとしてもよいし、予め代替アプリケーションとして、同一機能アプリケーションを実行すると決めていてもよいし、関連機能アプリケーションを実行すると決めていてもよい。なお、ここでは、プログラムを実行することによって、図４に示す機能ブロックをソフト的に実現することとしたが、図４に示す��能ブロックをハード的に実現してもよいことは言うまでもない。【００６３】  図４において、電子機器１は、タイミング制御部１１と、アプリ認識部１２と、アプリ実行不能検出部１３と、アプリ実行判断部１４と、代替アプリ保持判断部１５と、アプリ実行部１６とを備える。【００６４】  図５は、アプリ継続プログラムを実行したときの電子機器１の動作の概略を示すフローチャートである。以下、図５を参照しながら、アプリ継続プログラムを実行したときの電子機器１の動作の概略について説明する。【００６５】  タイミング制御部１１によって所定のタイミングが到来したと判断された場合、アプリ認識部１２は、他の電子機器が保持するアプリケーションを認識する（ステップＳ１）。【００６６】  次に、タイミング制御部１１によって所定のタイミングが到来したと判断された場合、アプリ実行不能検出部１３は、アプリ認識部１２によって認識された他の電子機器が保持するアプリケーションが実行不能であるか否かを検出する（ステップＳ２）。【００６７】  アプリ実行不能検出部１３によって実行不能であるアプリケーションが検出された場合、アプリ実行判断部１４は、当該実行不能であるアプリケーションの代わりに代替アプリケーションを実行すべきであるか否かを判断する（ステップＳ３）。【００６８】  アプリ実行判断部１４によって代替アプリケーションを実行すべきであると判断された場合、代替アプリ保持判断部１５は、電子機器１に代替アプリケーションが保持されているか否かを判断する（ステップＳ４）。【００６９】  代替アプリ保持判断部１５によって代替アプリケーションが保持されていると判断された場合、アプリ実行部１６は、当該代替アプリケーションを実行する（ステップＳ５）。【００７０】  以下、各機能ブロックの詳細な動作について説明する。【００７１】  アプリ実行部１６は、アプリケーションを解釈して実行する。なお、ここでは、アプリ継続プログラムが実行されることによって、アプリ実行部１６の機能が実現されるとしているが、アプリ実行部１６は、アプリ継続プログラムが実行されなくても、電子機器内に備わっている機能である。したがって、アプリ実行部１６は、代替アプリケーションを実行することを電子機器内に備わっている機能（別なプログラム）に命令するものであってもよい。なお、ここでは、電子機器１がアプリ継続プログラムを実行するとしている。アプリ継続プログラムを実行しない電子機器２には、最低限、アプリケーションを実行するために、アプリ実行部１６が備わっている必要がある。【００７２】  アプリ実行部１６は、アプリケーションを解釈して実行することが可能であればよく、アプリケーションを実行するための環境は特に限定されない。たとえば、アプリ実行部１６は、例えばＪＡＶＡ（登録商標）仮想マシン、．ＮＥＴ実行環境、ＫＤＤＩ（登録商標）社製の携帯電話において採用されているプログラム配信実行環境であるＢＲＥＷなど、既存の環境によって実現される。【００７３】  本実施形態において、例示が必要な場合、アプリ実行部１６は、ＪＡＶＡ（登録商標）仮想マシン環境によって実現されるとし、アプリケーションは、ＪＡＶＡ（登録商標）アプリケーションであるとする���【００７４】  アプリ実行部１６は、あるアプリケーションを新たに起動できるか否かの可否判定を行うことができる能力を有する。そのため、アプリ実行部１６は、自身の機器内において使用することができるハードウエアの空き資源量の情報を取得できる。空き資源量とは、例えば電子機器１のメモリにおけるアプリケーション実行用に割り当てられた容量の内、どの動作中のアプリケーションからも占有されておらず、新たなアプリケーションを動作させるために使用可能な容量などのことである。【００７５】  アプリ実行部１６は、使用することができる電子機器内での資源量を監視することによって、当該可否判定を行うことができる。たとえば、アプリ実行部１６がＪＡＶＡ（登録商標）仮想マシンで実現される場合、ＪＡＶＡ（登録商標）仮想マシンの保持するヒープメモリ全体の使用量・未使用量、アプリケーション毎のヒープメモリの使用量など、ヒープメモリの使用状況を記録するレジスタ（図示せず）を設け、必要に応じて（例えばアプリケーション起動前、アプリケーションの動作中、アプリケーションの開放時など）レジスタの記録情報を調べるレジスタ記録情報調査手段（図示せず）を設けることによって、アプリ実行部１６は、使用できる資源量の監視を実現することができる。【００７６】  アプリケーションが、アプリ属性情報として「アプリケーションを動作させるために必要な資源量」の情報を保持していれば、アプリ実行部１６は、自身の機器内において使用することができるハードウエアの空き資源量の情報と「アプリケーションを動作させるために必要な資源量」の情報とを比較することによって、アプリケーションを動作可能であるか否かの可否判定を行うことができる。【００７７】  また、アプリ実行部１６は、アプリケーションの実行中に、そのアプリケーションの途中の実行状態を示す情報（以下、アプリ実行状態情報という）を出力することができる能力を有する。【００７８】  アプリ実行状態情報の具体例として、将棋のゲームを行うアプリケーションを考える。アプリケーションは、通常、ゲームを始めたらゲームが終わるまで休みなく実行される。しかし、ゲームを途中で中断して後で再開したい場合、中断する時点でのプレイヤーの駒の位置や持ち駒の情報が記録される必要がある。このように、アプリ実行状態情報とは、アプリケーションの実行の途中の状態を示す情報である。アプリ実行状態情報には、アプリケーションの実行を中断した後で再開するために必要な情報が含まれている。【００７９】  アプリケーションがＪＡＶＡ（登録商標）アプリケーションである場合、実行中のオブジェクトが、アプリ実行状態情報として記録される。【００８０】  実行中のオブジェクトの状態を出力する手段として、ＪＡＶＡ（登録商標）では、シリアライズがサポートされている。シリアライズとは、オブジェクトが持つ属性の値や構造を、バイト列で扱える形に変換することである。すなわち、シリアライズによって、複雑な構造を持った実行途中のアプリケーションの状態を示すデータ等が、バイト列のストリームやファイル形式で出力されることとなる。当該バイト列が、アプリ実行状態情報とされる。【００８１】  もちろん、オブジェクトをバイト列に変換するシリアライズの機能を用いなくとも、アプリケーションは、他のフォーマットによって、アプリ実行状態情報を出力する手段を保持していても良い。例えば、多くのゲームアプリケーションは、ゲームの途中経過（アプリ実行状態情報）を何らかのフォーマットで記述する能力を保持している。アプリ実行状態情報は、例えばＸＭＬやＨＴＭＬなど、汎用性を持ったフォーマットで記述されていてもよいし、アプリケーション独自で定義したフォーマットを用いていて記述されていても良い。【００８２】  アプリ認識部１２は、ネットワーク６を介して相互に通信可能に接続された他の電子機器が保持するアプリケーションの特徴を取得する能力を有する。アプリ認識部１２は、他の電子機器が保持するアプリケーションのアプリ属性情報を、ネットワーク６を介して取得することによって、他の電子機器が保持するアプリケーションの特徴を取得することができる。【００８３】  代替アプリ保持判断部１５は、アプリ認識部１２によって認識された他の電子機器が保持するアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断する。代替アプリ保持判断部１５は、アプリ同一性判定部１５１と、関連アプリ判定部１５２とを含む。【００８４】  アプリ同一性判定部１５１は、アプリ認識部１２によって認識された他の電子機器が保持するアプリケーションのアプリ属性情報と、自機器の保持するアプリケーションのアプリ属性情報とを比較して、自機器内に同一機能アプリケーションが保持されているか否かを判定し、他の電子機器が保持するアプリケーションと自機器が保持する同一機能アプリケーションとを対応つけるテーブル（以下、同一性テーブルという）を作成して、記憶する。【００８５】  関連アプリ判定部１５２は、他の電子機器が保持するアプリケーションと自機器が保持する関連機能アプリケーションとを対応つけるテーブル（以下、関連テーブルという）を作成して記憶する。【００８６】  代替アプリ保持判断部１５は、アプリ実行不能検出部１３によって、他の電子機器でのアプリケーションの実行不能が検出されたら、当該実行不能のアプリケーションの代わりに実行される代替アプリケーションが自機器内に保持されているか否かを、同一性テーブルおよび／または関連テーブルを参照して、判断する。【００８７】  図６は、アプリ同一性判定部１５１の動作を示すフローチャートである。以下、図６を参照しながら、同一性テーブルが作成される手順について説明する。図６では、自機器内のアプリケーションをアプリケーションＡとし、アプリ認識部１２によって認識された他の電子機器内のアプリケーションをアプリケーションＢとする。【００８８】  まず、アプリ同一性判定部１５１は、アプリケーションＡのアプリ属性情報とアプリケーションＢのアプリ属性情報のそれぞれから「アプリケーションの名称」を取得する（ステップＳ１０１）。【００８９】  次に、アプリ同一性判定部１５１は、両方のアプリ属性情報から、比較対象の情報として、「アプリケーションの名称」を正常に取得できたか否かを判断する（ステップＳ１０２）。アプリケーションＡおよびＢのいずれからも比較対照の情報として「アプリケーショ��の名称」を取得できなかった場合、アプリ同一性判定部１５１は、両アプリケーションの同一性を確認できなかったものとして、ステップＳ１０８の動作に進む。一方、「アプリケーションの名称」を正常に取得できた場合、アプリ同一性判定部１５１は、ステップＳ１０３の動作に進む。【００９０】  ステップＳ１０３において、アプリ同一性判定部１５１は、両方のアプリ属性情報の「アプリケーションの名称」は、一致するか否かを判断する。「アプリケーションの名称」が一致しない場合、アプリ同一性判定部１５１は、両アプリケーションの同一性を確認できなかったものとして、ステップＳ１０８の動作に進む。一方、「アプリケーションの名称」が一致する場合、アプリ同一性判定部１５１は、ステップＳ１０４の動作に進む。【００９１】  ステップＳ１０４において、アプリ同一性判定部１５１は、アプリケーションＡのアプリ属性情報とアプリケーションＢのアプリ属性情報のそれぞれから、「アプリケーションの作成者」を取得する。【００９２】  次に、アプリ同一性判定部１５１は、両方のアプリ属性情報から、比較対象の情報として、「アプリケーションの作成者」を正常に取得できたか否かを判断する（ステップＳ１０５）。アプリケーションＡおよびＢのいずれからも比較対照の情報として「アプリケーションの作成者」を取得できなかった場合、アプリ同一性判定部１５１は、両アプリケーションの同一性を確認できなかったものとして、ステップＳ１０８の動作に進む。一方、「アプリケーションの作成者」を正常に取得できた場合、アプリ同一性判定部１５１は、ステップＳ１０６の動作に進む。【００９３】  ステップＳ１０６において、アプリ同一性判定部１５１は、両方のアプリ属性情報の「アプリケーションの作成者」は、一致するか否かを判断する。「アプリケーションの作成者」が一致しない場合、アプリ同一性判定部１５１は、両アプリケーションの同一性を確認できなかったものとして、ステップＳ１０８の動作に進む。一方、「アプリケーションの作成者」が一致する場合、アプリ同一性判定部１５１は、ステップＳ１０７の動作に進む。【００９４】  ステップＳ１０７において、アプリ同一性判定部１５１は、アプリケーションＡはアプリケーションＢと同一の機能を有するアプリケーションであると判定する。次に、アプリ同一性判定部１５１は、アプリケーションＡをアプリケーションＢに対応付けて同一機能アプリケーションとして同一性テーブルに登録し（ステップＳ１０９）、アプリ認識部１２によって認識された他のアプリケーションについて、同様にステップＳ１０１以降の処理を実行するように、リターンする。【００９５】  ステップＳ１０８において、アプリ同一性判定部１５１は、アプリケーションＡとアプリケーションＢとは同一でないとして、アプリ認識部１２によって認識された他のアプリケーションについて、同様にステップＳ１０１以降の処理を実行するように、リターンする。【００９６】  図６に示す動作は、アプリ認識部１２によって認識された他の電子機器内の全てのアプリケーションについて繰り返し実行される。【００９７】  以上が同一性テーブルが作成される手順の一例である。なお、上記手順では、アプリケーショ���の同一性の判定に、「アプリケーションの名称」および「アプリケーションの作成者」が使用されているが、必ずしもこれらを使用する必要はない。アプリ同一性判定部１５１は、他のアプリ属性情報の組み合わせを比較することによって、同一性判定を行っても良い。比較に使用するアプリ属性情報の種類は、幾つでも良い。【００９８】  なお、図６では、アプリ同一性判定部１５１は、一対一に、アプリケーションＡとアプリケーションＢとを比較しているだけである。しかし、電子機器１が複数のアプリケーションを保持している場合、アプリ同一性判定部１５１は、電子機器１が保持する全てのアプリケーションについて、アプリケーションＢと同一の機能を有するか否かを判定して、同一性テーブルを作成しなければならない。具体的には、アプリ同一性判定部１５１は、ステップＳ１０８の後、電子機器１が保持するアプリケーションＡ以外のアプリケーションのアプリ属性情報を取得して、ステップＳ１０１以降の動作に戻るとよい。アプリ同一性判定部１５１は、電子機器１が保持する全てのアプリケーションの中に、アプリケーションＢと同一の機能を有するアプリケーションが存在しなかった場合、他の電子機器が保持する他のアプリケーションについて、同一の機能を有するアプリケーションが電子機器１に保持されているか否かを判断する。【００９９】  図７は、同一性テーブルの一例を示す図である。図７に示すように、同一性テーブルは、他の電子機器が保持するアプリケーションに関する情報（テーブルの左列）と、他の電子機器が保持するアプリケーションと同一の機能を有すると判断された同一機能アプリケーションに関する情報（テーブルの右列）との組から構成される。【０１００】  図７に示すように、他の電子機器のアプリケーションに関する情報として、「アプリケーションが保存されている機器の識別情報」、「アプリケーションの名称」、および「アプリケーションのサイズ」が登録されている。もちろん、他の電子機器が保持するアプリケーションを特定することができる情報であれば、他の電子機器のアプリケーションに関する情報は、図７に示した情報に限られるものではない。【０１０１】  図７に示すように、同一機能アプリケーションに関する情報として、「アプリケーションの名称」および「アプリケーションのサイズ」が登録されている。もちろん、自機器が保持するアプリケーションを特定することができる情報であれば、同一機能アプリケーションに関する情報は、図７に示した情報に限られるものではない。【０１０２】  本実施形態において、関連アプリ判定部１５２によって実行される、他の電子機器が保持するアプリケーションと、電子機器１が保持する関連機能アプリケーションとの対応付けは、以下の（ａ），（ｂ），（ｃ），（ｄ）のようにして行われる。【０１０３】  （ａ）他の電子機器が保持するアプリケーションのアプリ属性情報には、自アプリケーションの代替アプリケーションになることができる他アプリケーションに関する条件が記述されている。たとえば、図３において示した「代替可能アプリケーション」が、当該条件である。関連アプリ判定部１５２は、当該条件を解読して、自機器内に当該条件に合致するアプリケー���ョンが保持されているか否かを判定して、保持されている場合、保持しているアプリケーションを関連機能アプリケーションとして、当該他の電子機器が保持するアプリケーションと対応付けて、関連テーブルに登録する。【０１０４】  （ｂ）電子機器１が保持するアプリケーションのアプリ属性情報には、自アプリケーションが他のアプリケーションの代替アプリケーションになるための条件が記述されている。たとえば、図３において示した「被代替可能アプリケーション」が、当該条件である。関連アプリ判定部１５２は、当該条件を解読して、アプリ認識部１２が認識した他の電子機器内のアプリケーションの中に、当該条件に合致するアプリケーションが存在するか否かを判定する。当該条件に合致するアプリケーションが存在する場合、関連アプリ判定部１５２は、自機器が保持するアプリケーションを、他の電子機器の保持するアプリケーションの関連機能アプリケーションとして、当該他の電子機器が保持するアプリケーションと対応付けて、関連テーブルに登録する。【０１０５】  （ｃ）関連テーブルは、電子機器１に予め記憶されている。【０１０６】  （ｄ）ユーザによって、関連テーブルが登録される。【０１０７】  図８は、ユーザによって関連テーブルが登録されるときの処理手順を説明するための図である。【０１０８】  関連アプリ判定部１５２は、図８中のユーザインタフェース７ａ，７ｄ，７ｃ，７ｄを出力装置１０５に表示させることができる。【０１０９】  ユーザインタフェース７ａは、他の電子機器が保持するアプリケーションの一覧を示しており、関連テーブルに登録したい他の電子機器のアプリケーションを選択・指定するための画面である。ここでは、電子機器２が保持するアプリケーションの一覧が示されている。関連アプリ判定部１５２は、アプリ認識部１２が認識した電子機器２が保持するアプリケーション固有の情報を取得することによって、ユーザインタフェース７ａに、電子機器２が保持するアプリケーションの一覧を表示する。ユーザは、ユーザインタフェース７ａに表示されている一覧の中から、関連テーブルに登録したアプリケーションを選択・指定する。ここでは、アプリケーション“Ｍｅｄｉａ  Ｖｉｅｗｅｒ”が選択されているとする。ユーザインタフェース７ａで指定されると、関連アプリ判定部１５２は、ユーザインタフェース７ｂを表示させる。【０１１０】  ユーザインタフェース７ｂは、電子機器１が保持するアプリケーションの一覧を示しており、ユーザインタフェース７ａで指定したアプリケーションと対応付けたい電子機器１のアプリケーションを選択・指定するための画面である。関連アプリ判定部１５２は、電子機器１が保持するアプリケーション固有の情報を取得することによって、ユーザインタフェース７ｂに、電子機器１が保持するアプリケーションの一覧を表示する。ユーザは、ユーザインタフェース７ｂに表示されている一覧の中から、関連機能アプリケーションとして登録したアプリケーションを選択・指定する。ここでは、関連機能アプリケーションとして、“ＢａｃｋＵｐ  Ｒｅｃｏｒｄｅｒ”が選択されているとする。ユーザインタフェース７ｂで指定されると、関連アプリ判定部１５２は、ユーザインタフェ���ス７ｃを表示させる。【０１１１】  ユーザインタフェース７ｃは、アプリケーションと関連機能アプリケーションとの対応付けを確認するための画面である。ここで、ユーザは、“Ｙｅｓ”を指定したとする。これによって、関連アプリ判定部１５２は、関連テーブルにアプリケーションと関連機能アプリケーションとを登録し、登録に成功した旨（ユーザインタフェース７ｄ）を表示させる。【０１１２】  関連アプリ判定部１５２は、関連テーブルを何らかの形式で保持する。【０１１３】  図９は、関連テーブルの一例を示す図である。図９に示すように、関連テーブルは、他の電子機器が保持するアプリケーションに関する情報（テーブルの左列）と、関連機能アプリケーションに関する情報（テーブルの右列）との組から構成される。【０１１４】  図９に示すように、他の電子機器のアプリケーションに関する情報として、「アプリケーションが保存されている機器の識別情報」、「アプリケーションの名称」、および「アプリケーションのサイズ」が登録されている。もちろん、他の電子機器が保持するアプリケーションを特定することができる情報であれば、他のアプリケーションに関する情報は、図９に示した情報に限られない。【０１１５】  図９に示すように、関連機能アプリケーションに関する情報として、「アプリケーションの名称」および「アプリケーションのサイズ」が登録されている。もちろん、自機器が保持するアプリケーションを特定することができる情報であれば、関連機能アプリケーションに関する情報は、図９に示した情報に限られるものではない。【０１１６】  アプリ実行不能検出部１３は、ネットワーク６を介して接続された他の電子機器が保持するアプリケーションが、実行可能な状態にあるか否かを検出する。本実施形態において、アプリケーションが実行可能な状態にないとは、大きく以下の２つ（Ａ），（Ｂ）の場合を想定している。【０１１７】  （Ａ）ネットワーク６を介して接続された他の電子機器が、通電状態を保っていない。
（Ｂ）ネットワーク６を介して接続された他の電子機器におけるアプリ実行部の資源制約の問題から、アプリケーションを実行することができない。【０１１８】  アプリ実行不能検出部１３は、上記（Ａ）または（Ｂ）の状態に陥っていないか否かを、他の電子機器を監視することによって、判定する。【０１１９】  図１０は、アプリ実行不能検出部１３の動作の一例を示すフローチャートである。以下、図１０を参照しながら、アプリ実行不能検出部１３の動作について説明する。なお、図１０では、簡単のために、電子機器２のアプリケーションについて、実行不能であるか否かを判断する例を示すが、アプリ実行不能検出部１３は、ネットワーク６を介して接続される他の電子機器全てに対して、図１０に示す処理と同様の処理を実行する。【０１２０】  まず、アプリ実行不能検出部１３は、電子機器２の通電状態を取得して（ステップＳ２０１）、電子機器２の通電状態が切断されているか否かを判断する（ステップＳ２０２）。ステップＳ２０１およびＳ２０２によって、上記（Ａ）の場合についての判断が行われる。【０１２１】  例えば、家電ネットワークの接続規格の一つであるＵＰｎＰの仕様では、ネットワーク接続された通電状態にある電子機器は、一定時間ごとにネットワーク接続されている他の電子機器に信号を発することになっている。電子機器から定期的な信号が発信されない場合、当該電子機器は、通電状態が切断されたものとみなされる。【０１２２】  ステップＳ２０２において、電子機器２の通電状態が切断されていると判断された場合、アプリ実行不能検出部１３は、ステップＳ２０３の動作に進み、電子機器２が保持する全てのアプリケーションは実行不能状態であると判定する。【０１２３】  ステップＳ２０２において、電子機器２の通電状態が切断されていないと判断された場合、アプリ実行不能検出部１３は、ステップＳ２０４以降の動作に進む。ステップＳ２０４以降の動作によって、上記（Ｂ）の場合についての判断が行われる。【０１２４】  ステップＳ２０４において、アプリ実行不能検出部１３は、アプリ認識部１２によって認識された電子機器２が保持するアプリケーションを一つ選択する。次に、アプリ実行不能検出部１３は、電子機器２のアプリ実行部に対して、選択したアプリケーションの実行が可能であるか否かを問い合わせる（ステップＳ２０５）。電子機器２のアプリケーションがアプリケーション固有の情報として「アプリケーションを動作させるために必要な資源量」の情報を保持している場合、電子機器２のアプリ実行部は、電子機器２内において使用することができるハードウエアの空き資源量の情報に基づいて、アプリケーションが実行可能であるか否かを判断し、判断結果を電子機器１のアプリ実行不能検出部１３に送信する。アプリ実行不能検出部１３は、電子機器２から送信されてくる判断結果を受信する。【０１２５】  次に、アプリ実行不能検出部１３は、電子機器２から送られてきた問い合わせの結果が「実行可能」であるか否かを判断する（ステップＳ２０６）。問い合わせの結果が実行可能である場合、アプリ実行不能検出部１３は、電子機器２において、ステップＳ２０４で選択したアプリケーションは実行可能状態にあ��と判定し（ステップＳ２０７）、ステップＳ２０９の動作に進む。一方、問い合わせの結果が実行可能でない場合、アプリ実行不能検出部１３は、電子機器２において、ステップＳ２０４で選択したアプリケーションは実行不可能状態にあると判定し（ステップＳ２０８）、ステップＳ２０９の動作に進む。【０１２６】  ステップＳ２０９において、アプリ実行不能検出部１３は、アプリ認識部１２によって認識された電子機器２が保持する全てのアプリケーションについて、実行可能であるか否かの問い合わせを実行したか否かを判断する。全てのアプリケーションについて問い合わせていない場合、アプリ実行不能検出部１３は、ステップＳ２０４の動作に戻って、別のアプリケーションについての問い合わせを実行する。一方、全てのアプリケーションについて問い合わせている場合、電子機器１は、全体の動作にリターンする。【０１２７】  アプリ実行判断部１４は、アプリ実行不能検出部１３によって実行不能であると検出されたアプリケーションが存在する場合に、当該アプリケーションの代わりとなる代替アプリケーションを実行すべきか否かを判断する。アプリ実行判断部１４は、アプリ起動要求検出部１４１と、アプリ実行状態取得部１４２とを含む。【０１２８】  アプリ起動要求検出部１４１は、別の電子機器上に存在するアプリケーションに対する起動要求を検出し、当該起動要求がどの電子機器が保持しているどのアプリケーションに対して行われたものであるのかを特定する。【０１２９】  本発明では、アプリケーションに対する起動要求として、大きくは、以下の二つの場合（Ｃ）および（Ｄ）を想定している。【０１３０】  （Ｃ）他の電子機器から、ネットワーク６を介して、電子機器とアプリケーションとを特定する情報を含む起動要求が送信される場合。
（Ｄ）ネットワーク６を介さずに、電子機器２自身が起動要求をなす場合。たとえば、電子機器２のユーザが、電子機器２に対して、電子機器２が保持するアプリケーションの起動を指定する場合、電子機器２のタイマやアプリケーションなど内部的な条件をトリガーとして、電子機器２が保持するアプリケーションに対して起動要求がなされる場合等である。【０１３１】  電子機器２が保持するアプリケーションに対する起動要求が発生したか否かをアプリ起動要求検出部１４１が検出するための実現例としては、以下の２通り（Ｅ）および（Ｆ）が考えられる。【０１３２】  （Ｅ）アプリ起動要求検出部１４１は、ネットワーク６の通信状態を監視する。通信状態を監視している間に、もしネットワーク６に接続された何らかの機器から、電子機器２のアプリケーションに対して起動要求が発せられた場合、アプリ起動要求検出部１４１は、上記（Ｃ）の場合の起動要求があったと判定する。【０１３３】  （Ｆ）電子機器２のアプリ実行部は、電子機器２の内部で、保持しているアプリケーションに対する起動要求が発生した場合、電子機器１のアプリ起動要求検出部１４１からの求めに応じて、電子機器１に対してその旨を通知する。したがって、アプリ起動要求検出部１４１は、電子機器２に対して、内部で起動要求が発生したか否かを問い合わせることによって、上記（Ｄ）の場合の起動要求があったか否かを判定することができる。【０１３４】  アプリ起動要求検出部１４１は、（Ｅ）および（Ｆ）の両方もしくはいずれかの仕組みを備えることで、他の電子機器の保持するアプリケーションに対する起動要求を検出することができる。【０１３５】  アプリ実行状態取得部１４２は、電子機器２のアプリ実行部によって生成されるアプリ実行状態情報を、電子機器２から取得する。先に説明した通り、アプリ実行状態情報は、アプリケーションの実行過程において、シリアライズ等の技術を用いて、電子機器２のアプリ実行部によって生成される。アプリ実行状態取得部１４２は、当該アプリ実行状態情報を解析することによって、電子機器２の上で実行されているアプリケーションの実行の途中の状態を知ることができる。【０１３６】  アプリ実行判断部１４は、アプリ実行不能検出部１３によって実行不能であると検出されたアプリケーションが存在する場合に、アプリ起動要求検出部１４１によって実行不能であると検出されたアプリケーションに対する起動要求が検出されるか、および／またはアプリ実行状態取得部１４２によって実行不能であると検出されたアプリケーションのアプリ実行状態情報が取得されていれば、当該アプリケーションの代わりに代替アプリケーションを実行すべきであると判断するし、代替アプリ保持判断部１５に対して、代替アプリケーションを保持しているか否かを判断させる。それに応じて、代替アプリ保持判断部１５は、同一性テーブルおよび／または関連テーブルを参照して、代替アプリケーションを保持しているか否かを判断し、保持している場合、アプリ実行部１６に当該代替アプリケーションを実行させる。【０１３７】  タイミング制御部１１は、アプリ実行部１６、アプリ認識部１２、アプリ実行不能検出部１３、アプリ実行判断部１４、および代替ア���リ保持判断部１５の実行タイミングを制御する。【０１３８】  次に、アプリ継続プログラムを実行したときの電子機器１の動作の詳細な流れについて説明する。第１の実施形態では、上記構成の組み合わせを用いて、４種類の基本的な処理の流れを想定する。加えて、４種類の基本的な処理をさらに組み合わせることによる処理の流れも想定する。第１の基本処理は、他の機器が保持するアプリケーションが実行不能な状態のときに当該アプリケーションに対する起動要求が検出された場合、電子機器１が同一機能アプリケーションを代替アプリケーションとして実行する処理である。第２の基本処理は、他の機器が保持するアプリケーションが実行不能と検出された場合、電子機器１が当該アプリケーションの実行状態を継続するように同一機能アプリケーションを代替アプリケーションとして実行する処理である。第３の基本処理は、他の機器が保持するアプリケーションが実行不能な状態のときに当該アプリケーションに対する起動要求が検出された場合、電子機器１が関連機能アプリケーションを代替アプリケーションとして実行する処理である。第４の基本処理は、他の機器が保持するアプリケーションが実行不能と検出された場合、電子機器１が当該アプリケーションの実行状態を継続するように関連機能アプリケーションを代替アプリケーションとして実行する処理である。上記第１〜第４の基本処理は、それぞれ組み合わせることができる。【０１３９】  図１１は、第１の基本処理を実行するときの電子機器１の動作を示すフローチャートである。以下、図１１を参照しながら、第１の基本処理の流れについて説明する。なお、図１１に示す処理は、アプリ継続プログラムの終了と共に終了する。【０１４０】  まず、アプリ認識部１２は、他の電子機器が保持しているアプリケーションを認識する（ステップＳ３０１）。ステップＳ３０１の処理は、図５におけるステップＳ１の処理に相当する。【０１４１】  次に、タイミング制御部１１は、アプリ同一性判定部１５１による処理を開始するタイミングが到来したか否かを判断する（ステップＳ３０２）。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ３０３の動作に進む。一方、当該タイミングが到来している場合、アプリ同一性判定部１５１は、ステップＳ３０１で認識された他の電子機器が保持するアプリケーションを対象に、同一機能アプリケーションが電子機器１に保持されているか否かを判断して、同一機能アプリケーションが保持されていたら、他の電子機器が保持するアプリケーションと同一機能アプリケーションとの組み合わせを同一性テーブルとして作成し（ステップＳ３０４）、電子機器１は、ステップＳ３０３の動作に進む。【０１４２】  ステップＳ３０３において、タイミング制御部１１は、アプリ実行不能検出部１３による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ３００の動作に進む。一方、当該タイミングが到来している場合、アプリ実行不能検出部１３は、実行不能と検出される他の電子機器上のアプリケーションが存在するか否かを判断する（ステップＳ３０５）。ステップＳ３０５の処理は、図５におけるステップＳ２の処理に相当する。実行不能のアプリケーションが存在しない場合、電子機器１は、ステップＳ３００の動作に進む。一方、実行不能のアプリケーションが存在する場合、電子機器１は、ステップＳ３０６の動作に進む。【０１４３】  ステップＳ３０６において、アプリ実行判断部１４は、アプリ起動要求検出部１４１によって、当該実行不能のアプリケーションに対する起動要求が検出されたか否かを判断する。起動要求が検出されていない場合、電子機器１は、ステップＳ３００の動作に進む。一方、起動要求が検出された場合、アプリ実行判断部１４は、代替アプリケーションを実行すべきであると決定し、ステップＳ３０７の動作を代替アプリ保持判断部１５に実行させる。ステップＳ３０６の処理は、図５におけるステップＳ３の処理に相当する。【０１４４】  ステップＳ３０７において、代替アプリ保持判断部１５は、ステップＳ３０４においてアプリ同一性判定部１５１によって作成された同一性テーブルを参照して、起動要求のあったアプリケーションの代わりとなる同一機能アプリケーションが保持されているか否かを判断する。同一機能アプリケーションが保持されていない場合、電子機器１は、ステップＳ３００の動作に進む。一方、同一機能アプリケーションが保持されている場合、代替アプリ保持判断部１５は、ステップＳ３０８の動作をアプリ実行部１６に実行させる。ステップＳ３０７の処理は、図５におけるステップＳ４の処理に相当する。【０１４５】  ステップＳ３０８において、アプリ実行部１６は、代替アプリ保持判断部１５によって保持されているとされた同一機能アプリケーションを起動し、実行を開始する。その後、電子機器１は、ステップＳ３００の動作に進む。ステップＳ３０８の処理は、図５におけるステップＳ５の処理に相当する。【０１４６】  ステップＳ３００において、電子機器１は、内部のタイマを変化させ、ステップＳ３０２の動作に戻る。電子機器１は、定期的に、アプリ同一性判定部１５１による処理と、アプリ実行不能検出部１３による処理とを実行することとなる。これにより、定期的に、同一性の判定と実行不能の検出とが行われることが保証されている。なお、アプリ同一性判定部１５１、およびアプリ実行不能検出部１３の判定処理は、特に順序立てて行われる必要はなく、定期的に処理が実行されてさえいれば、処理の周期は揃っていなくてもよい。例えば、アプリ同一性判定部１５１は３００ｓ毎に実行し、アプリ実行不能検出部１３は５ｓ毎に実行するなど、それぞれ固有の実行タイミングで実行されてもよい。【０１４７】  第１の基本処理を利用したサービスの例を挙げる。【０１４８】  第１のホームサーバは、定期的に、ネットワーク接続された他の電子機器のデータを自機器にバックアップしてコピーするサービスを備えているとする。第１のホームサーバは、バックアップを実行するアプリケーション（第１のバックアップアプリ）を保持している。第１のバックアップアプリは、内部のタイマによって起動要求が与えられれば、サービスを実行する。【０１４９】  ここで、第１のホームサーバの第１のバックアップアプリが、実行不能な状態に陥ったとする。【０１５０】  第１のホームサーバ��ネットワークを介して接続された第２のホームサーバは、第１のバックアップアプリと同一の機能を有する第２のバックアップアプリを保持している。第２のホームサーバは、アプリ継続プログラムを実行することによって、第１のバックアップアプリが実行不能な状態に陥ったことを検出し、かつ、第１のホームサーバの内部のタイマによって第１のバックアップアプリに起動要求が与えられたことを検出すると、第２のバックアップアプリを起動する。このようにして、第１のバックアップアプリの起動が不可能な第１のホームサーバに代わって、第２のホームサーバによるサービスが実現される。【０１５１】  図１２は、第２の基本処理を実行するときの電子機器１の動作を示すフローチャートである。以下、図１２を参照しながら、第２の基本処理の流れについて説明する。【０１５２】  まず、アプリ認識部１２は、他の電子機器が保持しているアプリケーションを認識する（ステップＳ４０１）。ステップＳ４０１の処理は、図５におけるステップＳ１の処理に相当する。【０１５３】  次に、タイミング制御部１１は、アプリ同一性判定部１５１による処理を開始するタイミングが到来したか否かを判断する（ステップＳ４０２）。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ４０３の動作に進む。一方、当該タイミングが到来している場合、アプリ同一性判定部１５１は、ステップＳ４０１で認識された他の電子機器が保持するアプリケーションを対象に、同一機能アプリケーションが電子機器１に保持されているか否かを判断して、同一機能アプリケーションが保持されていたら、他の電子機器が保持するアプリケーションと同一機能アプリケーションとの組み合わせを同一性テーブルとして作成し（ステップＳ４０４）、電子機器１は、ステップＳ４０３の動作に進む。【０１５４】  ステップＳ４０３において、タイミング制御部１１は、アプリ実行状態取得部１４２による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部は、ステップＳ４０６の動作に進む。一方、当該タイミングが到来している場合、アプリ実行状態取得部１４２は、他の電子機器上で実行されているアプリケーションのアプリ実行状態情報を取得し（ステップＳ４０５）、電子機器１は、ステップＳ４０６の動作に進む。【０１５５】  ステップＳ４０６において、タイミング制御部１１は、アプリ実行不能検出部１３による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ４００の動作に進む。一方、当該タイミングが到来している場合、アプリ実行不能検出部１３は、実行不能と検出される他の電子機器上のアプリケーションが存在するか否かを判断する（ステップＳ４０７）。ステップＳ４０７の処理は、図５におけるステップＳ２の処理に相当する。実行不能のアプリケーションが存在しない場合、電子機器１は、ステップＳ４００の動作に進む。一方、実行不能のアプリケーションが存在する場合、電子機器１は、ステップＳ４０８の動作に進む。【０１５６】  ステップＳ４０８において、アプリ実行判断部１４は、アプリ実行状態取得��１４２によって、当該実行不能のアプリケーションについてのアプリ実行状態情報が保持されているか否かを判断する。アプリ実行状態情報が保持されていない場合、電子機器１は、ステップＳ４００の動作に進む。一方、アプリ実行状態情報が保持されている場合、アプリ実行判断部１４は、代替アプリケーションを実行すべきであると決定し、ステップＳ４０９の動作を代替アプリ保持判断部１５に実行させる。ステップＳ４０８の処理は、図５におけるステップＳ３の処理に相当する。【０１５７】  ステップＳ４０９において、代替アプリ保持判断部１５は、ステップＳ４０４においてアプリ同一性判定部１５１によって作成された同一性テーブルを参照して、保持しているアプリ実行状態情報に対応するアプリケーションと同一の機能を有する同一機能アプリケーションが電子機器１に保持されているか否かを判断する。同一機能アプリケーションが保持されていない場合、電子機器１は、ステップ４００の動作に進む。一方、同一機能アプリケーションが保持されている場合、代替アプリ保持判断部１５は、ステップＳ４１０の動作をアプリ実行部１６に実行させる。ステップＳ４０９の処理は、図５におけるステップＳ４の処理に相当する。【０１５８】  ステップＳ４１０において、アプリ実行部１６は、代替アプリ保持判断部１５によって保持されているとされた同一機能アプリケーションを起動し、実行を開始する。その後、電子機器１は、ステップＳ４００の動作に進む。ステップＳ４１０の処理は、図５におけるステップＳ５の処理に相当する。【０１５９】  ステップ４００において、電子機器１は、内部のタイマを変化させ、ステップＳ４０２の動作に戻る。電子機器１は、定期的に、アプリ同一性判定部１５１による処理と、アプリ実行不能検出部１３による処理と、アプリ実行状態取得部１４２による処理とを実行することとなる。これにより、定期的に、同一性の判定、実行不能の検出、およびアプリ実行状態情報の取得が行われることが保証される。なお、アプリ同一性判定部１５１による処理と、アプリ実行不能検出部１３による処理と、アプリ実行状態取得部１４２による処理とは、特に順序立てて行われる必要はなく、定期的に処理が実行されてさえいれば、処理の周期は揃っていなくてもよい。【０１６０】  第２の基本処理を利用したサービスの例を挙げる。【０１６１】  第１のＡＶ機器は、放送録画を行うサービスを備えているとする。第１のＡＶ機器は、放送の録画を実行するアプリケーション（第１の録画アプリ）を保持し、サービスを実現する。【０１６２】  ここで、第１のＡＶ機器の第１の録画アプリが、放送の録画中に突如、実行不能な状態に陥り、サービスが中断されてしまったとする。【０１６３】  第１のＡＶ機器にネットワーク接続された第２のＡＶ機器は、第１の録画アプリと同一の機能を有する第２の録画アプリを保持している。第２のＡＶ機器は、アプリ継続プログラムを実行することによって、第１のＡＶ機器上で実行されていた第１の録画アプリが、どのチャンネルをどのような設定で録画していたか、といったアプリ実行状態情報を取得している。【０１６４】  第２のＡＶ機器は、第１の録画アプリが実行不能な状態に陥ったことを検出すると、���２の録画アプリ２を起動し、取得していたアプリ実行状態情報に基づいて、第１の録画アプリで行われていたのと同一の設定でサービスを引き継ぐ。【０１６５】  図１３は、第３の基本処理を実行するときの電子機器１の動作を示すフローチャートである。以下、図１３を参照しながら、第３の基本処理の流れについて説明する。【０１６６】  まず、アプリ認識部１２は、他の電子機器が保持しているアプリケーションを認識する（ステップＳ５０１）。ステップＳ５０１の処理は、図５におけるステップＳ１の処理に相当する。【０１６７】  次に、タイミング制御部１１は、関連アプリ判定部１５２による処理を開始するタイミングが到来したか否かを判断する（ステップＳ５０２）。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ５０３の動作に進む。一方、当該タイミングが到来している場合、関連アプリ判定部１５２は、ステップＳ５０１で認識された他の電子機器が保持するアプリケーションを対象に、関連機能アプリケーションを対応付ける処理を実行し、関連テーブルを作成する（ステップＳ５０４）。なお、予め関連テーブルが作成されている場合、ステップＳ５０４の処理は省略可能である。ステップＳ５０４の後、電子機器は、ステップＳ５０３の動作に進む。【０１６８】  ステップＳ５０３において、タイミング制御部１１は、アプリ実行不能検出部１３による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ５００の動作に進む。一方、当該タイミングが到来している場合、アプリ実行不能検出部１３は、実行不能と検出される他の電子機器上のアプリケーションが存在するか否かを判断する（ステップＳ５０５）。ステップＳ５０５の処理は、図５におけるステップＳ２の処理に相当する。実行不能のアプリケーションが存在しない場合、電子機器１は、ステップＳ５００の動作に進む。一方、実行不能のアプリケーションが存在する場合、電子機器１は、ステップＳ５０６の動作に進む。【０１６９】  ステップＳ５０６において、アプリ実行判断部１４は、アプリ起動要求検出部１４１によって、当該実行不能のアプリケーションに対する起動要求が検出されたか否かを判断する。起動要求が検出されていない場合、電子機器１は、ステップＳ５００の動作に進む。一方、起動要求が検出された場合、アプリ実行判断部１４は、代替アプリケーションを実行すべきであると決定し、ステップＳ５０７の動作を代替アプリ保持判断部１５に実行させる。ステップＳ５０６の処理は、図５におけるステップＳ３の処理に相当する。【０１７０】  ステップＳ５０７において、代替アプリ保持判断部１５は、ステップＳ５０４において関連アプリ判定部１５２によって作成された関連テーブル（予め関連テーブルが記憶されている場合は、記憶されている関連テーブル）を参照して、起動要求のあったアプリケーションの代わりとなる関連機能アプリケーションが保持されているか否かを判断する。関連機能アプリケーションが保持されていない場合、電子機器１は、ステップＳ５００の動作に進む。一方、関連機能アプリケーションが保持されている場合、代替アプリ保持判断部１���は、ステップＳ５０８の動作をアプリ実行部１６に実行させる。ステップＳ５０７の処理は、図５におけるステップＳ４の処理に相当する。【０１７１】  ステップＳ５０８において、アプリ実行部１６は、代替アプリ保持判断部１５によって保持されているとされた関連機能アプリケーションを起動し、実行を開始する。その後、電子機器１は、ステップＳ５００の動作に進む。ステップＳ５０８の処理は、図５におけるステップＳ５の処理に相当する。【０１７２】  ステップＳ５００において、電子機器１は、内部のタイマを変化させ、ステップＳ５０２の動作に戻る。電子機器１は、定期的に、関連アプリ判定部１５２による処理と、アプリ実行不能検出部１３による処理とを実行することとなる。これにより、定期的に、関連機能アプリケーションの判定と実行不能の検出とが行われることが保証されている。なお、関連アプリ判定部１５２、およびアプリ実行不能検出部１３の判定処理は、特に順序立てて行われる必要はなく、定期的に処理が実行されてさえいれば、処理の周期は揃っていなくてもよい。例えば、関連アプリ判定部１５２は３００ｓ毎に実行し、アプリ実行不能検出部１３は５ｓ毎に実行するなど、それぞれ固有の実行タイミングで実行されてもよい。【０１７３】  第３の基本処理を利用したサービスの例を挙げる。【０１７４】  ホームサーバは、定期的に、ネットワーク接続された他の電子機器のデータを自機器にバックアップしコピーするサービスを備えているとする。ホームサーバは、バックアップを実行するアプリケーション（バックアップアプリ）を保持し、内部のタイマによって起動要求が与えられることによってサービスを実現する。【０１７５】  ここで、このホームサーバのバックアップアプリが、実行不能な状態に陥ったとする。【０１７６】  ホームサーバとネットワーク接続された携帯電話は、バックアップアプリの関連機能アプリケーションとして対応付けられたユーザ通知アプリケーションを保持している。【０１７７】  携帯電話は、アプリ継続プログラムを実行することによって、ホームサーバのバックアップアプリが実行不能な状態に陥ったことを検出し、かつ、ホームサーバの内部のタイマによってバックアップアプリに起動要求が与えられたことを検出すると、ユーザ通知アプリケーションを起動する。ユーザ通知アプリケーションは、ホームサーバのバックアップが失敗したことをユーザに対して通知、警告するサービスを実施する。【０１７８】  このようにして、バックアップアプリによるサービスを補佐する形での別のサービスが実施されることとなる。【０１７９】  図１４は、第４の基本処理を実行するときの電子機器１の動作を示すフローチャートである。以下、図１４を参照しながら、第４の基本処理の流れについて説明する。【０１８０】  まず、アプリ認識部１２は、他の電子機器が保持しているアプリケーションを認識する（ステップＳ６０１）。ステップＳ６０１の処理は、図５におけるステップＳ１の処理に相当する。【０１８１】  次に、タイミング制御部１１は、関連アプリ判定部１５２による処理を開始するタイミングが到来したか否かを判断する（ステップＳ６０２）。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ６０３の動作に進む。一方、当該タイミングが到来している場合、関連アプリ判定部１５２は、ステップＳ６０１で認識された他の電子機器が保持するアプリケーションを対象に、関連機能アプリケーションを対応付ける処理を実行し、関連テーブルを作成する（ステップＳ６０４）。なお、予め関連テーブルが作成されている場合、ステップＳ６０４の処理は省略可能である。ステップＳ６０４の後、電子機器は、ステップＳ６０３の動作に進む。【０１８２】  ステップＳ６０３において、タイミング制御部１１は、アプリ実行状態取得部１４２による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部は、ステップＳ６０６の動作に進む。一方、当該タイミングが到来している場合、アプリ実行状態取得部１４２は、他の電子機器上で実行されているアプリケーションのアプリ実行状態情報を取得し（ステップＳ６０５）、電子機器１は、ステップＳ６０６の動作に進む。【０１８３】  ステップＳ６０６において、タイミング制御部１１は、アプリ実行不能検出部１３による処理を開始するタイミングが到来したか否かを判断する。当該タイミングが到来していない場合、タイミング制御部１１は、ステップＳ６００の動作に進む。一方、当該タイミングが到来している場合、アプリ実行不能検出部１３は、実行不能と検出される他の電子機器上のアプリケーションが存在するか否かを判断する（ステップＳ６０７）。ステップＳ６０７の処理は、図５におけるステップＳ２の処理に相当する。実行不能のアプリケーションが存在しない場合、電子機器１は、ステップＳ６００の動作に進む。一方、実行不能のアプリケーションが存在する場合、電子機器１は、ステップＳ６０８の動作に進む。【０１８４】  ステップＳ６０８において、アプリ実行判断部１４は、アプリ実行状態取得部１４２によって、当該実行不能のアプリケーションについてのアプリ実行状態情報が保持されているか否かを判断する。アプリ実行状態情報が保持されていない場合、電子機器１は、ステップＳ６００の動作に進む。一方、アプリ実行状態情報が保持されている場合、アプリ実行判断部１４は、代替アプリケーションを実行すべきであると決定し、ステップＳ６０９の動作を代替アプリ保持判断部１５に実行させる。ステップＳ６０８の処理は、図５におけるステップＳ３の処理に相当する。【０１８５】  ステップＳ６０９において、代替アプリ保持判断部１５は、ステップＳ６０４において関連アプリ判定部１５２によって作成された関連テーブル（予め関連テーブルが記憶されている場合は、記憶されている関連テーブル）を参照して、起動要求のあったアプリケーションの代わりとなる関連機能アプリケーションが保持されているか否かを判断する。関連機能アプリケーションが保持されていない場合、電子機器１は、ステップＳ６００の動作に進む。一方、関連機能アプリケーションが保持されている場合、代替アプリ保持判断部１５は、ステップＳ６１０の動作をアプリ実行部１６に実行させる。ステップＳ６０９の処理は、図５におけるステップＳ４の処理に相当する。【０１８６】  ステップＳ６１０において、アプリ実行部１６は、代��アプリ保持判断部１５によって保持されているとされた関連機能アプリケーションを起動し、実行を開始する。その後、電子機器１は、ステップＳ６００の動作に進む。ステップＳ６１０の処理は、図５におけるステップＳ５の処理に相当する。【０１８７】  ステップ６００において、電子機器１は、内部のタイマを変化させ、ステップＳ６０２の動作に戻る。電子機器１は、定期的に、関連アプリ判定部１５２による処理と、アプリ実行不能検出部１３による処理と、アプリ実行状態取得部１４２による処理とを実行することとなる。これにより、定期的に、関連機能アプリケーションの判定、実行不能の検出、およびアプリ実行状態情報の取得が行われることが保証される。なお、関連アプリ判定部１５２による処理と、アプリ実行不能検出部１３による処理と、アプリ実行状態取得部１４２による処理とは、特に順序立てて行われる必要はなく、定期的に処理が実行されてさえいれば、処理の周期は揃っていなくてもよい。【０１８８】  第４の基本処理を利用したサービスの例を挙げる。【０１８９】  携帯電話は、放送の視聴をユーザに対して提供するサービスを備えているとする。携帯電話は、放送の表示を実行するアプリケーション（ＴＶアプリ）を保持し、サービスを実現する。【０１９０】  ここで、この携帯電話のＴＶアプリが、実行中に突如、実行不能な状態に陥り、放送の視聴の提供というサービスが中断されてしまったとする。【０１９１】  ここで、携帯電話とネットワーク接続されたＡＶ機器は、ＴＶアプリの関連機能アプリケーションとして対応付けられた、放送を自機器に記録する録画アプリというアプリケーションを保持している。ＡＶ機器は、アプリ継続プログラムを実行することによって、携帯電話で実行されていたＴＶアプリがどのチャンネルをどのような設定で視聴させていたのかといったアプリ実行状態情報を取得する。【０１９２】  ＡＶ機器は、携帯電話のＴＶアプリが実行不能な状態に陥ったことを検出すると、録画アプリを起動し、ＴＶアプリのアプリ実行状態情報に基づいて、ＴＶアプリで視聴されていたのと同一の設定でサービスを引継ぎ、放送の録画サービスを実現する。【０１９３】  これにより、携帯電話のユーザは、後ほど、ＡＶ機器を用いて放送の続きを視聴することができる。こうしてＴＶアプリによるサービスを補佐する形での別のサービスの実施されることとなる。【０１９４】  以上、第１の実施形態によれば、電子機器は、他の電子機器が保持しているアプリケーションを認識し、認識したアプリケーションの実行不能が検出された場合、代替アプリケーションを実行すべきか否かを判断する。代替アプリケーションを実行すべきである場合、当該電子機器は、代替アプリケーションを保持しているか否かを判断し、保持している場合、当該代替アプリケーションを実行する。したがって、第１の実施形態に係る電子機器は、センターサーバが存在しない機器同士のみに構成されたネットワーク上に存在する場合であっても、他の電子機器におけるアプリケーションが実行不能となったら、代替アプリケーションを実行することができる。よって、センターサーバが存在しない機器同士のみによって構成されたネットワーク上であっても、サービスが���続的に実施されることとなる。【０１９５】  ここで、第１〜第４の基本処理の組み合わせについて説明する。【０１９６】  第１の基本処理と第２の基本処理とは、組み合わせることができる。たとえば、電子機器１は、第２の基本処理と同様、予めアプリ実行状態情報を取得しておき、図１１におけるステップＳ３０６において起動要求が検出されなかったと判断された場合、図１２におけるステップＳ４０８の判断を実行して、アプリ実行状態情報を保持しているならば、同一機能アプリケーションを保持しているか否かを判断するステップＳ３０７の動作に進むとよい。なお、第１の基本処理と第２の基本処理との組み合わせ方は、これに限られるものではない。【０１９７】  第１の基本処理と第３の基本処理とは、組み合わせることができる。たとえば、電子機器１は、第３の実施形態と同様、関連テーブルを予め作成しておき、ステップＳ３０７において、同一機能アプリケーションを保持していないと判断した後、図１３におけるステップＳ５０７を実行して、関連機能アプリケーションを保持しているならば、当該関連アプリケーションを実行するとよい。なお、第１の基本処理と第３の基本処理との組み合わせ方は、これに限られるものではない。【０１９８】  第１の基本処理と第４の基本処理とは、組み合わせることができる。たとえば、電子機器１は、図１４におけるステップＳ６０８においてアプリ実行状態情報を保持していないと判断した場合、図１１におけるステップＳ３０６およびＳ３０７を実行して、起動要求が検出された場合、アプリ実行状態情報を用いずに、同一機能アプリケーションを起動してもよい。なお、第１の基本処理と第４の基本処理との組み合わせ方は、これに限られるものではない。【０１９９】  その他、第１〜第４の基本処理は、可能な限り組み合わせることができる。当然、三つ以上の基本処理を組み合わせてもよいことは言うまでもない。当然、電子機器は、第１〜第４の基本処理を単純に、順序立てて実行してもよい。本発明は、上述した組み合わせに限定されるものではない。【０２００】  なお、第１の実施形態において、代替アプリ保持判断部１５は、同一性テーブルおよび／または関連テーブルを参照して、実行不能が検出されたアプリケーションの代わりとなる代替アプリケーションが自機器内に保持されているか否かを判断することとした。しかし、代替アプリケーションが自機器内に保持されているか否かを判断することができるのであれば、代替アプリ保持判断部１５は、同一性テーブルおよび／または関連テーブルを参照しなくてもよい。すなわち、代替アプリ保持判断部１５は、アプリ実行判断部１４によって代替アプリケーションを実行すべきであると判断された度に、代替アプリケーションが保持されているか否かを判断してもよい。すなわち、図１１におけるステップＳ３０２およびＳ３０４、図１２におけるステップＳ４０２およびＳ４０４、図１３におけるステップＳ５０２およびＳ５０４、ならびに図１４におけるステップＳ６０２およびＳ６０４は、本発明において、必須ではない。【０２０１】  （第２の実施形態）
第１の実施形態では、アプリ継続プログラムを実行する電子機器は、電子機器１のみであるとした。第２の実施形態では、アプリ継続プログラムを実行する電子機器１以外の電子機器が１以上存在するものとする。ここでは、説明を簡単にするために、電子機器３がアプリ継続プログラムを実行するとするが、電子機器３以外の電子機器もアプリ継続プログラムを実行するとしても、各電子機器の動作は同様である。【０２０２】  第１の実施形態の場合、電子機器１および３は、それぞれ独立して、代替アプリケーションを実行することとなる。【０２０３】  しかし、ネットワーク６に接続される電子機器群を一つのシステムとして捉えた場合、全ての電子機器が代替アプリケーションを実行しなくても、当該システムの運営にとって、十分である場合がある。すなわち、一つの機器のみが代替アプリケーションを実行するだけで十分である場合がある。あるいは、代替アプリケーションを実行する電子機器に関して、何らかの条件を設定したい場合が存在するかもしれない。例えば、同一機能アプリケーションはできるだけ高スペックの電子機器で起動したい、できるだけ持ち運びできる機器で起動したいなどといった条件である。【０２０４】  第２の実施形態では、限られた電子機器のみで代替アプリケーションを起動する機構について説明する。【０２０５】  図１５は、第２の実施形態に係るアプリ継続プログラムを実行したときの電子機器１および３の機能的構成を示すブロック図である。図１５において、図４に示す第１の実施形態と同様の機能を有するブロックについては同一の参照符号を付し、説明を省略する。図１５に示すように、第２の実施形態に係る電子機器１および３は、アプリ実行判断部１４ａ内に、機器間起動調停部２０をさらに備える。【０２０６】  以下、電子機器１内の機器間起動調停部２０（電子機器３内の機器間起動調停部２０）は、電子機器３内の機器間起動調停部２０（電子機器１内の機器間起動調停部２０）と通信して、代替アプリケーションを起動するか否かを決定する。【０２０７】  機器間起動調停部２０は、大きく以下の２種類の処理Ｘ、Ｙを行なう。【０２０８】  （処理Ｘ）他の電子機器が保持する起動調停情報を取得し、当該起動調停情報に基づいて、自機器内で代替アプリケーションを起動するか否かを判断するための処理。
（処理Ｙ）他の電子機器の機器間起動調停部２０からの要求に応じて、代替アプリケーションを保持しているか否かを応答し、自機器が保持する起動調停情報を、当該他の電子機器の機器間起動調停部２０に提供するための処理。【０２０９】  電子機器間で通信される起動調停情報については、後で詳述する。【０２１０】  まず、処理Ｘについて説明する。処理Ｘは、本発明の電子機器が同一機能アプリケーションまたは関連機能アプリケーションを保持していた場合に、保持していた当該アプリケーションを実行するか否かを決定するために行われる。【０２１１】  図１６は、第１の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。図１６において、図１１に示した動作と同様の動作を有するステップについては、同一の参照符号を付し、説明を省略する。図１６に示すように、電子機器１は、同一機能アプリケーションが保持されていると判断したステップＳ３０７の後、ステップＳ７０１において、処理Ｘを実行する。ステップＳ７０１において、機器間起動調停部２０は、他の電子機器が保持する起動調停情報を取得して、当該起動調停情報に基づいて、保持していると判断された同一機能アプリケーションを実行すべきか否かを決定する。実行すべきであると決定した場合、電子機器１は、ステップＳ３０８の動作に進む。一方、実行すべきでないと決定した場合、電子機器１は、ステップＳ３００の動作に進む。【０２１２】  図１７は、第２の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。図１７において、図１２に示した動作と同様の動作を有するステップについては、同一の参照符号を付し、説明を省略する。図１７に示すように、電子機器１は、同一機能アプリケーションが保持されていると判断したステップＳ４０９の後、ステップＳ８０１において、処理Ｘを実行する。ステップＳ８０１において、機器間起動調停部２０は、他の電子機器が保持する起動調停情報を取得して、当該起動調停情報に基づいて、保持していると判断された同一機能アプリケーションを実行すべきか否かを決定する。実行すべきであると決定した場合、電子機器１は、ステップＳ４１０の動作に進む。一方、実行すべきでないと決定した場合、電子機器１は、ステップＳ４００の動作に進む。【０２１３】  図１８は、第３の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。図１８において、図１３に示した動作と同様の動作を有するステップについては、同一の参照符号を付し、説明を省略する。図１８に示すように、電子機器１は、関連機能アプリケーションが保持されていると判断したステップＳ５０７の後、ステップＳ９０１において、処理Ｘを実行する。ステップＳ９０１において、機器間起動調停部２０は、他の電子機器が保持する起動調停情報を取得して、当該起動調停情報に基づいて、保持していると判断された同一機能アプリケーションを実行すべきか否かを決定する。実行すべきであると決定した場合、電子機器１は、ステップＳ５０８の動作に進む。一方、実行すべきでないと決定した場合、電子機器１は、ステップＳ５００の動作に進む。【０２１４】  図１９は、第４の基本処理に処理Ｘを追加したときの電子機器１の動作を示すフローチャートである。図１９において、図１４に示した動作と同様の動作を有するステップについては、同一の参照符号を付し、説明を省略する。図１９に示すように、電子機器１は、同一機能アプリケーションが保持されていると判断したステップＳ６０９の後、ステップＳ１００１において、処理Ｘを実行する。ステップＳ１００１において、機器間起動調停部２０は、他の電子機器が保持する起動調停情報を取得して、当該起動調停情報に基づいて、保持していると判断された同一機能アプリケーションを実行すべきか否かを決定する。実行すべきであると決定した場合、電子機器１は、ステップＳ６１０の動作に進む。一方、実行すべきでないと決定した場合、電子機器１は、ステップＳ６００の動作に進む。【０２１５】  次に、機器間起動調停部２０が実行する代替アプリケーションの起動可否判定処理（ステップＳ７０１，Ｓ８０１，Ｓ９０１，Ｓ１００１）の詳細について説明する。【０２１６】  図２０は、代替アプリケーションの起動可否判定処理（ステップＳ７０１，Ｓ８０１，Ｓ９０１，Ｓ１００１）における電子機器１の詳しい動作を示すフローチャートである。図２１は、代替アプリケーションの起動可否判定処理（ステップＳ７０１，Ｓ８０１，Ｓ９０１，Ｓ１００１）におけるネットワーク上の電子機器間の通信を示すシーケンス図である。図２１において、縦線は、それぞれの電子機器における時間の進行を示している。横線は、電子機器間で行われる通信を示す。図２１では、説明を簡単にするために、電子機器３が代替アプリケーションを保持しているとし、電子機器４，５が代替アプリケーションを保持していないとする。【０２１７】  まず、電子機器１の機器間起動調停部２０は、ネットワーク６に接続された他の電子機器３，４、５に対して、代替アプリケーションを保持しているか否かを問い合わせる（ステップＳ１１０１、通信１２０１）。【０２１８】  これに応じて、他の電子機器は、上述の処理Ｙを実行して、代替アプリケーションを保持しているか否かを応答する（通信１２０２）。具体的には、他の電子機器の機器間起動調停部２０は、同一性テーブルまたは関連テーブルを参照して、代替アプリケーションを保持しているか否かを判断して、判断結果を返す。図２１において、電子機器３が保持してる旨を回答しており、電子機器４および５が保持していない旨を回答している。【０２１９】  他の電子機器からの回答を受け取った電子機器１の機器間起動調停部２０は、当該回答に基づいて、代替アプリケーションを保持する他の電子機器が存在するか否かを判断する（ステップＳ１１０２）。【０２２０】  代替アプリケーションを保持する他の電子機器が存在しない場合、電子機器１の機器間起動調停部２０は、代替アプリケーションの起動が可能であると判定する（ステップＳ１１０３）。一方、代替アプリケーションを保持する他の電子機器が存在する場合、電子機器１の機器間起動調停部２０は、ステップＳ１１０４の動作に進む。【０２２１】  ステップＳ１１０４において、電子機器１の機器間起動調停部２０は、起動調停情報を代替アプリケーションを保持する電子機器から取得する。このとき、電子機器１���機器間起動調停部２０は、起動調停情報の取得要求を電子機器３に送信する（通信１２０３）。これに応じて、電子機器３の機器間起動調停部２０は、保持する起動調停情報を電子機器１に送信する（通信１２０４）。なお、代替アプリケーションを保持していない電子機器に対しては、これらの通信は行われなくてよい。【０２２２】  次に、電子機器１の機器間起動調停部２０は、電子機器１が保持する起動調停情報と電子機器３から送られてきた起動調停情報とを比較する（ステップＳ１１０５）。【０２２３】  ここで、起動調停情報について説明する。起動調停情報とは、アプリケーションによるサービスを実行する必要性の度合いを判定するために用いられる情報である。図２２は、起動調停情報のテーブル形式の一例を示す図である。当該テーブルの各エントリには、代替アプリケーションを実行する必要性の度合いを判定するための情報が登録されている。図に示した各エントリについて簡単に説明する。【０２２４】  アプリ属性情報には、電子機器が持つ代替アプリケーションのアプリ属性情報が記録される。アプリ属性情報は、図３を用いて先述した情報と同様であるので、詳細は省略する。【０２２５】  機器の識別名には、電子機器を一意に特定するための識別情報が記録される。これは、文字列名や数字、あるいは他の形式の情報であってもよい。【０２２６】  機器の種別には、例えば携帯電話、ＰＤＡ、ビデオレコーダー、ＰＣなどその電子機器の種類を特定するための情報が記録される。【０２２７】  搭載ＣＰＵには、電子機器に搭載されるＣＰＵのスペック、速度など、機器に搭載されるプロセッサに関しての情報が記録される。【０２２８】  搭載ＯＳには、電子機器に搭載されるＯＳのスペック、バージョンなど、機器に搭載されるＯＳやミドルウェアに関しての情報が記録される。【０２２９】  搭載メモリ量には、電子機器に搭載されるメモリ等リソースに関しての情報が記録される。【０２３０】  プロセッサ使用率には、電子機器のプロセッサの使用占有率に関しての情報が記録される。【０２３１】  空きリソース量には、電子機器に搭載されるメモリ等リソースのうち、未使用のリソース量に関しての情報が記録される。【０２３２】  設定優先度には、その電子機器のサービス実施の優先度の情報が記録される。この優先度は、機器に対して不変的に定められている数値であってもよいし、機器毎にユーザが設定できる数値であってもよい。【０２３３】  ユーザによる最終操作日時には、電子機器に対してユーザによる操作が加えられた最終時間についての情報が記録される。【０２３４】  図２２に示した例は、起動調停情報の実現例の一つである。図２２に示したテーブルのエントリの一部がなくても、あるいは他の属性の情報を示すエントリが含まれていてもよい。【０２３５】  ステップＳ１１０５の後、電子機器１の機器間起動調停部２０は、電子機器１が保持する起動調停情報と、ステップＳ１１０４で取得した他の電子機器が保持する起動調停情報との比較結果に基づいて、電子機器１において代替アプリケーションを起動して実行する必要性があるか否かを判断する（ステップＳ１１０６）。【０２３６】  ステップＳ１１０６における判定方法としては、たと���ば、以下のような判定方法が用いられる。【０２３７】  （第１の判定方法）電子機器１の機器間起動調停部２０は、起動調停情報に含まれるアプリ属性情報を利用して、電子機器１が保持する代替アプリケーションよりも、必要リソース量が小さい代替アプリケーションが他の電子機器によって保持されていたら、電子機器１は代替アプリケーションの起動が必要であると判断し、そうでなければ起動は必要でないと判断する。【０２３８】  （第２の判定方法）電子機器１の機器間起動調停部２０は、起動調停情報に含まれる機器の識別名、機器の種別、搭載ＣＰＵ、搭載ＯＳ、搭載メモリ量、プロセッサ使用率、空きリソース量、および／または設定優先度の情報を利用して、電子機器１で定められた条件を上記情報が満たしていれば、代替アプリケーションの起動は必要であると判断し、当該条件を満たしていなければ、代替アプリケーションの起動は必要でないと判断する。当該条件として、たとえば、
（条件例２−１）電子機器１よりも設定優先度が高い電子機器が他に存在しない場合、電子機器１は、代替アプリケーションの起動は必要であるとする。電子機器１よりも設定優先度が高い電子機器が他に存在する場合、電子機器１は、代替アプリケーションの起動は必要でないとする。
（条件例２−２）電子機器１の空きリソース量よりも、空きリソース量が大きい電子機器が他に存在しない場合、電子機器１は、代替アプリケーションの起動は必要であるとする。電子機器１の空きリソース量よりも、空きリソース量が大きい電子機器が他に存在する場合、電子機器１は、代替アプリケーションの起動は必要でないとする。
（条件例２−３）電子機器１と同じ種別の機器の中で、電子機器１よりも高スペックの搭載ＣＰＵを有する電子機器が存在しない場合、電子機器１は、代替アプリケーションの起動は必要であるとする。電子機器１と同じ種別の機器の中で、電子機器１よりも高スペックの搭載ＣＰＵを有する電子機器が存在する場合、電子機器１は、代替アプリケーションの起動は必要でないとする。【０２３９】  （第３の判定方法）電子機器１の機器間起動調停部２０は、ユーザによる最終操作日時の情報に基づいて、電子機器１よりも後の時間にユーザによって操作が加えられた電子機器が存在するか否かを判断し、存在しない場合、代替アプリケーションの起動は必要であるとし、存在する場合、代替アプリケーションの起動は必要でないとする。【０２４０】  もちろん、上記以外の起動調停情報を利用して、他の判定方法によって、判定処理が行われても良い。【０２４１】  ステップＳ１１０６において、代替アプリケーションの起動の必要性が確認された場合、電子機器１の機器間起動調停部２０は、ステップＳ１１０３の動作に進んで、代替アプリケーションを起動すると判定する。一方、代替アプリケーションの起動の必要性が確認されなかった場合、電子機器１の機器間起動調停部２０は、代替アプリケーションを起動しないと判定する（ステップＳ１１０７）。【０２４２】  このように、第２の実施形態によれば、ネットワーク上の複数の電子機器によってアプリ継続プログラムが実行されるような状況である場合、機器間起動調停部によって代替アプリケーションを実行すべきか否かが判断され、システム全体の内で、限定された電子機器のみが代替アプリケーションを実行することとなる。したがって、システム全体の資源が有効活用されることとなる。【０２４３】  なお、第２の実施形態において、第１〜第４の基本処理を組み合わせてもよい。【０２４４】  以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示にすぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。
【産業上の利用可能性】
【０２４５】  以上の構成を持つ本発明を利用することで、センターサーバのように集中管理方式を前提としてないネットワーク機器においても、同一のサービスを自動的に他の機器で実行したり、中断されたサービスの続きを他の機器で引き継いで実行したりといった、サービスの高い安定性を確保するための機器間の連携動作を行うことができるようになる。したがって、本発明に係る電子機器は、通信分野等に有用である。
【図１】
2005076134.tif 000003
【図２】
2005076134.tif 000004
【図３】
2005076134.tif 000005
【図４】
2005076134.tif 000006
【図５】
2005076134.tif 000007
【図６】
2005076134.tif 000008
【図７】
2005076134.tif 000009
【図８】
2005076134.tif 000010
【図９】
2005076134.tif 000011
【図１０】
2005076134.tif 000012
【図１１】
2005076134.tif 000013
【図１２】
2005076134.tif 000014
【図１３】
2005076134.tif 000015
【図１４】
2005076134.tif 000016
【図１５】
2005076134.tif 000017
【図１６】
2005076134.tif 000018
【図１７】
2005076134.tif 000019
【図１８】
2005076134.tif 000020
【図１９】
2005076134.tif 000021
【図２０】
2005076134.tif 000022
【図２１】
2005076134.tif 000023
【図２２】
2005076134.tif 000024
【手続補正書】
【提出日】平成18年2月16日(2006.2.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器であって、
前記他の電子機器が保持するアプリケーションを認識するアプリ認識部と、
前記アプリ認識部によって認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するアプリ実行不能検出部と、
前記アプリ実行不能検出部によって実行不能と検出されたアプリケーションの代わりとなる代替アプリケーションであって、アプリケーションによって提供されるサービスと関連するサービスを提供するまたはアプリケーションによって提供されるサービスを補佐する代替アプリケーションを実行するか否かを判断するアプリ実行判断部と、
実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断する代替アプリ保持判断部と、
前記代替アプリケーションを実行するアプリ実行部とを備える電子機器。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項７
【補正方法】変更
【補正の内容】
【請求項７】アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器の処理方法であって、
前記他の電子機器が保持するアプリケーショシを認識するステップと、
前記認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションであって、アプリケーションによって提供されるサービスと関連するサービスを提供するまたはアプリケーションによって提供されるサービスを補佐する代替アプリケーションを実行するか否かを判断するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断するステップと、
前記代替アプリケーションを実行するステップとを備える、方法。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】アプリケーションを実行可能な少なくとも一つの他の電子機器とネットワークを介して接続された電子機器で実行されるプログラムであって、
前記他の電子機器が保持するアプリケーションを認識するステップと、
前記認識されたアプリケーションが前記他の電子機器において実行不能であるか否かを検出するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる代替アプリケーションであって、アプリケーションによって提供されるサービスと関連するサービスを提供するまたはアプリケーションによって提供されるサービスを補佐する代替アプリケーションを実行するか否かを判断するステップと、
前記実行不能であると検出されたアプリケーションの代わりとなる前記代替アプリケーションが自機器内に保持されているか否かを判断するステップと、
前記代替アプリケーションを実行するステップとを備える、プログラム。
【国際調査報告】
2005076134.tif 000025
2005076134.tif 000026