(57)【要約】  【課題】複数の電子機器それぞれにおけるリソースを無用に消費させることなく、ある電子機器に実装されたアプリケーションコンポーネントによる機能を別の電子機器に実現させる。  【解決手段】ある電子機器において、その実装されたアプリケーションコンポーネントが正常に動作しなくなった際には（レプリカ処理起動）、この電子機器から、そのアプリケーションコンポーネントを実装可能な他の電子機器に対して、このアプリケーションコンポーネントを転送し、この電子機器に実装させることができる（サイズ情報〜展開）。こうして、この電子機器は、他の電子機器から転送されたアプリケーションコンポーネントを自身に実装することによって、このアプリケーションコンポーネントによる機能を実現できるようになるため、これをあらかじめ実装しておく必要がなくなる。【選択図】図６
2009059084.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の動作を制御するために必要な機能の一部を実現するアプリケーションコンポーネントがそれぞれ実装された複数の電子機器からなり、該電子機器のうちのいずれかの電子機器が、前記電子機器それぞれを介して該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を、前記アプリケーションコンポーネントそれぞれとそれが実装された電子機器との対応関係（以降「実装対応関係」という）に基づいて管理することによって、前記制御対象の動作を制御するように構成された制御システムであって、
前記電子機器それぞれは、
当該電子機器に実装されたアプリケーションコンポーネントの動作状態に基づき、該アプリケーションコンポーネントが正常に動作しているか否かを判定する動作判定手段と、
該動作判定手段により正常に動作していないと判定された場合に、当該電子機器以外の電子機器（以降「他の電子機器」という）それぞれに対し、当該電子機器に実装されたアプリケーションコンポーネントを実装可能な状態となっているか否かを問い合わせる実装問い合わせ手段と、
該実装問い合わせ手段による問い合わせを受けて「実装可能な状態となっている旨」を応答してきた電子機器の中から、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器を選択する代理選択手段と、
該代理選択手段により選択された電子機器に対して、当該電子機器に実装されたアプリケーションコンポーネントを転送するアプリ転送手段と、
他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際に、当該電子機器の動作状態に基づいてその状態となっているか否かを判定する実装判定手段と、
該実装判定手段により実装可能な状態となっていると判定された場合に、前記問い合わせ元の電子機器に対してその旨の応答を行う可能応答手段と、
該可能応答手段による応答の後、該応答先の電子機器から転送されてくるアプリケーションコンポーネントを当該電子機器に実装させるアプリ実装手段と、
当該電子機器の有する前記実装対応関係のうち、前記アプリ実装手段により実装されたアプリケーションコンポーネントに対応する電子機器を当該電子機器に更新する対応更新手段と、
該対応更新手段により前記実装対応関係が更新された際に、その旨を他の電子機器それぞれに通知する更新通知手段と、
他の電子機器から前記実装対応関係を更新した旨が通知された際に、該通知された内容に合わせて、当該電子機器の有する前記実装対応関係を更新する対応整合手段と、
を備えていることを特徴とする制御システム。
【請求項２】
制御対象の動作を制御するために必要な機能の一部を実現するアプリケーションコンポーネントがそれぞれ実装された複数の電子機器からなり、該電子機器のうちのいずれかの電子機器が、前記電子機器それぞれを介して該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を、前記アプリケーションコンポーネントそれぞれとそれが実装された電子機器との対応関係（以降「実装対応関係」という）に基づいて管理することによって、前記制御対象の動作を制御するように構成された制御システムであって、
前記電子機器のうち、１以上の電子機器である転送側電子機器は、
当該電子機器に実装されたアプリケーションコンポーネントの動作状態に基づき、該アプリケーションコンポーネントが正常に動作しているか否かを判定する動作判定手段と、
該動作判定手段により正常に動作していないと判定された場合に、当該電子機器以外の電子機器（以降「他の電子機器」という）それぞれに対し、当該電子機器に実装されたアプリケーションコンポーネントを実装可能な状態となっているか否かを問い合わせる実装問い合わせ手段と、
該実装問い合わせ手段による問い合わせを受けて「実装可能な状態となっている旨」を応答してきた電子機器の中から、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器を選択する代理選択手段と、
該代理選択手段により選択された電子機器に対して、当該電子機器に実装されたアプリケーションコンポーネントを転送するアプリ転送手段と、
他の電子機器から前記実装対応関係を更新した旨が通知された際に、該通知された内容に合わせて、当該電子機器の有する前記実装対応関係を更新する対応整合手段と、
を備えており、
前記電子機器のうち、前記転送側電子機器以外の電子機器である被転送側電子機器は、
他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際に、当該電子機器の動作状態に基づいてその状態となっているか否かを判定する実装判定手段と、
該実装判定手段により実装可能な状態となっていると判定された場合に、前記問い合わせ元の電子機器に対してその旨の応答を行う可能応答手段と、
該可能応答手段による応答の後、該応答先の電子機器から転送されてくるアプリケーションコンポーネントを当該電子機器に実装させるアプリ実装手段と、
当該電子機器の有する前記実装対応関係のうち、前記アプリ実装手段により実装されたアプリケーションコンポーネントに対応する電子機器を当該電子機器に更新する対応更新手段と、
該対応更新手段により前記実装対応関係が更新された際に、その旨を他の電子機器それぞれに通知する更新通知手段と、
を備えていることを特徴とする制御システム。
【請求項３】
前記実装判定手段は、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際、内蔵メモリにおける未使用の記憶領域が所定領域以上残っている場合に、実装可能な状態となっていると判定する
ことを特徴とする請求項１または請求項２に記載の制御システム。
【請求項４】
前記実装問い合わせ手段は、他の電子機器それぞれに対し、アプリケーションコンポーネントを実装可能な状態となっているか否かの問い合わせとして、該アプリケーションコンポーネントを実装するのに必要な記憶領域が残っているか否かの問い合わせを行い、
前記実装判定手段は、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際、内蔵メモリの未使用の記憶領域がその問い合わせに係る「必要な記憶領域」以上残っている場合に、実装可能な状態となっていると判定する
ことを特徴とする請求項３に記載の制御システム。
【請求項５】
前記可能応答手段は、前記実装判定手段により実装可能な状態となっていると判定された場合に、その旨の応答として、内蔵メモリにおいて残っている未使用の記憶領域を、前記問い合わせ元の電子機器に対して応答して、
前記代理選択手段は、前記実装問い合わせ手段による問い合わせを受けて応答してきた電子機器の中から、その応答における記憶領域が最も大きい電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する
ことを特徴とする請求項３または請求項４に記載の制御システム。
【請求項６】
前記代理選択手段は、前記実装問い合わせ手段による問い合わせの後、最も早く「実装可能な状態となっている旨」を応答してきた電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する
ことを特徴とする請求項１から請求項４のいずれかに記載の制御システム。
【請求項７】
前記代理選択手段は、前記実装問い合わせ手段による問い合わせを受けて応答してきた電子機器の中から、その時点における当該制御システムの動作状態に応じて処理負荷が最も軽いことが想定される電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する
ことを特徴とする請求項１から４のいずれかに記載の制御システム。
【請求項８】
前記動作判定手段により正常に動作していないと判定された累積回数が所定の上限値に到達するまでの間、該正常に動作していないと判定される毎に、当該電子機器に実装されたアプリケーションコンポーネントを繰り返し再起動するアプリ再起動手段，を備えており、
前記実装問い合わせ手段は、前記動作判定手段により正常に動作していないと判定された累積回数が所定の上限値に到達した際に、他の電子機器それぞれに対する問い合わせを行う
ことを特徴とする請求項１から７のいずれかに記載の制御システム。
【請求項９】
前記アプリ転送手段は、当該電子機器に実装されたアプリケーションコンポーネントを、所定の圧縮アルゴリズムにて圧縮したうえで転送して、
前記アプリ実装手段は、前記応答先の電子機器から転送されてくるアプリケーションコンポーネントを、前記圧縮アルゴリズムに対応する解凍アルゴリズムにて解凍したうえで当該電子機器に実装させる
ことを特徴とする請求項１から８のいずれかに記載の制御システム。
【請求項１０】
前記アプリ転送手段は、当該電子機器に実装されたアプリケーションコンポーネントを、所定の暗号化アルゴリズムにて暗号化したうえで転送して、
前記アプリ実装手段は、前記応答先の電子機器から転送されてくるアプリケーションコンポーネントを、前記暗号化アルゴリズムに対応する復号アルゴリズムにて復号したうえで当該電子機器に実装させる
ことを特徴とする請求項１から９のいずれかに記載の制御システム。
【請求項１１】
請求項１から１０のいずれかに記載の電子機器が備える全ての手段を備えている
ことを特徴とする電子機器。
【請求項１２】
請求項１から１０のいずれかに記載の電子機器として機能させるための各種処理手順をコンピュータシステムに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象の動作を制御するために必要な機能の一部を実現するアプリケーションコンポーネントがそれぞれ実装された複数の電子機器からなる制御システムに関する。
【背景技術】
【０００２】
上述した制御システムにおいては、通常、いずれかの電子機器が、各電子機器それぞれを介してこの電子機器に実装されたアプリケーションコンポーネントによる機能の実現を、アプリケーションコンポーネントそれぞれとそれが実装された電子機器との実装対応関係に基づいて管理することによって、制御対象の動作を制御するように構成されている。
【０００３】
また、近年では、特定の電子機器に実装されたアプリケーションコンポーネントによる機能の実現が正常に行われなくなった場合に、そのアプリケーションコンポーネントによる機能（例えば、データの中継）を他の電子機器に実現させる、といった技術が提案されている（特許文献１参照）。
【特許文献１】特開２００４−６４６２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上述した技術においては、複数の電子機器のうち、少なくとも１以上の電子機器それぞれが、他の電子機器に実装されたアプリケーションコンポーネントの機能を実現できるように、そのアプリケーションコンポーネントをも実装させておく必要がある。
【０００５】
そのため、各電子機器に実装させておくべきアプリケーションコンポーネントが多くなり、リソース（特にメモリの記憶領域）を無用に消費してしまうという問題があった。
本発明は、このような課題を解決するためになされたものであり、その目的は、複数の電子機器それぞれにおけるリソースを無用に消費させることなく、ある電子機器に実装されたアプリケーションコンポーネントによる機能を別の電子機器に実現させることができるようにすることである。
【課題を解決するための手段】
【０００６】
上記課題を解決するためには、制御対象の動作を制御するために必要な機能の一部を実現するアプリケーションコンポーネントがそれぞれ実装された複数の電子機器からなり、該電子機器のうちのいずれかの電子機器が、前記電子機器それぞれを介して該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を、前記アプリケーションコンポーネントそれぞれとそれが実装された電子機器との対応関係（以降「実装対応関係」という）に基づいて管理することによって、前記制御対象の動作を制御するように構成された制御システム，を、次に示す第１の構成（請求項１）または第２の構成（請求項２）とすることが考えられる。
【０００７】
まず、第１の構成において、前記電子機器それぞれは、まず、動作判定手段が、当該電子機器に実装されたアプリケーションコンポーネントの動作状態に基づき、該アプリケーションコンポーネントが正常に動作しているか否かを判定する。
【０００８】
この動作判定手段により正常に動作していないと判定された場合に、実装問い合わせ手段が、当該電子機器以外の電子機器（以降「他の電子機器」という）それぞれに対し、当該電子機器に実装されたアプリケーションコンポーネントを実装可能な状態となっているか否かを問い合わせる。
【０００９】
そして、この実装問い合わせ手段による問い合わせを受けて「実装可能な状態となっている旨」を応答してきた電子機器の中から、代理選択手段が、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器を選択すると、こうして選択された電子機器に対して、アプリ転送手段が、当該電子機器に実装されたアプリケーションコンポーネントを転送する。
【００１０】
また、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際に、実装判定手段が、当該電子機器の動作状態に基づいてその状態となっているか否かを判定する。この実装判定手段により実装可能な状態となっていると判定された場合に、可能応答手段が、前記問い合わせ元の電子機器に対してその旨の応答を行い、アプリ実装手段が、この応答の後、該応答先の電子機器から転送されてくるアプリケーションコンポーネントを当該電子機器に実装させる。
【００１１】
そして、対応更新手段が、当該電子機器の有する前記実装対応関係のうち、前記アプリ実装手段により実装されたアプリケーションコンポーネントに対応する電子機器を当該電子機器に更新し、こうして前記実装対応関係が更新された際に、更新通知手段が、その旨を他の電子機器それぞれに通知する。
【００１２】
また、他の電子機器から前記実装対応関係を更新した旨が通知された際には、対応整合手段が、該通知された内容に合わせて、当該電子機器の有する前記実装対応関係を更新する。
【００１３】
その一方、第２の構成において、前記電子機器のうち、１以上の電子機器である転送側電子機器は、まず、動作判定手段が、当該電子機器に実装されたアプリケーションコンポーネントの動作状態に基づき、該アプリケーションコンポーネントが正常に動作しているか否かを判定する。
【００１４】
この動作判定手段により正常に動作していないと判定された場合に、実装問い合わせ手段が、当該電子機器以外の電子機器（以降「他の電子機器」という）それぞれに対し、当該電子機器に実装されたアプリケーションコンポーネントを実装可能な状態となっているか否かを問い合わせる。
【００１５】
そして、この実装問い合わせ手段による問い合わせを受けて「実装可能な状態となっている旨」を応答してきた電子機器の中から、代理選択手段が、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器を選択すると、こうして選択された電子機器に対して、アプリ転送手段が、当該電子機器に実装されたアプリケーションコンポーネントを転送する。
【００１６】
さらに、他の電子機器から前記実装対応関係を更新した旨が通知された際には、対応整合手段が、該通知された内容に合わせて、当該電子機器の有する前記実装対応関係を更新する。
【００１７】
また、前記電子機器のうち、前記転送側電子機器以外の電子機器である被転送側電子機器は、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際に、実装判定手段が、当該電子機器の動作状態に基づいてその状態となっているか否かを判定する。この実装判定手段により実装可能な状態となっていると判定された場合に、可能応答手段が、前記問い合わせ元の電子機器に対してその旨の応答を行い、アプリ実装手段が、この応答の後、該応答先の電子機器から転送されてくるアプリケーションコンポーネントを当該電子機器に実装させる。
【００１８】
そして、対応更新手段が、当該電子機器の有する前記実装対応関係のうち、前記アプリ実装手段により実装されたアプリケーションコンポーネントに対応する電子機器を当該電子機器に更新し、こうして前記実装対応関係が更新された際に、更新通知手段が、その旨を他の電子機器それぞれに通知する。
【００１９】
これらのような構成の制御システムであれば、ある電子機器において、その実装されたアプリケーションコンポーネントが正常に動作しなくなった際には、この電子機器から他の電子機器に対して、このアプリケーションコンポーネントを転送し、この電子機器に実装させることができる。
【００２０】
こうして、この電子機器は、転送されてきたアプリケーションコンポーネントを自身に実装すればよく、これをあらかじめ実装しておかなくても、このアプリケーションコンポーネントによる機能を実現できるようになる。
【００２１】
そのため、各電子機器に実装させておくべきアプリケーションコンポーネントが不必要に多くなってしまうことがなくなる結果、リソース（特にメモリの記憶領域）を無用に消費することなく、ある電子機器に実装されたアプリケーションコンポーネントの機能を別の電子機器に実現させることができる。
【００２２】
なお、上記構成における動作判定手段によって、アプリケーションコンポーネントが正常に動作しているか否かを判定するための具体的な構成は特に限定されないが、例えば、アプリケーションコンポーネントに対する要求が発生した際に、その要求に対する正常な応答がなかったことをもって、正常に動作していないと判定するように構成することが考えられる。
【００２３】
また、上述した実装判定手段により「実装可能な状態となっている」と判定するための具体的な構成については特に限定されないが、例えば、上記各構成を以下に示すようにした第３の構成（請求項３）とすることが考えられる。
【００２４】
この構成において、前記実装判定手段は、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際、内蔵メモリにおける未使用の記憶領域が所定領域以上残っている場合に、実装可能な状態となっていると判定する。
【００２５】
この構成であれば、実装可能な状態となっているか否かの問い合わせを受けた電子機器は、自身の内蔵メモリにおける未使用の記憶領域に基づいて、実装可能な状態となっているか否かを判定することができる。そして、その問い合わせをした電子機器側では、そのように所定領域以上の未使用領域が内蔵メモリに残っている電子機器の中から、アプリケーションコンポーネントを転送すべき電子機器を選択することができる。
【００２６】
また、この構成においては、特に、実装問い合わせ手段および実装判定手段を以下に示すようにした第４の構成（請求項４）とすることも考えられる。
この構成において、前記実装問い合わせ手段は、他の電子機器それぞれに対し、アプリケーションコンポーネントを実装可能な状態となっているか否かの問い合わせとして、該アプリケーションコンポーネントを実装するのに必要な記憶領域が残っているか否かの問い合わせを行う。そして、前記実装判定手段は、他の電子機器から実装可能な状態となっているか否かの問い合わせを受けた際、内蔵メモリの未使用の記憶領域がその問い合わせに係る「必要な記憶領域」以上残っている場合に、実装可能な状態となっていると判定する。
【００２７】
この構成であれば、実装可能な状態となっているか否かの問い合わせを受けた電子機器は、自身の内蔵メモリに、該当アプリケーションコンポーネントを実装するのに必要な未使用領域が残っているか否かによって、実装可能な状態となっているか否かを判定することができる。そして、その問い合わせをした電子機器側では、該当アプリケーションコンポーネントを実装するのに必要な未使用領域が内蔵メモリに残っている電子機器の中から、アプリケーションコンポーネントを転送すべき電子機器を選択することができる。
【００２８】
また、これら第３，第４の構成のように、問い合わせを受けた電子機器が、自身の内蔵メモリの記憶領域に基づいて、実装可能な状態となっているか否かを判定する構成については、さらに、可能応答手段および代理選択手段を以下に示すようにした第５の構成（請求項５）とするとよい。
【００２９】
この構成において、前記可能応答手段は、前記実装判定手段により実装可能な状態となっていると判定された場合に、その旨の応答として、内蔵メモリにおいて残っている未使用の記憶領域を、前記問い合わせ元の電子機器に対して応答する。そして、前記代理選択手段は、前記実装問い合わせ手段による問い合わせを受けて応答してきた電子機器の中から、その応答における記憶領域が最も大きい電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する。
【００３０】
この構成であれば、内蔵メモリにおいて未使用の記憶領域が最も大きい電子機器を、アプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択することができる。
【００３１】
また、上記各構成においては、代理選択手段を以下に示すようにした第６，第７の構成（請求項６，７）としてもよい。
まず、第６の構成において、前記代理選択手段は、前記実装問い合わせ手段による問い合わせの後、最も早く「実装可能な状態となっている旨」を応答してきた電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する。
【００３２】
この第６の構成であれば、問い合わせを受けて最も早く応答してきた電子機器を、アプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択することができる。
【００３３】
また、第７の構成において、前記代理選択手段は、前記実装問い合わせ手段による問い合わせを受けて応答してきた電子機器の中から、その時点における当該制御システムの動作状態に応じて処理負荷が最も軽いことが想定される電子機器を、当該電子機器に実装されたアプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択する。
【００３４】
この第７の構成であれば、問い合わせを受けて応答してきた電子機器の中から、その時点における制御システムの動作状態に応じて処理負荷が最も軽いことが想定される電子機器を、アプリケーションコンポーネントによる機能の実現を代理させるべき電子機器として選択することができる。
【００３５】
ところで、上述した各構成における実装問い合わせ手段は、動作判定手段により正常に動作していないと判定された場合に、直ちに問い合わせを行うものとすればよい。
しかし、一時的なトラブルに起因してアプリケーションコンポーネントが正常な動作をしなくなった場合には、そのアプリケーションコンポーネントを再起動すれば、再び正常に動作するようになることが予想されるため、このような場合にまでアプリケーションコンポーネントを他の電子機器に転送する必要はないともいえる。
【００３６】
そのため、上記トラブルを考慮してあらかじめアプリケーションコンポーネントを再起動できるようにするとよく、このためには、上記各構成を以下に示すようにした第８の構成（請求項８）のようにすることが考えられる。
【００３７】
この構成では、前記動作判定手段により正常に動作していないと判定された累積回数が所定の上限値に到達するまでの間、該正常に動作していないと判定される毎に、当該電子機器に実装されたアプリケーションコンポーネントを繰り返し再起動するアプリ再起動手段，を備えている。そして、前記実装問い合わせ手段は、前記動作判定手段により正常に動作していないと判定された累積回数が所定の上限値に到達した際に、他の電子機器それぞれに対する問い合わせを行う。
【００３８】
この構成であれば、アプリケーションコンポーネントが正常に動作していないと判定された累積回数が所定の上限値に到達するまで、そのアプリケーションコンポーネントを繰り返し再起動することができる。
【００３９】
これにより、一時的なトラブルに起因してアプリケーションコンポーネントが正常な動作をしなくなった場合には、あらかじめアプリケーションコンポーネントを再起動して再び正常に動作する状態に戻すことができる。この場合、アプリケーションコンポーネントが正常に動作するようになり、これが正常に動作していないとは判定されなくなるため、アプリケーションコンポーネントを実装可能な状態となっているか否かの問い合わせ、および、その転送が行われることはない。
【００４０】
それに対し、正常に動作していないと判定された累積回数が所定の上限値に到達した時には、そのことをもって初めてアプリケーションコンポーネントを実装可能な状態となっているか否かの問い合わせ、および、その転送を行うことができるようになる。こうして、不必要にアプリケーションコンポーネントを他の電子機器に転送してしまうことを防止することができる。
【００４１】
なお、この構成において、動作判定手段により正常に動作していないと判定された累積回数は、例えば、各電子機器それぞれにおいて、その起動以降、正常に動作していないと判定された回数を所定期間内（例えば、起動している間）にわたってカウントするようにすればよい。
【００４２】
また、上記各構成のアプリ転送手段によるアプリケーションコンポーネントの転送に際しては、そのままのデータとして転送するものとすればよいが、データ量を圧縮して転送することとしてもよい。このためには、上記各構成を以下に示すようにした第９の構成（請求項９）のようにすることが考えられる。
【００４３】
この構成において、前記アプリ転送手段は、当該電子機器に実装されたアプリケーションコンポーネントを、所定の圧縮アルゴリズムにて圧縮したうえで転送して、前記アプリ実装手段は、前記応答先の電子機器から転送されてくるアプリケーションコンポーネントを、前記圧縮アルゴリズムに対応する解凍アルゴリズムにて解凍したうえで当該電子機器に実装させる。
【００４４】
この構成であれば、電子機器間でのアプリケーションコンポーネントの転送を、そのデータ量を圧縮した状態で行うことができるため、その転送に要する通信負荷を軽減することができる。
【００４５】
また、上記各構成のアプリ転送手段によるアプリケーションコンポーネントの転送に際しては、そのままのデータとして転送するものとすればよいが、暗号化して転送することとしてもよい。このためには、上記各構成を以下に示すようにした第１０の構成（請求項１０）のようにすることが考えられる。
【００４６】
この構成において、前記アプリ転送手段は、当該電子機器に実装されたアプリケーションコンポーネントを、所定の暗号化アルゴリズムにて暗号化したうえで転送して、前記アプリ実装手段は、前記応答先の電子機器から転送されてくるアプリケーションコンポーネントを、前記暗号化アルゴリズムに対応する復号アルゴリズムにて復号したうえで当該電子機器に実装させる。
【００４７】
この構成であれば、電子機器間でのアプリケーションコンポーネントの転送を、暗号化した状態で行うことができるため、その転送に際してのアプリケーションコンポーネントの漏洩を防止することができる。
【００４８】
また、上記課題を解決するための構成としては、上記第１〜第１０のいずれかの構成における電子機器が備える全ての手段を備えている電子機器（請求項１１）としてもよい。
この構成であれば、上記第１〜第１０のいずれかの構成における電子機器として機能させることができるからである。
【００４９】
また、上記課題を解決するための構成としては、上記第１〜第１０のいずれかの構成における電子機器として機能させるための各種処理手順をコンピュータシステムに実行させるためのプログラム（請求項１２）としてもよい。
【００５０】
このプログラムにより制御されるコンピュータシステムであれば、上記第１〜第１０のいずれかの構成における電子機器として機能させることができるからである。
なお、上述したプログラムは、コンピュータシステムによる処理に適した命令の順番付けられた列からなるものであって、各種記録媒体や通信回線を介して各電子機器や、これを利用するユーザに提供されるものである。
【発明を実施するための最良の形態】
【００５１】
以下に本発明の実施形態を図面と共に説明する。
（１）全体構成および基本動作
制御システム１は、図１に示すように、複数の電子機器（ＥＣＵ；Electronic Control Unit ）それぞれがネットワーク１００を介して通信可能に接続されてなり、アクチュエータ２００を介して所定の制御対象を駆動させるように構成されたシステムである。
【００５２】
なお、本実施形態においては、アクチュエータ２００の動作を制御する制御用電子機器２、センサ３００を介して所定のパラメータを検出する検出用電子機器３、表示部４００により制御対象の動作に関する表示を行う表示用電子機器４などからなる構成について例示する。
【００５３】
これら電子機器それぞれには、電子機器全体の動作を制御する制御部１０，各種データを記憶する記憶部１２，外部機器（アクチュエータ２００，センサ３００，表示部４００）との間で信号の入出力を行う入出力部１４，ネットワーク１００に対するデータの送信を制御する送信部１６，ネットワーク１００からのデータの受信を制御する受信部１８などが備えられている。
【００５４】
また、各電子機器は、図２に示すように、制御対象の動作を制御するために必要な機能の一部を実現するアプリケーションコンポーネント（以降、「ＡＰＣ」という）２２，３２，４２を実装しており、これを制御部１０の内蔵メモリにおいて展開，起動することによって、このＡＰＣに従って制御対象の駆動に関する処理を実行する。この処理の実行過程では、制御部１０に実装された機能としてのコンポーネント管理部２４，３４，４４により後述する各種処理を実行することによって、ＡＰＣ２０による機能の実現が管理される。
【００５５】
ここで、制御用電子機器２が、検出用電子機器３によるセンサ３００からの検出結果を用いてアクチュエータ２００を動作させるまでの手順を図３に基づいて説明する。
まず、制御用電子機器２では、コンポーネント管理部２４により、制御ＡＰＣ２２が内蔵メモリに展開されたうえで起動される（図３「起動要求」）。
【００５６】
こうして起動した制御ＡＰＣ２２は、アクチュエータ２００の動作を制御するために必要な制御パラメータを取得すべき旨の取得指令を発生させる（同図「取得指令」）。
この取得指令を受けたコンポーネント管理部３４は、該当する制御パラメータを生成可能なＡＰＣが実装されている他の電子機器に対し、その制御パラメータを要求するための取得要求を行う（同図「取得要求」）。
【００５７】
ここでは、まず、記憶部１２に記憶された管理情報テーブルに基づいて、該当する制御パラメータを生成可能なＡＰＣが実装されている他の電子機器が特定される。この管理情報テーブルは、図４に示すように、各電子機器に実装されているＡＰＣそれぞれ（同図「対象ＡＰＣ」）と、そのＡＰＣが実装された電子機器（同図「実装電子機器」）と、を対応づけて登録してなるデータテーブルであり、センサ３００による検出結果に基づくパラメータが制御パラメータとして要求される場合であれば、そのパラメータを生成可能な検出ＡＰＣ３２の実装された検出用電子機器３が特定される。そして、こうして特定された検出用電子機器３に対して取得要求が行われる。
【００５８】
なお、上記管理情報テーブルにおける各データレコードには、そこに登録されたＡＰＣの起動状態を示す値として、適切に起動している状態を示す「ＯＫ」が初期値として登録されている（同図「状態」）。
【００５９】
上述した取得要求を受けた検出用電子機器３側では、コンポーネント管理部３４が、検出ＡＰＣ３２を起動させることにより内蔵メモリに展開させた後、その検出ＡＰＣ３２に対して制御パラメータが必要である旨の必要要求をする（同図「必要要求」）。
【００６０】
この必要要求を受けた検出ＡＰＣ３２は、コンポーネント管理部３４に対して、その要求されている制御パラメータの生成に必要なセンサパラメータの取得元となるセンサ３００を通知するための取得元通知を行う（同図「取得元通知」）。
【００６１】
この取得元通知を受けたコンポーネント管理部３４は、これにより通知されたセンサ３００から、このセンサ３００による検出結果を示すセンサパラメータを取得する（同図「パラメータ要求」，「パラメータ通知」）。
【００６２】
こうして、センサパラメータを取得したコンポーネント管理部３４は、検出ＡＰＣ３２に対し、そのセンサパラメータに基づいて制御パラメータを生成すべき旨の生成要求を行う（同図「生成要求」）。この生成要求を受けた検出ＡＰＣ３２は、そのセンサパラメータに基づいて制御パラメータを生成したうえで、この制御パラメータをコンポーネント管理部３４に送信する（同図「パラメータ応答１」）。
【００６３】
こうして、検出ＡＰＣ３２からの制御パラメータを受けたコンポーネント管理部３４は、先に取得要求をしてきた要求元の制御用電子機器２に対し、その制御パラメータを送信する（同図「パラメータ応答２」）。
【００６４】
そして、この制御パラメータを受信した制御用電子機器２側では、コンポーネント管理部２４が、その制御パラメータを制御ＡＰＣ２２に渡し（同図「パラメータ応答３」）、これを受けた制御ＡＰＣ２２が、その制御パラメータに基づいて決まる制御量だけ、アクチュエータ２００を動作させる（同図「制御」）。
（２）コンポーネント管理部による処理
以下に、上述したようにアクチュエータ２００の制御を実施する過程で、各電子機器のコンポーネント管理部が内蔵メモリに格納されたプログラムに従って実行する各種処理手順を順に説明する。
（２−１）故障検出処理
はじめに、電子機器の起動後、ＡＰＣに対する要求（図３「起動要求」，「必要要求」，「生成要求」参照）が発生する毎に実行される故障検出処理の処理手順を図５に基づいて説明する。この故障検出処理は、コンポーネント管理部の故障検出機能により実現される（図２参照）。
【００６５】
この故障検出処理が起動すると、まず、タイマーによるカウントがスタートされる（ｓ１１０）。
次に、この故障検出処理の起動に先立って発行された要求に対する応答を受けたか否かがチェックされる（ｓ１２０）。
【００６６】
このｓ１２０で応答を受けたと判定された場合には（ｓ１２０：ＹＥＳ）、上記ｓ１１０にてスタートされたタイマーがストップおよびリセットされた後（ｓ１３０）、本故障検出処理が終了する。
【００６７】
また、上記ｓ１２０で応答を受けていないと判定された場合には（ｓ１２０：ＮＯ）、ＡＰＣが正常に動作しているか否かがチェックされる（ｓ１４０）。ここでは、この時点における上記タイマーのカウント値が所定のしきい値に到達した場合に、ＡＰＣが正常に動作していないと判定される。
【００６８】
このｓ１４０で、ＡＰＣが正常に動作していると判定された，つまり上記タイマーのカウント値が所定のしきい値に到達していない場合には（ｓ１４０：ＹＥＳ）、プロセスがｓ１２０へと戻る。
【００６９】
一方、ＡＰＣが正常に動作していないと判定された，つまり上記タイマーのカウント値が所定のしきい値に到達した場合には（ｓ１４０：ＮＯ）、ＡＰＣの再起動をした累積回数がセットされる変数Ｎ（初期値「０」）の値が所定の上限値Ｎｍａｘに達しているか否かがチェックされる（ｓ１５０）。
【００７０】
このｓ１５０で変数Ｎの値が上限値Ｎｍａｘに達していなければ（ｓ１５０：ＮＯ）、ＡＰＣ１０の再起動（図６「再起動要求」参照）が行われ（ｓ１６０）、変数Ｎがインクリメント（Ｎ＋１→Ｎ）された後（ｓ１７０）、プロセスがｓ１３０へと移行して本故障検出処理が終了する。
【００７１】
このようにＡＰＣを再起動したうえで故障検出処理が終了した場合には、この故障検出処理を起動する契機となった要求の再発行がなされるように構成されており（図６「必要要求（再送）参照」）、そうして再発行された要求に基づいて新たに故障検出処理が起動することとなる。
【００７２】
また、上記ｓ１５０で変数Ｎの値が上限値Ｎｍａｘに達していれば（ｓ１５０：ＹＥＳ）、ＡＰＣが故障しているものとみなし（ｓ１８０）、後述するレプリカ処理が起動された後（ｓ１９０）、プロセスがｓ１３０へと移行して本故障検出処理が終了する。
（２−２）レプリカ処理
続いて、上記故障検出処理のｓ１９０にて起動されるレプリカ処理の処理手順を図７に基づいて説明する。このレプリカ処理は、コンポーネント管理部のレプリカ管理機能により実現される（図２参照）。
【００７３】
このレプリカ処理が起動されると、まず、その起動に先立って実行されていた故障検出処理において対象となっていたＡＰＣ（以降、「対象ＡＰＣ」という）について、この対象ＡＰＣを内蔵メモリに展開させるために必要なメモリサイズ（記憶領域）を示すサイズ情報が、その対象ＡＰＣの識別情報が付加された情報として生成される（ｓ２１０）。
【００７４】
次に、このｓ２１０にて生成されたサイズ情報が送信部１６に転送された後（ｓ２２０）、こうして転送されたサイズ情報を他の電子機器それぞれに送信すべき旨が送信部１６に指令される（ｓ２３０）。こうして送信すべき旨の指令を受けた送信部１６は、先に転送されたサイズ情報を他の電子機器それぞれに送信（ブロードキャスト）する（図６「サイズ情報」参照）。
【００７５】
このサイズ情報を受信した電子機器側では、これに付加された識別情報で識別される対象ＡＰＣを展開できる程度の未使用領域が制御部１０の内蔵メモリに残っているか否かが、そのサイズ情報で示されるメモリサイズに基づいて判定され、未使用領域が残っていると判定された場合に、そのサイズ情報に対する応答をしてくる（ＡＣＫを返信してくる）。つまり、このサイズ情報は、内蔵メモリにおける未使用領域にアプリケーションコンポーネントを実装可能であるか否かの問い合わせを行うための情報となっている。
【００７６】
こうして、サイズ情報の送信が行われた以降、他の電子機器それぞれからの応答が収集され（ｓ２４０）、そうして収集した応答のうち、いずれかの応答をしてきた電子機器が、対象ＡＰＣの転送先として選択される（ｓ２５０）。
【００７７】
ここでは、例えば、サイズ情報に対して最も早く応答をしてきた電子機器を転送先として選択することが考えられ、この場合、上記ｓ２４０において最初に応答を収集した時点で、その応答をしてきた電子機器を転送先として選択するようにすればよい。
【００７８】
また、残っている未使用領域の最も大きな電子機器を転送先として選択することが考えられ、この場合、サイズ情報を受信した電子機器側で残りの未使用領域を通知するようにすると共に、上記ｓ２４０にて一定期間にわたって収集した応答の中から、その通知された未使用領域が最も大きな応答をしてきた電子機器を転送先として選択するようにすればよい。
【００７９】
また、制御システム１の動作状態に応じて最も稼働率が低い電子機器を選択することが考えられ、この場合、上記ｓ２４０による応答の収集元である電子機器の中から、その時点における制御システム１の動作状態に応じて処理負荷が最も軽いことが想定される電子機器を転送先として選択するようにすればよい。
【００８０】
また、サイズ情報に対して応答をしてきた電子機器の中から最も優先順位の高い電子機器を転送先として選択することが考えられ、この場合、上記ｓ２４０による応答の収集元である電子機器の中から、あらかじめ定められた優先順位の最も高い電子機器を転送先として選択するようにすればよい。
【００８１】
そして、上記ｓ２５０にて選択された電子機器に対し、対象ＡＰＣが転送される（ｓ２６０）。ここで、コンポーネント管理部３４は、該当電子機器に転送許可要求を送信し、これに対する応答（ＡＣＫ）を受けた後、対象ＡＰＣの転送を開始する。この対象ＡＰＣは、その転送開始が転送開始フレームにより通知された以降、これに続けて転送が開始され（図６「転送許可要求」〜「ＡＰＣ転送」参照）、その転送が終了した際にその旨を通知するための転送終了フレームが送信される（同図「転送開始フレーム」〜「転送終了フレーム」参照）。
【００８２】
なお、このＡＰＣの転送に際しては、所定の圧縮アルゴリズムにて圧縮し、かつ、所定の暗号化アルゴリズムにて暗号化された状態で、その転送が行われる。
（２−３）ローディング処理
続いて、他の電子機器２からのサイズ情報（図７のｓ２３０により送信されたもの）が受信される毎に起動されるローディング処理の処理手順を図８に基づいて説明する。このローディング処理は、コンポーネント管理部のローディング機能により実現される（図２参照）。
【００８３】
このローディング処理が起動されると、まず、その起動に先立って受信されたサイズ情報に基づいて、このサイズ情報で示されるメモリサイズのＡＰＣを展開するのに必要な未使用領域が内蔵メモリに残っているか否かが判定される（ｓ３１０）。
【００８４】
このｓ３１０にて該当未使用領域がメモリ上に残っていないと判定された場合には（ｓ３１０：ＮＯ）、直ちに本ローディング処理が終了する。
一方、上記ｓ３１０にて該当未使用領域がメモリ上に残っていると判定された場合には（ｓ３１０：ＹＥＳ）、そのサイズ情報に対する応答をする（図６「サイズ情報」直後の「ＡＣＫ」参照）（ｓ３２０）。この応答は上記他の電子機器において収集され、こうして応答を収集した電子機器が、その応答をした電子機器の中から選択されたいずれかの電子機器に対して転送許可要求（図６参照）を転送してくる。なお、本ローディング処理の起動に先立って受信されたサイズ情報が、未使用領域の通知を要求する旨のものである場合、このｓ３２０では、サイズ情報に対する応答として、その未使用領域を通知するための応答がなされる。
【００８５】
次に、上記ｓ３２０にて応答がなされた後、その応答先である他の電子機器から所定期間内に転送許可要求が送信されてこなければ（ｓ３３０：ＮＯ）、直ちに本ローディング処理が終了する。このように、転送許可要求が送信されてこないということは、本電子機器がＡＰＣの転送先として選択されなかったことを意味している。
【００８６】
一方、応答先である他の電子機器から所定期間内に転送許可要求が送信されてきたら（ｓ３３０：ＹＥＳ）、その電子機器から転送されてくるＡＰＣの受信が開始される（ｓ３４０）。ここでは、転送許可要求に対する応答をする（ＡＣＫを返信する）と、その転送開始が転送開始フレームにより通知されるため、これ以降に転送されてくるＡＰＣの受信が開始される。この後、その転送が終了したことが転送終了フレームで通知されるまでの間、そのＡＰＣの受信が継続されることとなる（図６「ＡＰＣ転送」参照）。
【００８７】
こうして、ＡＰＣの受信が開始された以降、転送終了フレームによりＡＰＣの転送が終了したことが通知されるまで，つまりＡＰＣの受信が終了するまで待機状態となる（ｓ３５０：ＮＯ）。
【００８８】
その後、転送終了フレームによりＡＰＣの転送が終了したことが通知されたら（ｓ３５０：ＹＥＳ）、その転送終了フレームに対する応答がされる（図６「転送終了フレーム」直後の「ＡＣＫ」参照）（ｓ３６０）。
【００８９】
次に、上記ｓ３５０にて転送終了を通知されたＡＰＣが内蔵メモリ上に展開される（ｓ３７０）。このＡＰＣの展開に際しては、その転送元の電子機器にて用いられた圧縮アルゴリズムに対応する解凍アルゴリズムにて解凍し、同電子機器にて用いられた暗号化アルゴリズムに対応する復号アルゴリズムにて復号したうえで、その展開が行われる。
【００９０】
次に、上記ｓ３７０にてメモリ上に展開されたＡＰＣ（図２，図６の「検出ＡＰＣレプリカ」参照）と、コンポーネント管理部４４，送信部１６および受信部１８それぞれとの間の通信経路が生成され、これによりＡＰＣのリンクが確立される（ｓ３８０）。
【００９１】
そして、上記ｓ３８０によるリンクの確立が完了した旨のリンク完了通知が発行された後（ｓ３９０）、本ローディング処理が終了する。このリンク完了通知は、後述するレプリカ認識処理の起動の契機となるものである。
【００９２】
（２−４）レプリカ認識処理
続いて、リンク完了通知（図８のｓ３９０により発行されたもの）が発行される毎に起動されるレプリカ認識処理の処理手順を図９に基づいて説明する。このレプリカ認識処理は、コンポーネント管理部のレプリカ管理機能により実現される（図２参照）。
【００９３】
このレプリカ認識処理が起動されると（ｓ４１０：ＹＥＳ）、まず、その起動に先立って発行されたリンク完了通知に基づいて、その発行に際してローディング処理において展開されたＡＰＣと、当該電子機器とが上述した管理情報テーブルに登録される（ｓ４２０）。
【００９４】
ここでは、まず、当該電子機器の管理情報テーブルに新たなデータレコードが生成され（例えば、図４（ｂ）における識別子４のデータレコード参照）、これに、ローディング処理において展開されたＡＰＣ（同図「検出ＡＰＣレプリカ」参照）が「対象ＡＰＣ」として登録され、当該電子機器（同図「表示用電子機器」参照）が「実装電子機器」として登録され、そのＡＰＣの送信元である電子機器（同図「制御用電子機器」参照）が「旧電子機器」として登録される。
【００９５】
なお、上記データレコードにおける起動状態（同図「状態」）には、適切に起動していない状態を示す「ＮＧ」がセットされる。
そして、上記ｓ４２０によりＡＰＣ１０のレプリカが認識可能な状態になった旨のレプリカ認識通知が発行された後（ｓ４３０）、本レプリカ認識処理が終了する。このレプリカ認識通知は、後述するプロセス割当処理の起動の契機となるものである。
（２−５）プロセス割当処理
続いて、レプリカ認識通知（図９のｓ４２０にて発行されたもの）が発行される毎に起動されるプロセス割当処理の処理手順を図９に基づいて説明する。このレプリカ認識処理は、コンポーネント管理部のプロセス制御機能により実現される（図２参照）。
【００９６】
このプロセス割当処理が起動されると（ｓ４４０：ＹＥＳ）、まず、その起動に先立って発行されたレプリカ認識通知につき、その発行に際してレプリカ認識処理において管理情報テーブルに登録されたＡＰＣのレプリカ（つまりローディング処理において展開されたＡＰＣ）が該当電子機器のメモリ上でＡＰＣとして機能する状態となるようにすべく、そのレプリカに対してプロセスが割り当てられる（ｓ４５０）。
【００９７】
ここでは、プロセスの割当に伴って上記管理情報テーブルの更新も行われ、具体的にいえば、まず、そのレプリカに対応するデータレコードについて、その起動状態（図３「状態」）が、適切に起動している状態を示す「ＯＫ」に更新される。そして、そのデータレコードにおける「旧電子機器」にセットされた電子機器と同じ電子機器が「実装電子機器」としてセットされた別のデータレコードが抽出され、このデータレコードにおける起動状態（同上）が、適切に起動していない状態を示す「ＮＧ」に更新される（図４（ｂ）における識別子４のデータレコード参照）。こうして、当該電子機器に、先に展開されたＡＰＣが実装された状態となる。
【００９８】
そして、上記ｓ４５０によりＡＰＣのレプリカにプロセスが割り当てられた旨のレプリカ生成完了通知が送信部１６に転送された後（ｓ４６０）、こうして転送されたレプリカ生成完了通知を他の電子機器それぞれに送信すべき旨が送信部１６に指令される（ｓ４７０）。こうして送信すべき旨の指令を受けた送信部１６は、先に転送されたレプリカ生成完了通知を他の電子機器それぞれに送信（ブロードキャスト）する。
【００９９】
上記レプリカ生成完了通知には、上記ｓ４５０による管理情報テーブルの更新内容を示す更新情報が対応づけられたものとして生成され、このレプリカ生成完了通知を受信した電子機器それぞれは、後述する更新処理において、その更新情報に基づく上記管理情報テーブルの更新を行う。
（２−６）更新処理
続いて、他の電子機器から送信されたレプリカ生成完了通知を受信する毎に実行される更新処理の処理手順を図１０に基づいて説明する。
【０１００】
この更新処理が起動すると（ｓ５１０：ＹＥＳ）、その起動に先立って受信したレプリカ生成完了通知に基づいて、当該電子機器の管理情報テーブルが更新される（ｓ５２０）。ここでは、レプリカ生成完了通知に対応づけられた更新情報に基づき、この更新情報で示される更新内容に従って管理情報テーブルが更新される。
【０１０１】
こうして、管理情報テーブルが更新された後、本更新処理が終了する。
（３）管理情報テーブル更新後の動作
上記各処理を経て、管理情報テーブルを更新した制御用電子機器２が、検出用電子機器３による検出結果を用いてアクチュエータ２００を動作させるまでの手順を図１１に基づいて説明する。
【０１０２】
まず、管理情報テーブルの更新後、制御用電子機器２では、コンポーネント管理部２４により、ＡＰＣ２２が内蔵メモリに展開されたうえで再起動される（同図「起動要求」）。
【０１０３】
こうして起動した制御ＡＰＣ２２は、アクチュエータ２００の動作を制御するために必要な制御パラメータを取得すべき旨の取得指令を発生させる（同図「取得指令」）。
この取得指令を受けたコンポーネント管理部２４は、該当する制御パラメータを生成可能なＡＰＣが実装されている他の電子機器に対し、その制御パラメータを要求するための取得要求を行う（同図「取得要求」）。
【０１０４】
ここでは、まず、図４（ｂ）に示す管理情報テーブルに基づいて、該当する制御パラメータを生成可能なＡＰＣが実装されている他の電子機器が特定される。センサ３００による検出結果に基づくパラメータが制御パラメータとして要求される場合であれば、そのパラメータを生成可能な検出ＡＰＣレプリカ４６の実装された電子機器として、表示用電子機器４が特定される。そして、こうして特定された表示用電子機器４に対して取得要求が行われる。
【０１０５】
上述した取得要求を受けた表示用電子機器４側では、コンポーネント管理部４４が、検出ＡＰＣレプリカ４６を起動させることにより内蔵メモリに展開させた後、その検出ＡＰＣレプリカ４６に対して制御パラメータが必要である旨の必要要求をする（同図「必要要求」）。
【０１０６】
この必要要求を受けた検出ＡＰＣレプリカ４６は、コンポーネント管理部４４に対して、その要求されている制御パラメータの生成に必要なセンサパラメータの取得元となるセンサ３００，および，このセンサ３００が接続された電子機器を通知するための取得元通知を行う（同図「取得元通知」）。
【０１０７】
この取得元通知を受けたコンポーネント管理部３４は、これにより通知された電子機器（ここでは検出用電子機器３）に対して、センサ３００による検出結果を示すセンサパラメータを要求する（同図「パラメータ要求１」）。
【０１０８】
この要求を受けた検出用電子機器３では、コンポーネント管理部３４が、センサ３００から、このセンサ３００による検出結果を示すセンサパラメータを取得し（同図「パラメータ要求２」，「パラメータ通知１」）、これを表示用電子機器４へと返信する（同図「パラメータ通知２」）。
【０１０９】
こうして、センサパラメータを取得した表示用電子機器４のコンポーネント管理部４４は、検出ＡＰＣレプリカ４６に対し、そのセンサパラメータに基づいて制御パラメータを生成すべき旨の生成要求を行う（同図「生成要求」）。この生成要求を受けた検出ＡＰＣレプリカ４６は、そのセンサパラメータに基づいて制御パラメータを生成したうえで、この制御パラメータをコンポーネント管理部４４に渡す（同図「パラメータ応答１」）。
【０１１０】
こうして、検出ＡＰＣレプリカ４６からの制御パラメータを受けたコンポーネント管理部４４は、先に取得要求をしてきた要求元の制御用電子機器２に対し、その制御パラメータを送信する（同図「パラメータ応答２」）。
【０１１１】
そして、この制御パラメータを受信した制御用電子機器２側では、コンポーネント管理部２４が、その制御パラメータを制御ＡＰＣ２２に渡し（同図「パラメータ応答３」）、これを受けた制御ＡＰＣ２２が、その制御パラメータに基づいて決まる制御量だけ、アクチュエータ２００を動作させる（同図「制御」）。
（４）作用，効果
このように構成された制御システム１であれば、ある電子機器において、その実装されたアプリケーションコンポーネントが正常に動作しなくなった際には（図５のｓ１８０）、この電子機器から他の電子機器に対して、このアプリケーションコンポーネントを転送し（図７のｓ２１０〜ｓ２６０）、この電子機器に実装させることができる。
【０１１２】
こうして、この電子機器は、転送されてきたアプリケーションコンポーネントを自身に実装すればよく（図８のｓ３１０〜ｓ３９０，図９のｓ４１０〜ｓ４７０）、これをあらかじめ実装しておかなくても、このアプリケーションコンポーネントによる機能を実現できるようになる（図１１の「表示用電子機器４」参照）。
【０１１３】
そのため、各電子機器に実装させておくべきアプリケーションコンポーネントが不必要に多くなってしまうことがなくなる結果、リソース（特にメモリの記憶領域）を無用に消費することなく、ある電子機器に実装されたアプリケーションコンポーネントの機能を別の電子機器に実現させることができる。
【０１１４】
また、上記実施形態において、各電子機器は、他の電子機器からサイズ情報を受信した，つまり実装可能な状態となっているか否かの問い合わせを受けた際、内蔵メモリにおける未使用の記憶領域が所定領域（ＡＰＣを展開するのに必要な未使用領域）以上残っている場合に、実装可能な状態となっていると判定する（図８のｓ３１０「ＹＥＳ」）。これにより、各電子機器は、自身の内蔵メモリにおける未使用の記憶領域に基づいて、実装可能な状態となっているか否かを判定することができる。
【０１１５】
そして、その問い合わせをした電子機器側では、そのように所定領域以上の未使用領域が内蔵メモリに残っている電子機器の中から、アプリケーションコンポーネントを転送すべき電子機器を選択することができる（図７のｓ２５０）。
【０１１６】
具体的には、例えば、サイズ情報に対して最も早く応答をしてきた電子機器、残っている未使用領域の最も大きな電子機器、その時点における制御システム１の動作状態に応じて処理負荷が最も軽いことが想定される電子機器、または、あらかじめ定められた優先順位の最も高い電子機器を、転送先，つまりＡＰＣによる機能の実現を代理させるべき電子機器として選択することができる。
【０１１７】
また、上記実施形態においては、ＡＰＣが正常に動作していないと判定された場合であっても（図５のｓ１４０「ＮＯ」）、所定回数だけＡＰＣを再起動した後（同図ｓ１５０「ＹＥＳ」）、初めてＡＰＣが故障しているとみなしている（同図ｓ１８０）。
【０１１８】
一時的なトラブルに起因してＡＰＣが正常な動作をしなくなった場合には、そのＡＰＣを再起動すれば、再び正常に動作するようになることが予想されるため、このような場合にまでＡＰＣを他の電子機器に転送する必要はないともいえる。
【０１１９】
そのため、上記実施形態のように、ＡＰＣを再起動するように構成すれば、ＡＰＣが正常に動作していないと判定された累積回数が所定の上限値に到達するまで、そのＡＰＣを繰り返し再起動することができる。これにより、一時的なトラブルに起因してＡＰＣが正常な動作をしなくなった場合には、あらかじめＡＰＣを再起動して再び正常に動作する状態に戻すことができる。この場合、アプリケーションコンポーネントが正常に動作するようになり、これが正常に動作していないとは判定されなくなるため、アプリケーションコンポーネントを実装可能な状態となっているか否かの問い合わせ、および、その転送が行われることはない。
【０１２０】
それに対し、正常に動作していないと判定された累積回数が所定の上限値に到達した時には、そのことをもって初めてＡＰＣを実装可能な状態となっているか否かの問い合わせ、および、その転送を行うことができるようになる（図７のｓ２１０〜ｓ２６０）。こうして、不必要にＡＰＣを他の電子機器に転送してしまうことを防止することができる。
【０１２１】
また、上記実施形態においては、電子機器間でのＡＰＣの転送を、そのデータ量を所定の圧縮アルゴリズムにより圧縮した状態で行うことができるため、その転送に要する通信負荷を軽減することができる。
【０１２２】
また、上記実施形態においては、電子機器間でのＡＰＣの転送を、所定の暗号化アルゴリズムにより暗号化した状態で行うことができるため、その転送に際してのＡＰＣの漏洩を防止することができる。
（５）変形例
以上、本発明の実施の形態について説明したが、本発明は、上記実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の形態をとり得ることはいうまでもない。
【０１２３】
例えば、上記実施形態においては、上記実施形態においては、制御システム１が、制御用電子機器２、検出用電子機器３、表示用電子機器４の３つの電子機器からなる場合を例示したが、システムとしての電子機器の数は３つに限られない。
【０１２４】
また、上記実施形態においては、全ての電子機器それぞれが、他の電子機器に対するＡＰＣの転送だけでなく、他の電子機器から転送されてきたＡＰＣの展開，実装を行うように構成されたものを例示した。しかし、制御システムを構成する電子機器のうち、いずれかの電子機器が、他の電子機器に対するＡＰＣの転送、および、他の電子機器から転送されてきたＡＰＣの展開，実装のうち、いずれか一方のみを行うように構成してもよい。
【０１２５】
また、上記実施形態においては、電子機器の起動後、ＡＰＣに対する要求が発生する毎に故障検出処理が実行され、ここでＡＰＣが故障していると判定されたことをもって（図５のｓ１８０）、アプリケーションコンポーネントの転送が行われるように構成されている（同図ｓ１９０，図７のｓ２１０〜ｓ２６０）。しかし、このアプリケーションコンポーネントの転送は、ＡＰＣに対する要求以外のイベント発生時や、一定期間毎に行われるようにしてもよい。
【０１２６】
また、上記実施形態においては、ＡＰＣが正常に動作していない場合であっても（図５のｓ１４０「ＮＯ」）、所定回数だけＡＰＣを再起動した後で（同図ｓ１５０「ＹＥＳ」）、初めてＡＰＣが故障しているとみなすように構成されている（同図ｓ１８０）。
【０１２７】
しかし、このようなＡＰＣの再起動を行うことなく、ＡＰＣが正常に動作していないことをもって、直ちにＡＰＣが故障しているとみなすように構成してもよい。この場合、図５のｓ１４０で「ＮＯ」と判定された場合に、ｓ１５０を行うことなく、プロセスが直ちにｓ１８０へと移行するように構成すればよい。
（６）本発明との対応関係
以上説明した実施形態において、管理情報テーブルが本発明における実装対応関係であり、図５のｓ１１０〜ｓ１４０が本発明における動作判定手段であり、同図ｓ１５０〜ｓ１７０が本発明におけるアプリ再起動手段であり、図７のｓ２１０〜ｓ２３０が本発明における実装問い合わせ手段であり、同図ｓ２４０，ｓ２５０が本発明における代理選択手段であり、同図ｓ２６０が本発明におけるアプリ転送手段であり、図８のｓ３１０が本発明における実装判定手段であり、同図ｓ３２０が本発明における可能応答手段であり、同図ｓ３７０〜ｓ３９０および図９のｓ４１０〜ｓ４５０が本発明におけるアプリ実装手段であり、同図ｓ４２０が本発明における対応更新手段であり、同図ｓ４６０，ｓ４７０が本発明における更新通知手段であり、図１０のｓ５２０が本発明における対応整合手段である。
【０１２８】
また、上記実施形態において、他の電子機器に対するＡＰＣの転送を行うように構成した電子機器は、本願発明における転送側電子機器であり、他の電子機器から転送されてきたＡＰＣの展開，実装を行うように構成した電子機器は、本願発明における被転送側電子機器である。
【図面の簡単な説明】
【０１２９】
【図１】制御システムの全体構成を示すブロック図
【図２】各電子機器に実装されたＡＰＣおよびコンポーネント管理部のイメージを示す図
【図３】各電子機器による情報のやりとりを示すタイミングチャート（その１）
【図４】管理情報テーブルのデータ構造を示す図
【図５】故障検出処理を示すフローチャート
【図６】各電子機器による情報のやりとりを示すタイミングチャート（その２）
【図７】レプリカ処理を示すフローチャート
【図８】ローディング処理を示すフローチャート
【図９】レプリカ認識処理，プロセス割当処理を示すフローチャート
【図１０】管理情報更新処理を示すフローチャート
【図１１】各電子機器による情報のやりとりを示すタイミングチャート（その３）
【符号の説明】
【０１３０】
１…制御システム、２…制御用電子機器、３…検出用電子機器、４…表示用電子機器、１０…制御部、１２…記憶部、１４…入出力部、１６…送信部、１８…受信部、２４…コンポーネント管理部、３４…コンポーネント管理部、４４…コンポーネント管理部、４６…検出ＡＰＣレプリカ、１００…ネットワーク、２００…アクチュエータ、３００…センサ。
【図１】
2009059084.tif 000003
【図２】
2009059084.tif 000004
【図３】
2009059084.tif 000005
【図４】
2009059084.tif 000006
【図５】
2009059084.tif 000007
【図６】
2009059084.tif 000008
【図７】
2009059084.tif 000009
【図８】
2009059084.tif 000010
【図９】
2009059084.tif 000011
【図１０】
2009059084.tif 000012
【図１１】
2009059084.tif 000013