(57)【要約】【課題】  複数の機器を利用する複数のユーザに対して、各ユーザの機器の利用態様に応じて、各ユーザに必要な情報のみを適切に提供することができるサーバ装置、音響制御システム及び音響制御方法を提供すること【解決手段】  サーバ３１は、ユーザを識別するユーザ情報と、当該ユーザが室内で利用する機器に関する機器情報とを関連付けて記憶しておき、前記ユーザの位置情報と、前記機器からの通知信号を受信する。そして、当該通知信号と上記ユーザ情報及び機器情報との関連付けにより情報を提供すべきユーザを決定し、当該ユーザへの提供情報を生成する。更に、当該提供情報を、室内に散在する複数のスピーカ３６を介して音響として再生させるため、上記ユーザの位置情報に基づいて適切なスピーカ３６を選択し、当該スピーカ３６へ上記提供情報を送信することとした。【選択図】  図９
2005234929.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する機器に関する機器情報とを関連付けて記憶する記憶手段と、
前記機器から送信される通知信号を受信する受信手段と、
前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断する判断手段と、
前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成する提供情報生成手段と、
前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信する送信手段と
を具備することを特徴とするサーバ装置。
【請求項２】
請求項１に記載のサーバ装置において、
前記記憶手段は、前記ユーザの嗜好情報を記憶し、
当該サーバ装置は、前記嗜好情報に基づいて、前記音響再生部へ送信する提供情報を前記ユーザの嗜好に適合するように変更する変更手段を更に具備し、
前記送信手段は、前記変更手段により変更された提供情報を前記音響再生部へ送信することを特徴とするサーバ装置。
【請求項３】
請求項１に記載のサーバ装置において、
前記所定空間内における前記ユーザの存在を確認する確認手段を更に具備し、
前記送信手段は、前記確認手段により所定空間内における前記ユーザの存在を確認したときに、前記提供情報を送信することを特徴とするサーバ装置。
【請求項４】
請求項１に記載のサーバ装置において、
前記音響再生部は前記所定空間内に散在しており、
当該サーバ装置は、
前記ユーザの位置情報を取得する取得手段と、
前記取得手段により取得したユーザの位置情報に基づいて、前記提供情報を再生させるための前記音響再生部を選択する第１の選択手段とを更に具備し、
前記送信手段は、前記第１の選択手段により選択した音響再生部へ前記提供情報を送信することを特徴とするサーバ装置。
【請求項５】
請求項４に記載のサーバ装置において、
前記第１の選択手段は、前記ユーザの位置に最も近い前記音響再生部を選択することを特徴とするサーバ装置。
【請求項６】
請求項４に記載のサーバ装置において、
前記取得手段が前記ユーザの位置情報を取得できなかった場合に、前記受信手段により受信した通知信号を保存する保存手段を更に具備し、
前記生成手段は、前記取得手段が前記ユーザの位置情報を取得次第、前記保存手段により保存した前記通知信号を基に提供情報を生成することを特徴とするサーバ装置。
【請求項７】
請求項１に記載のサーバ装置において、
前記記憶手段は、複数のユーザ毎に前記ユーザ情報を記憶し、
当該サーバ装置は、前記記憶手段により記憶したユーザ情報、機器情報及び前記受信手段により受信した通知信号に基づいて、前記提供情報を提供すべきユーザを選択する第２の選択手段を更に具備し、
前記生成手段は、前記第２の選択手段により選択されたユーザへ提供するための提供情報を生成することを特徴とするサーバ装置。
【請求項８】
請求項１に記載のサーバ装置において、
前記記憶手段は、複数の機器毎に前記機器情報を記憶するとともに、ユーザにとっての各機器の重要度を記憶し、
前記送信手段は、前記重要度に応じて、所定の機器に関する提供情報を他の機器に関する提供情報に優先して送信することを特徴とするサーバ装置。
【請求項９】
請求項１に記載のサーバ装置において、
前記機器から送信される通知信号は、前記機器が行った所定の動作の完了を通知する通知信号であることを特徴とするサーバ装置。
【請求項１０】
請求項１に記載のサーバ装置において、
前記機器から送信される通知信号は、前記機器が放送局から受信した音響通知信号又は映像通知信号であることを特徴とするサーバ装置。
【請求項１１】
ユーザへ提供する提供情報を生成するための通知信号を生成する通知信号生成手段と、前記通知信号生成手段により生成した前記通知信号を送信する通知信号送信手段とを有する機器と、
ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する前記機器に関する機器情報とを関連付けて記憶する記憶手段と、前記機器から送信される前記通知信号を受信する受信手段と、前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断する判断手段と、前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成する提供情報生成手段と、前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信する送信手段とを有するサーバ装置と
を具備することを特徴とする音響制御システム。
【請求項１２】
ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する機器に関する機器情報とを関連付けて記憶するステップと、
前記機器から送信される通知信号を受信するステップと、
前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断するステップと、
前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成するステップと、
前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信するステップと
を具備することを特徴とする音響制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響を制御してユーザに情報を提供することが可能なサーバ装置、音響制御システム及び音響制御方法に関する。
【背景技術】
【０００２】
近年、家庭内には多数の音響装置や、情報を音響によって提供する装置が存在する。しかし、このような空間においては、空間内の全ての人間が当該機器を利用している訳ではないため、それぞれの機器の音響や提供情報は全ての人間にとって必要なものではなく、不必要な人間にとっては雑音にしかならない場合が多い。よって、個々のユーザにとって本当に必要な音響や情報のみを個別に提供するという必要性が高まっている。
【０００３】
個々のユーザに適した方法で情報を提供する技術としては、例えばテレビ等の音響において、個々のユーザ独自の音場を、仮想音源や平面波スピーカによって再現するというものがある。また、ユーザの状態に応じて快適なオーディオ環境を供給するために、ユーザの平均的な生体状態に関する情報を予め記憶しておき、当該平均的な生体情報と、新たに検出した生体情報とを比較して、当該ユーザが上記平均的な生体状態になるように音響を制御して提供するという技術もある（例えば、特許文献１参照。）。
【特許文献１】特開平１１−２４４３８３号公報（段落[００２６]等）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術においては、例えばテレビやオーディオ機器といった単独の機器を用いて情報を提供することを想定しているため、同一空間内に機器が複数有り、当該機器を利用するユーザも複数存在するような場合には、各機器がそれぞれ提供する音響について、各ユーザが利用する異なる機器毎に適切な音場を再生することは依然としてできなかった。
【０００５】
以上のような事情に鑑み、本発明の目的は、複数の機器を利用する複数のユーザに対して、各ユーザの機器の利用態様に応じて、各ユーザに必要な情報のみを適切に提供することができるサーバ装置、音響制御システム及び音響制御方法を提供することにある。
【課題を解決するための手段】
【０００６】
上述の課題を解決するため、本発明のサーバ装置は、ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する機器に関する機器情報とを関連付けて記憶する記憶手段と、前記機器から送信される通知信号を受信する受信手段と、前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断する判断手段と、前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成する提供情報生成手段と、前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信する送信手段とを具備することを特徴としている。
【０００７】
ここで上記機器とは、例えばテレビ、洗濯機、電子レンジ等の家電機器等、上記提供情報の提供以外に所定の機能を発揮することができる機器をいい、上記所定空間とは、例えば家庭、オフィス等の屋内空間をいう。
【０００８】
また上記ユーザ情報とは、具体的にはユーザ名、ユーザＩＤ、ユーザの嗜好情報等、各ユーザを識別する情報及び各ユーザに関連する情報をいい、上記機器情報とは、具体的には機器の名称、機器のＩＤ、機器の利用態様、当該機器を利用するユーザに関する情報等、各機器を識別する情報及び各機器に関連する情報をいう。
【０００９】
上記機器から送信される通知信号とは、例えばテレビ等の場合には当該テレビが受信する音声信号及び映像信号をいい、電子レンジや洗濯機の場合には例えば調理や洗濯が完了したことを通知する信号等をいう。
【００１０】
上記通知信号とユーザとの関連性とは、例えば当該通知信号がユーザの必要とする情報を含む場合や、当該通知信号を送信する機器がユーザの所有する機器である場合等、上記ユーザ情報と機器情報との関連付けにより判断することができる上記通知信号と上記ユーザの関係をいう。
【００１１】
また上記提供情報とは、上記機器から受信した通知信号を基に生成される音響情報であり、提供情報の生成とは、上記機器からの通知信号を音響情報に変換する場合や、上記通知信号が音響信号の場合には当該信号をそのまま提供情報として生成する場合、更に当該音響信号をユーザの嗜好等に応じて変更する場合を含む。
【００１２】
上記音響再生部とは、具体的にはスピーカやヘッドホン等、音響を再生することが可能な装置をいう。
【００１３】
この構成によれば、上記機器から受信した通知信号とユーザとの関連性を判断して、関連性があると判断した通知信号を基に提供情報を生成し、当該提供情報を前記音響再生部を介してユーザに提供することとしたため、同一の空間内に複数の機器及びユーザが存在する場合であっても、各ユーザの機器の利用態様に応じて、各ユーザに必要な情報のみを適切に提供することができるとともに、必要のない情報がユーザに提供されることを回避することができる。
【００１４】
上記サーバ装置において、前記記憶手段は、前記ユーザの嗜好情報を記憶し、当該サーバ装置は、前記嗜好情報に基づいて、前記音響再生部へ送信する提供情報を前記ユーザの嗜好に適合するように変更する変更手段を更に具備し、前記送信手段は、前記変更手段により変更された提供情報を前記音響再生部へ送信するようにしてもよい。
【００１５】
ここで嗜好情報とは、例えばユーザの好みの音声、ユーザが快適だと思う音量、ユーザにとって理解しやすい言語、スポーツや音楽等へのユーザの興味度等の情報をいう。
【００１６】
これにより、上記判断手段が上記嗜好情報を参照することで、例えばユーザの好みの音声、音量及び言語、スポーツや音楽といった番組内容等の嗜好に応じてユーザに情報を提供することができるため、当該提供情報のユーザにとっての必要度がより向上するとともに、逆に嗜好に合わない情報がユーザに提供されるのを回避することができる。また、上記提供情報を、例えばユーザの好みの音量、言語等、上記嗜好情報に適合するように変更することで、ユーザが必要な情報を、ユーザが最も所望する態様で提供することができる。
【００１７】
上記サーバ装置は、前記所定空間内における前記ユーザの存在を確認する確認手段を更に具備し、前記送信手段は、前記確認手段により所定空間内における前記ユーザの存在を確認したときに、前記提供情報を送信するようにしてもよい。これにより、ユーザが上記所定空間内に存在することが確認されたときに上記提供情報が当該ユーザに提供されるため、ユーザが重要な情報を聞き漏らすことを防ぐことができる。
【００１８】
上記サーバ装置において、前記音響再生部は前記所定空間内に散在しており、当該サーバ装置は、前記ユーザの位置情報を取得する取得手段と、前記取得手段により取得したユーザの位置情報に基づいて、前記提供情報を再生させるための前記音響再生部を選択する第１の選択手段とを更に具備し、前記送信手段は、前記第１の選択手段により選択した音響再生部へ前記提供情報を送信するようにしてもよい。これにより、ユーザの位置情報を取得して、上記所定空間内に散在する音響再生部から、ユーザの位置に応じた適切な音響再生部を選択して当該音響再生部を介して上記提供情報をすることとしたため、各ユーザは自己の位置に応じて必要な情報のみを取得することができ、逆に取得する必要のない無駄な情報は取得を回避することができる。
【００１９】
上記サーバ装置において、前記第１の選択手段は、前記ユーザの位置に最も近い前記音響再生部を選択するようにしてもよい。これにより、ユーザの位置情報に応じて、ユーザに最も近い位置にある音響再生部から提供情報を提供することができるため、当該ユーザのみに必要な情報を最も効率よく提供することができ、また他のユーザには当該情報は聞こえないため、他のユーザは無駄な情報を取得することを回避することができる。
【００２０】
上記サーバ装置は、前記取得手段が前記ユーザの位置情報を取得できなかった場合に、前記受信手段により受信した通知信号を保存する保存手段を更に具備し、前記生成手段は、前記取得手段が前記ユーザの位置情報を取得次第、前記保存手段により保存した前記通知信号を基に提供情報を生成するようにしてもよい。これにより、例えばユーザが部屋にいない場合に、当該ユーザと関連性のある上記機器からの通知信号を一時的に保存しておき、当該ユーザが部屋に入ってきた時に上記通知信号から当該提供情報を生成して提供することができるため、機器からの通知信号を受信した時にユーザがその部屋に居なかったとしても、当該ユーザは当該提供情報を聞き逃すことがなく、また当該部屋に入ってきた時に即座に当該提供情報を取得することができる。
【００２１】
前記記憶手段は、複数のユーザ毎に前記ユーザ情報を記憶し、当該サーバ装置は、前記記憶手段により記憶したユーザ情報、機器情報及び前記受信手段により受信した通知信号に基づいて、前記提供情報を提供すべきユーザを選択する第２の選択手段を更に具備し、前記生成手段は、前記第２の選択手段により選択されたユーザへ提供するための提供情報を生成するようにしてもよい。提供情報を提供するユーザを予め選択しているため、ユーザが複数存在する場合でも、提供情報を必要なユーザに対して適切に提供することができる。
【００２２】
上記サーバ装置において、前記記憶手段は、複数の機器毎に前記機器情報を記憶するとともに、ユーザにとっての各機器の重要度を記憶し、前記送信手段は、前記重要度に応じて、所定の機器に関する提供情報を他の機器に関する提供情報に優先して送信するようにしてもよい。これにより、例えば複数の機器から同時期に通知信号の送信があった場合でも、ユーザは自己にとっての各機器の重要度に応じて、重要度の高い機器に関する提供情報を優先的に取得することができるため、ユーザにとって特に重要な情報を遅れて取得してしまうようなこともなく、かつ全ての機器に関する提供情報を重要度に応じて適切に取得することができる。
【００２３】
上記サーバ装置において、前記機器から送信される通知信号は、前記機器が行った所定の動作の完了を通知する信号であってもよい。これにより、例えば電子レンジや洗濯機等の機器がユーザに「調理完了」や「洗濯完了」等の動作完了を通知する通知信号を提供情報として生成し、当該提供情報が必要なユーザに適切に通知することができる。
【００２４】
上記サーバ装置において、前記機器から送信される通知信号は、前記機器が放送局から受信した音響信号又は映像信号であってもよい。これにより、例えばテレビ等の音響情報を必要なユーザに適切に提供することができる。また、例えばテレビ等の画像情報を認識して、ある人物の画像を、提供情報として当該人物の名前を伝える音声情報に変換する等、当該画像を音声情報としてユーザに提供することも可能である。
【００２５】
本発明の音響制御システムは、ユーザへ提供する提供情報を生成するための通知信号を生成する通知信号生成手段と、前記通知信号生成手段により生成した前記通知信号を送信する通知信号送信手段とを有する機器と、ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する前記機器に関する機器情報とを関連付けて記憶する記憶手段と、前記機器から送信される前記通知信号を受信する受信手段と、前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断する判断手段と、前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成する提供情報生成手段と、前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信する送信手段とを有するサーバ装置とを具備することを特徴としている。
【００２６】
この構成により、ユーザへの提供情報を生成するための通知信号を生成して上記サーバ装置へ送信する機器と、当該通知信号を受信して当該通知信号とユーザとの関連性を判断して提供情報を生成し、当該提供情報を上記音響再生部へ送信するサーバ装置とを具備することで、上記機器からの通知信号を提供情報として必要なユーザのみに適切に提供することができる。
【００２７】
本発明の音響制御方法は、ユーザに関するユーザ情報と、前記ユーザが所定空間内で利用する機器に関する機器情報とを関連付けて記憶するステップと、前記機器から送信される通知信号を受信するステップと、前記記憶手段により記憶した情報に基づいて、前記受信手段により受信した通知信号と前記ユーザとの関連性を判断するステップと、前記判断手段により関連性があると判断された前記通知信号を基に、前記ユーザへ提供するための提供情報を生成するステップと、前記提供情報生成手段により生成した提供情報を、音響再生部を介して音響として再生させるために、当該音響再生部へ送信するステップとを具備することを特徴としている。
【発明の効果】
【００２８】
本発明によれば、複数の機器を利用する複数のユーザに対して、各ユーザの機器の利用態様に応じて、各ユーザに必要な情報のみを適切に提供することができる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の実施の形態を図面に基づき説明する。
【００３０】
まず、本発明の一実施形態において前提となるネットワークシステムについて説明する。図１は、この発明のネットワークシステムの一例を示し、ネットワーク９を介して複数の情報処理装置１、２、３、４が接続されたものである。情報処理装置１、２、３、４は、例えば各種のＡＶ（Audio and Visual）機器やポータブル機器や、電子レンジ、洗濯機のような家電機器等である。
【００３１】
情報処理装置１について示すと、情報処理装置１は、コンピュータ機能部として情報処理コントローラ１１を備える。情報処理コントローラ１１は、メインプロセッサ２１−１、サブプロセッサ２３−１，２３−２，２３−３、ＤＭＡＣ（ダイレクトメモリアクセスコントローラ）２５−１及びＤＣ（ディスクコントローラ）２７−１を有する。
【００３２】
メインプロセッサ２１−１は、サブプロセッサ２３−１，２３−２，２３−３によるプログラム実行（データ処理）のスケジュール管理と、情報処理コントローラ１１（情報処理装置１）の全般的な管理とを行う。ただし、メインプロセッサ２１−１内で管理のためのプログラム以外のプログラムが動作するように構成することもできる。その場合には、メインプロセッサ２１−１はサブプロセッサとしても機能することになる。メインプロセッサ２１−１は、ＬＳ（ローカルストレージ）２２−１を有する。
【００３３】
サブプロセッサは、１つでもよいが、望ましくは複数とする。本例は、複数の場合である。各サブプロセッサ２３−１，２３−２，２３−３は、メインプロセッサ２１−１の制御によって並列的かつ独立にプログラムを実行し、データを処理する。更に、場合によってメインプロセッサ２１−１内のプログラムがサブプロセッサ２３−１，２３−２，２３−３内のプログラムと連携して動作するように構成することもできる。後述する機能プログラムもメインプロセッサ２１−１内で動作するプログラムである。各サブプロセッサ２３−１，２３−２，２３−３も、ＬＳ（ローカルストレージ）２４−１，２４−２，２４−３を有する。
【００３４】
ＤＭＡＣ２５−１は、情報処理コントローラ１１に接続されたＤＲＡＭ（ダイナミックＲＡＭ）などからなるメインメモリ２６−１に格納されているプログラム及びデータにアクセスするものであり、ＤＣ２７−１は、情報処理コントローラ１１に接続された外部記録部２８−１，２８−２にアクセスするものである。
【００３５】
外部記録部２８−１，２８−２は、固定ディスク（ハードディスク）でも、リムーバブルディスクでもよく、また、ＭＯ，ＣＤ±ＲＷ，ＤＶＤ±ＲＷなどの光ディスク、メモリディスク、ＳＲＡＭ（スタティックＲＡＭ）、ＲＯＭなど、各種のものを用いることができる。したがって、ＤＣ２７−１は、ディスクコントローラと称するが、外部記録部コントローラである。図１の例のように、情報処理コントローラ１１に対して外部記録部２８を複数接続できるように、情報処理コントローラ１１を構成することができる。
【００３６】
メインプロセッサ２１−１、各サブプロセッサ２３−１，２３−２，２３−３、ＤＭＡＣ２５−１及びＤＣ２７−１は、バス２９−１によって接続される。
【００３７】
情報処理コントローラ１１には、当該の情報処理コントローラ１１を備える情報処理装置１を、ネットワーク全体を通して一意的に識別できる識別子が、情報処理装置ＩＤとして割り当てられる。
【００３８】
メインプロセッサ２１−１及び各サブプロセッサ２３−１，２３−２，２３−３に対しても同様に、それぞれを特定できる識別子が、メインプロセッサＩＤ及びサブプロセッサＩＤとして割り当てられる。
【００３９】
情報処理コントローラ１１は、ワンチップＩＣ（集積回路）として構成することが望ましい。他の情報処理装置２、３、４も、上記と同様に構成される。ここで、図１において親番号が同一であるユニットは枝番号が異なっていても、特に断りがない限り同じ働きをするものとする。また、以下の説明において枝番号が省略されている場合には、枝番号の違いにいる差異を生じないものとする。
【００４０】
上述したように、１つの情報処理コントローラ内の各サブプロセッサ２３は、独立にプログラムを実行し、データを処理するが、異なるサブプロセッサがメインメモリ２６内の同一領域に対して同時に読み出しまたは書き込みを行った場合には、データの不整合を生じ得る。そこで、サブプロセッサ２３からメインメモリ２６へのアクセスは、以下のような手順によって行う。
【００４１】
図２（Ａ）に示すように、メインメモリ２６は、複数のアドレスを指定できるメモリロケーションによって構成される。各メモリロケーションに対しては、データの状態を示す情報を格納するための追加セグメントが割り振られる。追加セグメントは、Ｆ／Ｅビット、サブプロセッサＩＤ及びＬＳアドレス（ローカルストレージアドレス）を含むものとされる。また、各メモリロケーションには、後述のアクセスキーも割り振られる。Ｆ／Ｅビットは、以下のように定義される。
【００４２】
Ｆ／Ｅビット＝０は、サブプロセッサ２３によって読み出されている処理中のデータ、または空き状態であるため最新データではない無効データであり、読み出し不可であることを示す。また、Ｆ／Ｅビット＝０は、当該メモリロケーションにデータ書き込み可能であることを示し、書き込み後に１に設定される。
【００４３】
Ｆ／Ｅビット＝１は、当該メモリロケーションのデータがサブプロセッサ２３によって読み出されておらず、未処理の最新データであることを示す。当該メモリロケーションのデータは読み出し可能であり、サブプロセッサ２３によって読み出された後に０に設定される。また、Ｆ／Ｅビット＝１は、当該メモリロケーションがデータ書き込み不可であることを示す。
【００４４】
更に、上記Ｆ／Ｅビット＝０（読み出し不可／書き込み可）の状態において、当該メモリロケーションについて読み出し予約を設定することは可能である。Ｆ／Ｅビット＝０のメモリロケーションに対して読み出し予約を行う場合には、サブプロセッサ２３は、読み出し予約を行うメモリロケーションの追加セグメントに、読み出し予約情報として当該サブプロセッサ２３のサブプロセッサＩＤ及びＬＳアドレスを書き込む。
【００４５】
その後、データ書き込み側のサブプロセッサ２３によって、読み出し予約されたメモリロケーションにデータが書き込まれ、Ｆ／Ｅビット＝１（読み出し可／書き込み不可）に設定されたとき、予め読み出し予約情報として追加セグメントに書き込まれたサブプロセッサＩＤ及びＬＳアドレスに読み出される。
【００４６】
複数のサブプロセッサによってデータを多段階に処理する必要がある場合、このように各メモリロケーションのデータの読み出し／書き込みを制御することによって、前段階の処理を行うサブプロセッサ２３が、処理済みのデータをメインメモリ２６上の所定のアドレスに書き込んだ後に即座に、後段階の処理を行う別のサブプロセッサ２３が前処理後のデータを読み出すことが可能となる。
【００４７】
図２（Ｂ）に示すように、各サブプロセッサ２３内のＬＳ２４も、複数のアドレスを指定できるメモリロケーションによって構成される。各メモリロケーションに対しては、同様に追加セグメントが割り振られる。追加セグメントは、ビジービットを含むものとされる。
【００４８】
サブプロセッサ２３がメインメモリ２６内のデータを自身のＬＳ２４のメモリロケーションに読み出すときには、対応するビジービットを１に設定して予約する。ビジービットが１であるメモリロケーションには、他のデータは格納することができない。ＬＳ２４のメモリロケーションに読み出し後、ビジービットは０になり、任意の目的に使用できるようになる。
【００４９】
図２（Ａ）に示すように、さらに、各情報処理コントローラと接続されたメインメモリ２６には、複数のサンドボックスが含まれる。サンドボックスは、メインメモリ２６内の領域を画定するものであり、各サンドボックスは、各サブプロセッサ２３に割り当てられ、そのサブプロセッサが排他的に使用することができる。すなわち、各々のサブプロセッサ２３は、自身に割り当てられたサンドボックスを使用できるが、この領域を超えてデータのアクセスを行うことはできない。メインメモリ２６は、複数のメモリロケーションから構成されるが、サンドボックスは、これらのメモリロケーションの集合である。
【００５０】
更に、メインメモリ２６の排他的な制御を実現するために、図２（Ｃ）に示すようなキー管理テーブルが用いられる。キー管理テーブルは、情報処理コントローラ内のＳＲＡＭ等の比較的高速のメモリに格納され、ＤＭＡＣ２５と関連付けられる。キー管理テーブル内の各エントリには、サブプロセッサＩＤ、サブプロセッサキー及びキーマスクが含まれる。
【００５１】
サブプロセッサ２３がメインメモリ２６を使用する際のプロセスは、以下の通りである。まず、サブプロセッサ２３はＤＭＡＣ２５に、読み出しまたは書き込みのコマンドを出力する。このコマンドには、自身のサブプロセッサＩＤと、使用要求先であるメインメモリ２６のアドレスが含まれる。
【００５２】
ＤＭＡＣ２５は、このコマンドを実行する前に、キー管理テーブルを参照して、使用要求元のサブプロセッサのサブプロセッサキーを調べる。次に、ＤＭＡＣ２５は、調べた使用要求元のサブプロセッサキーと、使用要求先であるメインメモリ２６内の図２（Ａ）に示したメモリロケーションに割り振られたアクセスキーとを比較して、２つのキーが一致した場合にのみ、上記のコマンドを実行する。
【００５３】
図２（Ｃ）に示したキー管理テーブル上のキーマスクは、その任意のビットが１になることによって、そのキーマスクに関連付けられたサブプロセッサキーの対応するビットが０または１になることができる。例えば、サブプロセッサキーが１０１０であるとする。通常、このサブプロセッサキーによって１０１０のアクセスキーを持つサンドボックスへのアクセスだけが可能になる。しかし、このサブプロセッサキーと関連付けられたキーマスクが０００１に設定されている場合には、キーマスクのビットが１に設定された桁のみにつき、サブプロセッサキーとアクセスキーとの一致判定がマスクされ、このサブプロセッサキー１０１０によってアクセスキーが１０１０または１０１１のいずれかであるアクセスキーを持つサンドボックスへのアクセスが可能となる。
【００５４】
以上のようにして、メインメモリ２６のサンドボックスの排他性が実現される。すなわち、１つの情報処理コントローラ内の複数のサブプロセッサによってデータを多段階に処理する必要がある場合、以上のように構成することによって、前段階の処理を行うサブプロセッサと、後段階の処理を行うサブプロセッサのみが、メインメモリ２６の所定アドレスにアクセスできるようになり、データを保護することができる。
【００５５】
例えば、以下のように使用することが考えられる。まず、情報処理装置の起動直後においては、キーマスクの値は全てゼロである。メインプロセッサ内のプログラムが実行され、サブプロセッサ内のプログラムと連携動作するものとする。第１のサブプロセッサにより出力された処理結果データを一旦メインメモリに格納し、第２のサブプロセッサに入力したいときには、該当するメインメモリ領域は、当然どちらのサブプロセッサからもアクセス可能である必要がある。そのような場合に、メインプロセッサ内のプログラムは、キーマスクの値を適切に変更し、複数のサブプロセッサからアクセスできるメインメモリ領域を設けることにより、サブプロセッサによる多段階的な処理を可能にする。
【００５６】
より具体的には、他の情報処理装置からのデータ→第１のサブプロセッサによる処理→第１のメインメモリ領域→第２のサブプロセッサによる処理→第２のメインメモリ領域、という手順で多段階処理が行われるときには、
第１のサブプロセッサのサブプロセッサキー：０１００、
第１のメインメモリ領域のアクセスキー    ：０１００、
第２のサブプロセッサのサブプロセッサキー：０１０１、
第２のメインメモリ領域のアクセスキー    ：０１０１
というような設定のままだと、第２のサブプロセッサは第１のメインメモリ領域にアクセスすることができない。そこで、第２のサブプロセッサのキーマスクを０００１にすることにより、第２のサブプロセッサによる第１のメインメモリ領域へのアクセスを可能にすることができる。
【００５７】
図１のネットワークシステムでは、情報処理装置１、２、３、４間での分散処理のために、情報処理装置１、２、３、４間でソフトウェアセルが伝送される。すなわち、ある情報処理装置内の情報処理コントローラに含まれるメインプロセッサ２１は、コマンド、プログラム及びデータを含むソフトウェアセルを生成し、ネットワーク９を介して他の情報処理装置に送信することによって、処理を分散することができる。
【００５８】
図３に、ソフトウェアセルの構成の一例を示す。この例のソフトウェアセルは、全体として、送信元ＩＤ、送信先ＩＤ、応答先ＩＤ、セルインターフェース、ＤＭＡコマンド、プログラム及びデータによって構成される。
【００５９】
送信元ＩＤには、ソフトウェアセルの送信元である情報処理装置のネットワークアドレス及び当該情報処理装置の情報処理装置ＩＤ、更に、その情報処理装置内の情報処理コントローラが備えるメインプロセッサ２１及び各サブプロセッサ２３の識別子（メインプロセッサＩＤ及びサブプロセッサＩＤ）が含まれる。
【００６０】
送信先ＩＤ及び応答先ＩＤには、それぞれ、ソフトウェアセルの送信先である情報処理装置、及びソフトウェアセルの実行結果の応答先である情報処理装置についての、同じ情報が含まれる。
【００６１】
セルインターフェースは、ソフトウェアセルの利用に必要な情報であり、グローバルＩＤ、必要なサブプロセッサの情報、サンドボックスサイズ及び前回のソフトウェアセルＩＤから構成される。
【００６２】
グローバルＩＤは、ネットワーク全体を通して当該ソフトウェアセルを一意的に識別できるものであり、送信元ＩＤ及びソフトウェアセルの作成または送信の日時（日付及び時刻）に基づいて作成される。
【００６３】
必要なサブプロセッサの情報は、当該ソフトウェアセルの実行に必要なサブプロセッサの数を設定する。サンドボックスサイズは、当該ソフトウェアセルの実行に必要なメインメモリ２６内及びサブプロセッサ２３のＬＳ２４内のメモリ量を設定する。前回のソフトウェアセルＩＤは、ストリーミングデータなどのシーケンシャルな実行を要求する１グループのソフトウェアセル内の、前回のソフトウェアセルの識別子である。
【００６４】
ソフトウェアセルの実行セクションは、ＤＭＡコマンド、プログラム及びデータから構成される。ＤＭＡコマンドには、プログラムの起動に必要な一連のＤＭＡコマンドが含まれ、プログラムには、サブプロセッサ２３によって実行されるサブプロセッサプログラムが含まれる。ここでのデータは、このサブプロセッサプログラムを含むプログラムによって処理されるデータである。
【００６５】
更に、ＤＭＡコマンドには、ロードコマンド、キックコマンド、機能プログラム実行コマンド、ステータス要求コマンド、及びステータス返信コマンドが含まれる。
【００６６】
ロードコマンドは、メインメモリ２６内の情報をサブプロセッサ２３内のＬＳ２４にロードするコマンドであり、ロードコマンド自体のほかに、メインメモリアドレス、サブプロセッサＩＤ及びＬＳアドレスを含む。メインメモリアドレスは、情報のロード元であるメインメモリ２６内の所定領域のアドレスを示す。サブプロセッサＩＤ及びＬＳアドレスは、情報のロード先であるサブプロセッサ２３の識別子及びＬＳ２４のアドレスを示す。
【００６７】
キックコマンドは、プログラムの実行を開始するコマンドであり、キックコマンド自体のほかに、サブプロセッサＩＤ及びプログラムカウンタを含む。サブプロセッサＩＤは、キック対象のサブプロセッサ２３を識別し、プログラムカウンタは、プログラム実行用プログラムカウンタのためのアドレスを与える。
【００６８】
機能プログラム実行コマンドは、後述のように、ある情報処理装置が他の情報処理装置に対して、機能プログラムの実行を要求するコマンドである。機能プログラム実行コマンドを受信した情報処理装置内の情報処理コントローラは、後述の機能プログラムＩＤによって、起動すべき機能プログラムを識別する。
【００６９】
ステータス要求コマンドは、送信先ＩＤで示される情報処理装置の現在の動作状態（状況）に関する装置情報を、応答先ＩＤで示される情報処理装置宛に送信要求するコマンドである。機能プログラムについては後述するが、図６に示す情報処理コントローラのメインメモリ２６が記憶するソフトウェアの構成図において機能プログラムにカテゴライズされるプログラムである。機能プログラムは、メインメモリ２６にロードされ、メインプロセッサ２１により実行される。
【００７０】
ステータス返信コマンドは、上記のステータス要求コマンドを受信した情報処理装置が、自身の装置情報を当該ステータス要求コマンドに含まれる応答先ＩＤで示される情報処理装置に応答するコマンドである。ステータス返信コマンドは、実行セクションのデータ領域に装置情報を格納する。
【００７１】
図４に、ＤＭＡコマンドがステータス返信コマンドである場合におけるソフトウェアセルのデータ領域の構造を示す。
【００７２】
情報処理装置ＩＤは、情報処理コントローラを備える情報処理装置を識別するための識別子であり、ステータス返信コマンドを送信する情報処理装置のＩＤを示す。情報処理装置ＩＤは、電源投入時、その情報処理装置内の情報処理コントローラに含まれるメインプロセッサ２１によって、電源投入時の日時、情報処理装置のネットワークアドレス及び情報処理装置内の情報処理コントローラに含まれるサブプロセッサ２３の数などに基づいて生成される。
【００７３】
情報処理装置種別ＩＤには、当該情報処理装置の特徴を表す値が含まれる。情報処理装置の特徴とは、例えば、後述のテレビ、ＰＤＡ（Personal Digital Assistants）、電子レンジ等である。また、情報処理装置種別ＩＤは、映像音声再生、熱による調理等、情報処理装置の機能を表すものであってもよい。情報処理装置の特徴や機能を表す値は予め決定されているものとし、情報処理装置種別ＩＤを読み出すことにより、当該情報処理装置の特徴や機能を把握することが可能である。
【００７４】
ＭＳ（マスター／スレーブ）ステータスは、後述のように情報処理装置がマスター装置またはスレーブ装置のいずれで動作しているかを表すもので、これが０に設定されている場合にはマスター装置として動作していることを示し、１に設定されている場合にはスレーブ装置として動作していることを示す。
【００７５】
メインプロセッサ動作周波数は、情報処理コントローラ内のメインプロセッサ２１の動作周波数を表す。メインプロセッサ使用率は、メインプロセッサ２１で現在動作している全てのプログラムについての、メインプロセッサ２１での使用率を表す。メインプロセッサ使用率は、対象メインプロセッサの全処理能力に対する使用中の処理能力の比率を表した値で、例えばプロセッサ処理能力評価のための単位であるＭＩＰＳを単位として算出され、または単位時間あたりのプロセッサ使用時間に基づいて算出される。後述のサブプロセッサ使用率についても同様である。
【００７６】
サブプロセッサ数は、当該の情報処理コントローラが備えるサブプロセッサ２３の数を表す。サブプロセッサＩＤは、当該の情報処理コントローラ内の各サブプロセッサ２３を識別するための識別子である。
【００７７】
サブプロセッサステータスは、各サブプロセッサ２３の状態を表すものであり、ｕｎｕｓｅｄ，ｒｅｓｅｒｖｅｄ，ｂｕｓｙなどの状態がある。ｕｎｕｓｅｄは、当該のサブプロセッサが現在使用されてなく、使用の予約もされていないことを示す。ｒｅｓｅｒｖｅｄは、現在は使用されていないが、予約されている状態を示す。ｂｕｓｙは、現在使用中であることを示す。
【００７８】
サブプロセッサ使用率は、当該のサブプロセッサで現在実行している、または当該のサブプロセッサに実行が予約されているプログラムについての、当該サブプロセッサでの使用率を表す。すなわち、サブプロセッサ使用率は、サブプロセッサステータスがｂｕｓｙである場合には、現在の使用率を示し、サブプロセッサステータスがｒｅｓｅｒｖｅｄである場合には、後に使用される予定の推定使用率を示す。
【００７９】
サブプロセッサＩＤ、サブプロセッサステータス及びサブプロセッサ使用率は、１つのサブプロセッサ２３に対して一組設定され、１つの情報処理コントローラ内のサブプロセッサ２３に対応する組数が設定される。
【００８０】
メインメモリ総容量及びメインメモリ使用量は、それぞれ、当該の情報処理コントローラに接続されているメインメモリ２６の総容量及び現在使用中の容量を表す。
【００８１】
外部記録部数は、当該の情報処理コントローラに接続されている外部記録部２８の数を表す。外部記録部ＩＤは、当該の情報処理コントローラに接続されている外部記録部２８を一意的に識別する情報である。外部記録部種別ＩＤは、当該の外部記録部の種類（例えば、ハードディスク、ＣＤ±ＲＷ、ＤＶＤ±ＲＷ、メモリディスク、ＳＲＡＭ、ＲＯＭなど）を表す。
【００８２】
外部記録部総容量及び外部記録部使用量は、それぞれ、外部記録部ＩＤによって識別される外部記録部２８の総容量及び現在使用中の容量を表す。
【００８３】
外部記録部ＩＤ、外部記録部種別ＩＤ、外部記録部総容量及び外部記録部使用量は、１つの外部記録部２８に対して一組設定されるものであり、当該の情報処理コントローラに接続されている外部記録部２８の数の組数だけ設定される。すなわち、１つの情報処理コントローラに複数の外部記録部が接続されている場合、各々の外部記録部には異なる外部記録部ＩＤが割り当てられ、外部記録部種別ＩＤ、外部記録部総容量及び外部記録部使用量も別々に管理される。
【００８４】
ある情報処理装置内の情報処理コントローラに含まれるメインプロセッサ２１は、以上のような構成のソフトウェアセルを生成し、ネットワーク９を介して他の情報処理装置及び当該装置内の情報処理コントローラに送信する。送信元の情報処理装置、送信先の情報処理装置、応答先の情報処理装置、及び各装置内の情報処理コントローラは、それぞれ、上記の送信元ＩＤ、送信先ＩＤ及び応答先ＩＤによって識別される。
【００８５】
ソフトウェアセルを受信した情報処理装置内の情報処理コントローラに含まれるメインプロセッサ２１は、そのソフトウェアセルをメインメモリ２６に格納する。さらに、送信先のメインプロセッサ２１は、ソフトウェアセルを読み出し、それに含まれるＤＭＡコマンドを処理する。具体的には、送信先のメインプロセッサ２１は、まず、ロードコマンドを実行する。これによって、ロードコマンドで指示されたメインメモリアドレスから、ロードコマンドに含まれるサブプロセッサＩＤ及びＬＳアドレスで特定されるサブプロセッサ内のＬＳ２４の所定領域に、情報がロードされる。ここでロードされる情報は、受信したソフトウェアセルに含まれるサブプロセッサプログラムまたはデータ、あるいはその他の指示されたデータである。
【００８６】
次に、メインプロセッサ２１は、キックコマンドを、これに含まれるサブプロセッサＩＤで指示されたサブプロセッサに、同様にキックコマンドに含まれるプログラムカウンタと共に出力する。指示されたサブプロセッサは、そのキックコマンド及びプログラムカウンタに従って、サブプロセッサプログラムを実行する。そして、実行結果をメインメモリ２６に格納した後、実行を完了したことをメインプロセッサ２１に通知する。
【００８７】
なお、送信先の情報処理装置内の情報処理コントローラにおいてソフトウェアセルを実行するプロセッサはサブプロセッサ２３に限定されるものではなく、メインプロセッサ２１がソフトウェアセルに含まれる機能プログラムなどのメインメモリ用プログラムを実行するように指定することも可能である。
【００８８】
この場合には、送信元の情報処理装置は、送信先の情報処理装置宛に、サブプロセッサプログラムの代わりに、メインメモリ用プログラム及びそのメインメモリ用プログラムによって処理されるデータを含み、ＤＭＡコマンドがロードコマンドであるソフトウェアセルを送信し、メインメモリ２６にメインメモリ用プログラム及びそれによって処理されるデータを記憶させる。次に、送信元の情報処理装置は、送信先の情報処理装置宛に、送信先の情報処理装置内の情報処理コントローラについてのメインプロセッサＩＤ、メインメモリアドレス、メインメモリ用プログラムを識別するための後述の機能プログラムＩＤなどの識別子、及びプログラムカウンタを含み、ＤＭＡコマンドがキックコマンドまたは機能プログラム実行コマンドであるソフトウェアセルを送信して、メインプロセッサ２１に当該メインメモリ用プログラムを実行させる。
【００８９】
以上のように、この発明のネットワークシステムでは、送信元の情報処理装置は、サブプロセッサプログラムまたはメインメモリ用プログラムをソフトウェアセルによって送信先の情報処理装置に送信するとともに、当該サブプロセッサプログラムを送信先の情報処理装置内の情報処理コントローラに含まれるサブプロセッサ２３にロードさせ、当該サブプロセッサプログラムまたは当該メインメモリ用プログラムを送信先の情報処理装置に実行させることができる。
【００９０】
送信先の情報処理装置内の情報処理コントローラでは、受信したソフトウェアセルに含まれるプログラムがサブプロセッサプログラムである場合には、当該サブプロセッサプログラムを指定されたサブプロセッサにロードさせる。そして、ソフトウェアセルに含まれるサブプロセッサプログラムまたはメインメモリ用プログラムを実行させる。したがって、ユーザが送信先の情報処理装置を操作しなくても自動的に、当該サブプロセッサプログラムまたは当該メインメモリ用プログラムを送信先の情報処理装置内の情報処理コントローラに実行させることができる。
【００９１】
このようにして情報処理装置は、自装置内の情報処理コントローラがサブプロセッサプログラムまたは機能プログラムなどのメインメモリ用プログラムを有していない場合には、ネットワークに接続された他の情報処理装置からそれらを取得することができる。更に、各サブプロセッサ間ではＤＭＡ方式によりデータ転送を行い、また上述したサンドボックスを使用することによって、１つの情報処理コントローラ内でデータを多段階に処理する必要がある場合でも、高速かつ高セキュリティに処理を実行することができる。
【００９２】
ソフトウェアセルの使用による分散処理の結果、図５の上段に示すようにネットワーク９に接続されている複数の情報処理装置１、２、３、４は、図５の下段に示すように、仮想的な１台の情報処理装置７として動作する。ただし、そのためには、以下のような構成によって、以下のような処理が実行される必要がある。
【００９３】
図６に、個々の情報処理コントローラのメインメモリ２６が記憶するソフトウェアの構成を示す。これらのソフトウェア（プログラム）は、情報処理装置に電源が投入される前においては、当該の情報処理コントローラに接続される外部記録部２８に記録されているものである。各プログラムは、機能または特徴によって、制御プログラム、機能プログラム及びデバイスドライバにカテゴライズされる。
【００９４】
制御プログラムは、各情報処理コントローラが同じものを備え、各情報処理コントローラのメインプロセッサ２１が実行するもので、後述のＭＳ（マスター／スレーブ）マネージャ及び能力交換プログラムを含む。
【００９５】
機能プログラムは、メインプロセッサ２１が実行するもので、記録用、再生用、素材検索用など、情報処理コントローラごとに情報処理装置に応じたものが備えられる。
【００９６】
デバイスドライバは、情報処理コントローラ（情報処理装置）の入出力（送受信）用で、放送受信、モニタ出力、ビットストリーム入出力、ネットワーク入出力など、情報処理コントローラ毎に情報処理装置に応じたものが備えられる。
【００９７】
情報処理装置が物理的にネットワーク９に接続された状態で、情報処理装置に主電源が投入され、情報処理装置が電気的・機能的にもネットワーク９に接続されると、その情報処理装置の情報処理コントローラのメインプロセッサ２１は、制御プログラムに属する各プログラム、及びデバイスドライバに属する各プログラムを、メインメモリ２６にロードする。
【００９８】
ロード手順としては、メインプロセッサ２１は、まず、ＤＣ２７に読み出し命令を実行させることによって、外部記録部２８からプログラムを読み出し、次に、ＤＭＡＣ２５に書き込み命令を実行させることによって、そのプログラムをメインメモリ２６に書き込む。
【００９９】
機能プログラムに属する各プログラムについては、必要なときに必要なプログラムだけをロードするように構成してもよく、または、他のカテゴリに属するプログラムと同様に、主電源投入直後に各プログラムをロードするように構成してもよい。
【０１００】
ここで、機能プログラムに属する各プログラムは、ネットワークに接続された全ての情報処理装置の外部記録部２８に記録されている必要はなく、いずれか１つの情報処理装置の外部記録部２８に記録されていれば、前述の方法によって他の情報処理装置からロードすることができるので、結果的に図５の下段に示すように、仮想的な１台の情報処理装置７として機能プログラムを実行することができる。
【０１０１】
また、前述したようにメインプロセッサ２１によって処理される機能プログラムは、サブプロセッサ２３によって処理されるサブプロセッサプログラムと連携動作する場合がある。そこでメインプロセッサ２１が外部記録部２８から機能プログラムを読み出し、メインメモリ２６に書き込む際に対象となる機能プログラムと連携動作するサブプロセッサプログラムが存在する場合には、当該サブプロセッサプログラムも併せて同じメインメモリ２６に書き込むものとする。この場合、連携動作するサブプロセッサプログラムは１個である場合もあるし、複数個であることもあり得る。複数個である場合には、全ての連携動作するサブプロセッサプログラムをメインメモリ２６に書き込むことになる。メインメモリ２６に書き込まれたサブプロセッサプログラムはその後、サブプロセッサ２３内のＬＳ２４に書き込まれ、メインプロセッサ２１によって処理される機能プログラムと連携動作する。
【０１０２】
図３のソフトウェアセルに示したように、機能プログラムには、プログラムごとにプログラムを一意的に識別できる識別子が、機能プログラムＩＤとして割り当てられる。機能プログラムＩＤは、機能プログラムの作成の段階で、作成日時や情報処理装置ＩＤなどから決定される。
【０１０３】
そしてサブプロセッサプログラムにもサブプロセッサプログラムＩＤが割り当てられ、これによりサブプロセッサプログラムを一意的に識別可能である。割り当てられるサブプロセッサプログラムＩＤは、連携動作する相手となる機能プログラムの機能プログラムＩＤと関連性のある識別子、例えば機能プログラムＩＤを親番号とした上で最後尾に枝番号を付加させたもの等であることもあり得るし、連携動作する相手となる機能プログラムの機能プログラムＩＤとは関連性のない識別子であってもよい。いずれにしても機能プログラムとサブプロセッサプログラムが連携動作する場合には、両者とも相手の識別子であるプログラムＩＤを自プログラム内に互いに記憶しておく必要がある。機能プログラムが複数個のサブプロセッサプログラムと連携動作する場合にも、当該機能プログラムは複数個ある全てのサブプロセッサプログラムのサブプロセッサプログラムＩＤを記憶しておくことになる。
【０１０４】
メインプロセッサ２１は、自身が動作する情報処理装置の装置情報（動作状態に関する情報）を格納するための領域をメインメモリ２６に確保し、当該情報を自装置の装置情報テーブルとして記録する。ここでの装置情報は、図４に示した情報処理装置ＩＤ以下の各情報である。
【０１０５】
上述したネットワークシステムでは、ある情報処理装置への主電源投入時、その情報処理装置の情報処理コントローラのメインプロセッサ２１は、マスター／スレーブマネージャ（以下、ＭＳマネージャ）をメインメモリ２６にロードし、実行する。
【０１０６】
ＭＳマネージャは、自身が動作する情報処理装置がネットワーク９に接続されていることを検知すると、同じネットワーク９に接続されている他の情報処理装置の存在を確認する。ここでの「接続」または「存在」は、上述したように、情報処理装置が物理的にネットワーク９に接続されているだけでなく、電気的・機能的にもネットワーク９に接続されていることを示す。また、自身が動作する情報処理装置を自装置、他の情報処理装置を他装置と称する。当該装置も、当該情報処理装置を示すものとする。
【０１０７】
ＭＳマネージャが同じネットワーク９に接続されている他の情報処理装置の存在を確認する方法を以下に示す。
【０１０８】
ＭＳマネージャは、ＤＭＡコマンドがステータス要求コマンドであり、送信元ＩＤ及び応答先ＩＤが当該情報処理装置で、送信先ＩＤを特定しないソフトウェアセルを生成して、当該情報処理装置が接続されたネットワーク上に送信して、ネットワーク接続確認用のタイマーを設定する。タイマーのタイムアウト時間は、例えば１０分とされる。
【０１０９】
当該ネットワークシステム上に他の情報処理装置が接続されている場合、その他装置は、上記ステータス要求コマンドのソフトウェアセルを受信し、上記応答先ＩＤで特定されるステータス要求コマンドを発行した情報処理装置に対して、ＤＭＡコマンドがステータス返信コマンドであり、かつデータとして自身（その他装置）の装置情報を含むソフトウェアセルを送信する。このステータス返信コマンドのソフトウェアセルには、少なくとも当該他装置を特定する情報（情報処理装置ＩＤ、メインプロセッサに関する情報、サブプロセッサに関する情報など）及び当該他装置のＭＳステータスが含まれる。
【０１１０】
ステータス要求コマンドを発行した情報処理装置のＭＳマネージャは、上記ネットワーク接続確認用のタイマーがタイムアウトするまで、当該ネットワーク上の他装置から送信されるステータス返信コマンドのソフトウェアセルの受信を監視する。その結果、ＭＳステータス＝０（マスター装置）を示すステータス返信コマンドが受信された場合には、自装置の装置情報テーブルにおけるＭＳステータスを１に設定する。これによって、当該装置は、スレーブ装置となる。
【０１１１】
一方、上記ネットワーク接続確認用のタイマーがタイムアウトするまでの間にステータス返信コマンドが全く受信されなかった場合、またはＭＳステータス＝０（マスター装置）を示すステータス返信コマンドが受信されなかった場合には、自装置の装置情報テーブルにおけるＭＳステータスを０に設定する。これによって、当該装置は、マスター装置となる。
【０１１２】
すなわち、いずれの装置もネットワーク９に接続されていない状態、またはネットワーク９上にマスター装置が存在しない状態において、新たな情報処理装置がネットワーク９に接続されると、当該装置は自動的にマスター装置として設定される。一方、ネットワーク９上に既にマスター装置が存在する状態において、新たな情報処理装置がネットワーク９に接続されると、当該装置は自動的にスレーブ装置として設定される。
【０１１３】
マスター装置及びスレーブ装置のいずれについても、ＭＳマネージャは、定期的にステータス要求コマンドをネットワーク９上の他装置に送信してステータス情報を照会することにより、他装置の状況を監視する。その結果、ネットワーク９に接続されている情報処理装置の主電源が遮断され、またはネットワーク９から情報処理装置が切り離されることにより、予め判定用に設定された所定期間内に特定の他装置からステータス返信コマンドが返信されなかった場合や、ネットワーク９に新たな情報処理装置が接続された場合など、ネットワーク９の接続状態に変化があった場合には、その情報を後述の能力交換プログラムに通知する。
【０１１４】
メインプロセッサ２１は、ＭＳマネージャから、ネットワーク９上の他装置の照会及び自装置のＭＳステータスの設定完了の通知を受けると、能力交換プログラムを実行する。
【０１１５】
能力交換プログラムは、自装置がマスター装置である場合には、ネットワーク９に接続されている全ての他装置の装置情報、すなわち各スレーブ装置の装置情報を取得する。他装置の装置情報の取得は、上述したように、ＤＭＡコマンドがステータス要求コマンドであるソフトウェアセルを生成して他装置に送信し、その後、ＤＭＡコマンドがステータス返信コマンドで、かつデータとして他装置の装置情報を含むソフトウェアセルを他装置から受信することによって可能である。
【０１１６】
能力交換プログラムは、マスター装置である自装置の装置情報テーブルと同様に、ネットワーク９に接続されている全ての他装置（各スレーブ装置）の装置情報を格納するための領域を自装置のメインメモリ２６に確保し、これら情報を他装置（スレーブ装置）の装置情報テーブルとして記録する。すなわち、マスター装置のメインメモリ２６には、自装置を含むネットワーク９に接続されている全ての情報処理装置の装置情報が、装置情報テーブルとして記録される。
【０１１７】
一方、自装置がスレーブ装置である場合には、能力交換プログラムは、ネットワーク９に接続されている全ての他装置の装置情報、すなわちマスター装置及び自装置以外の各スレーブ装置の装置情報を取得し、これら装置情報に含まれる情報処理装置ＩＤ及びＭＳステータスを、自装置のメインメモリ２６に記録する。すなわち、スレーブ装置のメインメモリ２６には、自装置の装置情報が、装置情報テーブルとして記録されるとともに、自装置以外のネットワーク９に接続されているマスター装置及び各スレーブ装置についての情報処理装置ＩＤ及びＭＳステータスが、別の装置情報テーブルとして記録される。
【０１１８】
また、マスター装置及びスレーブ装置のいずれについても、能力交換プログラムは、上記のようにＭＳマネージャから、新たにネットワーク９に情報処理装置が接続されたことが通知されたときには、その情報処理装置の装置情報を取得し、上述したようにメインメモリ２６に記録する。
【０１１９】
なお、ＭＳマネージャ及び能力交換プログラムは、メインプロセッサ２１で実行されることに限らず、いずれかのサブプロセッサ２３で実行されてもよい。また、ＭＳマネージャ及び能力交換プログラムは、情報処理装置の主電源が投入されている間は常時動作する常駐プログラムであることが望ましい。
【０１２０】
マスター装置及びスレーブ装置のいずれについても、能力交換プログラムは、上記のようにＭＳマネージャから、ネットワーク９に接続されている情報処理装置の主電源が遮断され、またはネットワーク９から情報処理装置が切り離されたことが通知されたときには、その情報処理装置の装置情報テーブルを自装置のメインメモリ２６から削除する。
【０１２１】
更に、このようにネットワーク９から切断された情報処理装置がマスター装置である場合には、以下のような方法によって、新たにマスター装置が決定される。
【０１２２】
具体的には、例えば、ネットワーク９から切断されていない情報処理装置は、それぞれ、自装置及び他装置の情報処理装置ＩＤを数値に置き換えて、自装置の情報処理装置ＩＤを他装置の情報処理装置ＩＤと比較し、自装置の情報処理装置ＩＤがネットワーク９から切断されていない情報処理装置中で最小である場合、そのスレーブ装置は、マスター装置に移行して、ＭＳステータスを０に設定し、マスター装置として、上述したように、ネットワーク９に接続されている全ての他装置（各スレーブ装置）の装置情報を取得して、メインメモリ２６に記録する。
【０１２３】
図５の下段に示したようにネットワーク９に接続されている複数の情報処理装置１、２、３、４を仮想的な１台の情報処理装置７として動作させるためには、マスター装置がユーザの操作及びスレーブ装置の動作状態を把握する必要がある。
【０１２４】
図７に、４台の情報処理装置が仮想的な１台の情報処理装置７として動作する様子を示す。情報処理装置１がマスター装置、情報処理装置２、３、４がスレーブ装置Ａ、Ｂ、Ｃとして、動作しているものとする。
【０１２５】
ユーザがネットワーク９に接続されている情報処理装置を操作した場合、操作対象がマスター装置１であれば、その操作情報は、マスター装置１において直接把握され、操作対象がスレーブ装置であれば、その操作情報は、操作されたスレーブ装置からマスター装置１に送信される。すなわち、ユーザの操作対象がマスター装置１とスレーブ装置のいずれであるかにかかわらず、その操作情報は常にマスター装置１において把握される。操作情報の送信は、例えば、ＤＭＡコマンドが操作情報送信コマンドであるソフトウェアセルによって行われる。
【０１２６】
そして、マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、その操作情報に従って、実行する機能プログラムを選択する。その際、必要であれば、マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、上記の方法によって自装置の外部記録部２８−１、２８−２からメインメモリ２６−１に機能プログラムをロードするが、他の情報処理装置（スレーブ装置）がマスター装置１に機能プログラムを送信してもよい。
【０１２７】
機能プログラムには、その実行単位毎に必要となる、図４に示した各情報として表される情報処理装置種別ＩＤ、メインプロセッサまたはサブプロセッサの処理能力、メインメモリ使用量、外部記録部に関する条件等の、装置に関する要求スペックが規定されている。
【０１２８】
マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、各機能プログラムについて必要となる上記要求スペックを読み出す。また、予め能力交換プログラムによってメインメモリ２６−１に記録された装置情報テーブルを参照し、各情報処理装置の装置情報を読み出す。ここでの装置情報は、図４に示した情報処理装置ＩＤ以下の各情報を示し、メインプロセッサ、サブプロセッサ、メインメモリ及び外部記録部に関する情報である。
【０１２９】
マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、ネットワーク９上に接続された各情報処理装置の上記装置情報と、機能プログラム実行に必要となる上記要求スペックとを順次比較する。
【０１３０】
そして、例えば、機能プログラムが録画機能を必要とする場合には、情報処理装置種別ＩＤに基づいて、録画機能を有する情報処理装置のみを特定して抽出する。更に、機能プログラムを実行するために必要なメインプロセッサまたはサブプロセッサの処理能力、メインメモリ使用量、外部記録部に関する条件を確保できるスレーブ装置を、実行要求候補装置として特定する。ここで、複数の実行要求候補装置が特定された場合には、当該候補装置から１つの実行要求候補装置を特定して選択する。
【０１３１】
実行要求するスレーブ装置が特定されたら、マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、その特定されたスレーブ装置について、自装置内の情報処理コントローラ１１に含まれるメインメモリ２６−１に記録されている当該スレーブ装置の装置情報テーブルを更新する。
【０１３２】
更に、マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、ＤＭＡコマンドがロードコマンド及びキックコマンドであるソフトウェアセルを生成し、当該ソフトウェアセルのセルインターフェースに、機能プログラムに関する必要なサブプロセッサの情報及びサンドボックスサイズ（図３参照）を設定して、上記実行要求されるスレーブ装置に対して送信する。
【０１３３】
機能プログラムの実行を要求されたスレーブ装置は、その機能プログラムを実行するとともに、自装置の装置情報テーブルを更新する。その際、必要であれば、スレーブ装置内の情報処理コントローラに含まれるメインプロセッサ２１は、上記の方法によって自装置の外部記録部２８からメインメモリ２６に機能プログラムおよび当該機能プログラムと連携動作するサブプロセッサプログラムをロードする。
【０１３４】
機能プログラムの実行を要求されたスレーブ装置の外部記録部２８に、必要な機能プログラムまたは当該機能プログラムと連携動作するサブプロセッサプログラムが記録されていない場合には、他の情報処理装置が当該機能プログラムまたはサブプロセッサプログラムを、その機能プログラム実行要求先のスレーブ装置に送信するように、システムを構成すればよい。
【０１３５】
サブプロセッサプログラムについては、前述のロードコマンドおよびキックコマンドを利用して他の情報処理装置に実行させることもできる。
【０１３６】
機能プログラムの実行終了後、機能プログラムを実行したスレーブ装置内の情報処理コントローラに含まれるメインプロセッサ２１は、終了通知をマスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１に送信するとともに、自装置の装置情報テーブルを更新する。マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、その終了通知を受信して、機能プログラムを実行したスレーブ装置の装置情報テーブルを更新する。
【０１３７】
マスター装置１内の情報処理コントローラ１１に含まれるメインプロセッサ２１−１は、自装置及び他装置の装置情報テーブルの参照結果から、当該の機能プログラムを実行することができる情報処理装置として、自身を選択する場合もあり得る。その場合には、マスター装置１が当該機能プログラムを実行する。
【０１３８】
図７の例で、ユーザがスレーブ装置Ａ（情報処理装置２）を操作し、当該操作に応じた機能プログラムを別のスレーブ装置Ｂ（情報処理装置３）が実行する場合について、図８を用いてその分散処理の例を説明する。
【０１３９】
図８の例では、ユーザがスレーブ装置Ａを操作することによって、スレーブ装置Ａを含むネットワークシステム全体の分散処理が開始して、まず、スレーブ装置Ａは、ステップ８１で、その操作情報をマスター装置１に送信する。
【０１４０】
マスター装置１は、ステップ７２で、その操作情報を受信し、さらにステップ７３に進んで、自装置のメインメモリ２６−１に記録されている自装置及び他装置の装置情報テーブルから、各情報処理装置の動作状態を調べて、受信した操作情報に応じた機能プログラムを実行することができる情報処理装置を選択する。この例は、スレーブ装置Ｂが選択される場合である。
【０１４１】
次に、マスター装置１は、ステップ７４で、その選択したスレーブ装置Ｂに対して機能プログラムの実行を要求する。
【０１４２】
スレーブ装置Ｂは、ステップ９５で、その実行要求を受信し、さらにステップ９６に進んで、実行要求された機能プログラムを実行する。
【０１４３】
以上のように、ユーザは、１台の情報処理装置のみを操作することによって、他の情報処理装置を操作することなく、複数の情報処理装置１、２、３、４を仮想的な１台の情報処理装置７として動作させることができる。
【０１４４】
次に、以上のようなネットワークシステムを前提に、本発明を家庭内ネットワークシステムに適用した場合の実施形態について説明する。
【０１４５】
図９は、本実施形態におけるシステムの構成を示す図である。同図に示すように、本実施形態において室内には、サーバ３１、テレビ３２、電子レンジ３３、洗濯機３４、スピーカ３６が設置されており、またユーザＡ及びＢはそれぞれ無線ＬＡＮ端末３５（３５ａ及び３５ｂ）を携帯している。上記機器は無線ＬＡＮ（Local Area Network）により通信を行うことが可能である。
【０１４６】
サーバ３１は、上記テレビ３２、電子レンジ３３、洗濯機３４等の情報通知機器（以下、単に機器ともいう。）がユーザに提供するための通知信号をそれらの機器から受信して一括管理し、当該通知信号とユーザとの関連性を判断した上で、通知信号から提供情報を生成し、当該ユーザのみに提供情報が提供されるように、そのユーザの近隣のスピーカ３６を選択する。そして当該提供情報を音響として再生させるためにスピーカ３６に送信する。
【０１４７】
テレビ３２は、通知信号として、受信したテレビ放送の音響信号をサーバ３１へ送信し、また電子レンジ３３及び洗濯機３４は、通知信号として例えば調理完了や洗濯完了等をユーザに知らせるための音声信号をそれぞれサーバ３１へ送信する。当該音声信号は例えば「調理完了しました。」、「洗濯完了しました。」等の音声であってもよいし、単なる効果音であってもよい。
【０１４８】
無線ＬＡＮ端末３５は例えばＰＤＡ、携帯電話等の携帯型端末であり、ユーザが室内にいる場合に、自らの現在の位置情報を検知し、当該位置情報を無線ＬＡＮを介して上記サーバ３１へ送信することができる。具体的には、無線ＬＡＮ端末３５は、例えば室内の任意の場所に設置された基地局（無線ＬＡＮアクセスポイント、図示せず）との間を伝播する無線ＬＡＮ信号を利用して三辺測量等を行うことにより、室内における自己の位置を高精度に検知することが可能であり、検知した位置情報を上記サーバ３１へ送信する。
【０１４９】
スピーカ３６は、室内の任意の場所に散在するように複数設置され（３６ａ、３６ｂ、３６ｃ・・・）、サーバ３１から提供情報としての音響信号の再生依頼を受信して当該音響信号を再生する。当該スピーカ３６は、平面波スピーカという技術により、音波が直進しやすく、周辺に拡散しない特性を持っており、スピーカ３６の近隣のユーザのみにピンポイントで音響を再生させることが可能である。
【０１５０】
図１０は、上記家庭内ネットワークシステムの電気的な構成を示す図である。上述の図１と同様の構成となる部分については同一の符号を付し、説明を省略する。
【０１５１】
同図に示すように、本ネットワークシステムにおいては、サーバ３１、テレビ３２、電子レンジ３３、洗濯機３４、無線ＬＡＮ端末３５及びスピーカ３６が無線ＬＡＮにより接続され、互いに通信を行うことが可能となっている。また、サーバ３１は上述の図１等における情報処理装置１として、テレビ３２は情報処理装置２として、他の機器も同様にそれぞれ上記情報処理装置として機能する。各情報処理装置は、それぞれ上述のメインプロセッサ、サブプロセッサを含む情報処理コントローラを有し、上記ＤＭＡコマンド等によりソフトウェアセルを実行したり、各種データをやり取りしたりすることが可能である。
【０１５２】
サーバ３１は、情報処理コントローラ１１のバス２９−１に接続されたバス４５に、通信部４１、位置情報取得部４２及び提供情報処理部４３を有する。また、提供情報処理部４３には提供情報データベース４４が接続されている。
【０１５３】
通信部４１は、ＬＡＮにより上記テレビ３２や電子レンジ３３等の各機器と通信を行い、機器からの通知信号を受信する際のインターフェースとなる。また通信部４１は、上記各スピーカ３６とも通信を行い、ユーザへ提供するための上記提供情報を当該スピーカ３６へ送信する。
【０１５４】
位置情報取得部４２は、無線ＬＡＮにより上記各ユーザが携帯する無線ＬＡＮ端末３５と通信を行うことにより、各ユーザの室内における位置情報を取得する。また、当該位置情報から、ユーザに提供情報を提供するためのスピーカ３６を決定して、上記通信部４１へ当該決定したスピーカ３６を通知する。
【０１５５】
提供情報処理部４３は、後述する提供情報データベース４４を参照して上記通知信号とユーザとの関連性を判断し、当該提供情報の提供対象者を検索して、上記通知信号を基に提供情報を生成する。そして、上記通信部４１に対して、当該生成した提供情報を各スピーカ３６へ送信して再生するよう依頼を行う。
【０１５６】
図１１は、上記提供情報データベース４４に記憶されたデータの詳細を示した図である。
【０１５７】
同図に示すように、提供情報データベース４４は、情報通知機器データ、提供対象者データ、重要度データ、提供中情報データ、保留提供信号データを有する。
【０１５８】
情報通知機器データは更に、情報通知機器ＩＤ、情報通知機器名称、機器モード、提供対象者ＩＤの各データに区分けされる。情報通知機器ＩＤは、上記情報通知機器を識別するためのＩＤであり、情報通知機器名称は、「テレビ」、「電子レンジ」といった当該機器の名称である。機器モードは、当該機器が複数のユーザが使用する共用機器か、それとも特定の個人が使用する個人機器かの情報を登録する。例えばテレビ３２は共用機器として、また仮に家庭内で料理をするのが母親だけの場合には、電子レンジ３３は当該母親の個人機器として登録する。提供対象者ＩＤは、上記情報通知機器からの通知信号を提供情報として提供する対象のユーザを識別するものである。これらの情報通知機器データは、室内の情報通知機器の数だけ存在する。
【０１５９】
提供対象者データには、上記提供対象者ＩＤ、提供対象者名、音量データ、音声データ、言語データ、嗜好データ、現在位置データが含まれる。提供対象者名は文字通り上記提供対象者たるユーザの名前である。音量データは、当該提供対象者へ情報を提供する際の音量データであり、例えば数値、または大、中、小等、当該提供対象者の好みの音量を予め登録しておく。音声データは、当該情報提供者へ情報を提供する際の音声データであり、例えば情報提供者毎に異なる効果音を登録したりする。嗜好データは、例えば「音楽」、「スポーツ」等、または「テレビが嫌い」等、当該情報提供者の嗜好情報を登録する。当該提供対象者データは、各機器を利用するユーザの数だけ存在し、各機器の情報をユーザに提供する場合に、どのユーザにとって必要な情報であるかを判断する際に用いられる。
【０１６０】
重要度データは、上記情報通知機器ＩＤ、上記提供対象者ＩＤ及び重要度を含む。重要度とは、各提供対象者にとっての該当情報通知機器の情報の重要度を表す。当該重要度データは、複数の機器がサーバ３１に同時に通知信号を送信した場合に、提供対象者毎の各機器の優先度データとして用いる。すなわち、複数機器から通知信号の送信があった場合には、当該重要度が高い機器に関する提供情報を優先して提供し、当該提供が終了次第残りの機器に関する提供情報を提供する。当該データも、上記情報通知機器の数だけ存在する。
【０１６１】
提供中情報データは、現在提供情報の提供を行っている最中の情報通知機器の情報通知機器ＩＤ、提供対象者ＩＤ及び提供中情報内容を含む。提供中情報内容とは、例えばテレビ３２の情報の場合は「音楽」等の情報であり、上記嗜好データ照らし合わせて、あるユーザに提供している情報を他のユーザにも提供するか否かを判断したりする場合に用いる。当該データは、提供中の情報が複数ある場合にはその数だけ存在する。
【０１６２】
保留提供情報データは、現在提供情報を生成して提供することを保留している情報通知機器の情報通知機器ＩＤ、提供対象者ＩＤ及び保留中の通知信号データを含む。提供を保留中の通知信号データとは、例えば提供対象者が室内にいない場合に、既に上記機器から通知信号を受信はしているものの、当該提供対象者が室内に入ってくるまで、提供情報の生成及び提供を保留する通知信号に関するデータをいう。当該通知信号の保留処理の詳細については後述する。
【０１６３】
以上の各データは、例えば全てに共通のデータである提供対象者ＩＤ等を用いて、互いに関連付けることが可能となっている。
【０１６４】
次に、上記情報処理装置としてのサーバ３１、テレビ３２、電子レンジ３３及び無線ＬＡＮ端末３５が情報をやり取りする際に送信される上記ＤＭＡコマンドについて述べる。図１２は、本実施形態において各装置がソフトウェアセルの一部として送信するＤＭＡコマンドの例を示した図である。
【０１６５】
同図（ａ）に示すように、テレビ３２は、テレビ放送を受信すると、上記サーバ３１へＤＭＡコマンドとして番組内容送信コマンドを送信する。当該番組内容送信コマンドは、データとして、テレビ３２を識別するための情報通知機器ＩＤ、番組種別データ、及び上記通知信号としての番組内容データを含む。番組種別データとは例えば「音楽」、「スポーツ」等の種別であり、上記嗜好データと照らし合わせて、各ユーザの嗜好分析を行う場合に用いる。番組内容データは、例えばテレビ３２が受信した音響信号であり、スピーカ３６を介して再生される提供情報の基となるデータである。なお、テレビ３２は、番組内容データとして映像信号をサーバ３１へ送信して、例えばサーバ３１が画像分析により各ユーザの嗜好を判断するようにしてもよい。
【０１６６】
同図（ｂ）に示すように、電子レンジ３３は、例えばグリル等の調理を完了すると、サーバ３１へ調理完了通知コマンドを送信する。当該調理完了通知コマンドは、データとして、電子レンジ３３を識別するための情報通知機器ＩＤ及び調理完了情報を通知する通知信号としての完了通知データを含む。当該完了通知データは、例えば「調理完了しました。」という音声データや、テキストデータ等、サーバ３１が電子レンジ３３の調理完了を認識できるものであればどのようなものであってもよい。
【０１６７】
同図（ｃ）に示すように、無線ＬＡＮ端末３５は、当該端末を携帯するユーザの室内における位置を検知すると、サーバ３１へ位置情報通知コマンドを送信する。当該位置情報通知コマンドは、データとして、当該ユーザを識別するための提供対象者ＩＤ及び当該ユーザの位置データを含む。位置データは例えば室内における座標データ等である。
【０１６８】
同図（ｄ）に示すように、サーバ３１は、上記機器から通知信号を受信し、無線ＬＡＮ端末３５からユーザの位置データを受信すると、当該ユーザへ情報を提供するため、当該ユーザの近隣のスピーカ３６を選択して音響再生依頼コマンドを送信する。当該音響再生依頼コマンドは、データとして、再生音響データ、位置データ及び音量データを含む。再生音響データは、提供情報として再生される音響信号そのものである。音響再生依頼コマンドを受信したスピーカ３６は、上記位置データを参照してその位置において音響が再生されるように音響信号を出力し、また音量データを参照してその音量で再生されるように出力する。
【０１６９】
次に、以上のように構成されたシステムにおいて、ユーザに提供情報を提供する際のサーバ３１の動作について説明する。図１３は、当該動作を示すフロー図である。
【０１７０】
同図に示すように、まずサーバ３１は、通信部４１を介して、テレビ３２、電子レンジ３３等の機器から通知信号等及びその他のデータを含む上記ＤＭＡコマンドを受信する（ステップ５１）。そして、提供情報処理部４３は、上記提供情報データベース４４を参照して、当該通知信号から提供情報生成して提供すべき対象者を検索する（ステップ５２）。具体的には、受信したデータに含まれる上記情報通知機器ＩＤと上記情報通知機器データを参照して、提供対象者ＩＤとの関連付けから提供者を決定する。また、テレビ３２のような共用機器からの提供情報の場合には、当該テレビ３２が受信した番組の内容と各提供対象者の嗜好データとを照合して、テレビ３２が嗜好に合わないユーザや、例えば番組内容から音楽が嗜好に合わないユーザを提供対象者から外す等する。
【０１７１】
続いてサーバ３１は、位置情報取得部４２が、上記決定した提供対象者の位置データを取得済みか否かを確認する（ステップ５３）。すなわち、当該提供対象者が携帯する無線ＬＡＮ端末３５から位置データを含む位置情報通知コマンドの送信があり、提供対象者データの現在位置データが登録されているか否かを確認し、位置データが登録されている場合には（ステップ５３のＹＥＳ）、提供情報処理部４３は、決定した提供対象者に対して、音響としてスピーカ３６に再生させるための提供情報を生成する（ステップ５４）。具体的には、提供情報を音響として提供対象者に対して再生させる際の音量、音声、言語等を上記提供対象者データを参照して決定し、最終的にスピーカ３６に再生させるための音響信号を生成する。また、上記通知信号が音響信号以外の例えばテキストデータ、画像データであった場合には、上記提供情報処理部４３は、それらの情報の内容を表す音響信号に変換する。例えば電子レンジ３３からの通知信号が例えば「調理完了」というテキストデータであった場合には、当該データを「調理完了しました」という音響信号に変換する。また上記テレビ３２から映像信号を受信した場合には、当該映像を解析して例えばその映像中の人物等を認識して、例えば「○○○が出演しています」というような、当該人物がテレビに出演していることを知らせる音響信号を生成するようにしてもよい。これらの変換処理は、例えば提供情報データベース４４に予め変換に必要なデータを記憶しておくことで実現できる。
【０１７２】
次に、サーバ３１の上記位置情報取得部４２は、上記取得した位置データを基に、その提供対象者のみに対して音響が聞こえるように、提供対象者の位置に最も近いスピーカを選択する（ステップ５６）。なお、上記位置データからスピーカを選択する際には、具体的には以下のように処理する。
【０１７３】
すなわち、室内を図１４に示すようなマトリクスとして捉え、Ａ−１、Ｂ−２、Ｃ−３等のマス目を、音響を再生させる場所の単位とする。そして、上記取得した位置データが当該マトリクス上のどのマス目に属するかを確認し、属するマス目に最も近いスピーカ３６を選択する。若しくは、上記マス目と、当該マス目にユーザが位置する場合に再生させるスピーカ３６とを対応付けて予め設定しておいてもよい。例えば、提供対象者がＡ−１、Ａ−２、Ｂ−１及びＢ−２に位置する場合にはスピーカ３６ａから、Ａ−３、Ａ−４、Ａ−５、Ｂ−３、Ｂ−４、Ｂ−５及びＣ−４に位置する場合にはスピーカ３６ｂから再生させるように設定する。
【０１７４】
そして、このようにサーバ３１が選択したスピーカ３６に、上記提供情報としての音響信号を含む音響再生依頼コマンドを通信部４１を介して送信する（ステップ５７）。これにより、当該スピーカ３６から上記決定した情報提供者に対してのみに聞こえるように提供情報が再生される。
【０１７５】
なお、上記ステップ５３において位置情報取得部４２が提供対象者の位置データを取得できなかった場合には（ステップ５３のＮＯ）、提供情報処理部４３は、上記受信した通知信号等を上記保留提供情報データとして保存する（ステップ５４）。当該保留された通知信号は、位置データが取得でき次第、提供情報として生成され、ユーザの位置データに応じて選択されたスピーカから提供される。
【０１７６】
以上の動作により、同一の空間内に複数の機器及びユーザが存在する場合であっても、各ユーザの機器の利用態様に応じて、機器から受信した通知信号とユーザとの関連性を判断して提供情報を生成しているため、各ユーザに必要な情報のみを適切に提供することができる。また他のユーザには当該提供情報は聞こえないため、他のユーザは無駄な情報を取得することを回避することができる。
【０１７７】
また、提供対象者たるユーザの位置データを取得できなかった場合、すなわち当該ユーザが室内にいない場合には、一時的にそのユーザに関連性のある機器からの通知信号を保存しておき、当該ユーザの位置データが取得でき次第、上記通知信号から提供情報を生成して提供することができるため、ユーザは、機器からの通知信号送信時にその部屋に居なかったとしても当該提供情報を聞き逃すことなく確実に取得することができる。
【０１７８】
次に、上記動作について、具体的な例を用いてより詳細に説明する。図１５（ａ）及び（ｂ）は、本例における情報通知機器及び提供対象者の情報の一覧を示した図である。同図（ａ）に示すように、室内に情報通知機器としてテレビ３２、電子レンジ３３、洗濯機３４が存在し、テレビ３２は共用機器、電子レンジ３３はＢさんの個人機器、そして洗濯機３４はＣさんの個人機器とする。また同図（ｂ）に示すように、Ｃさんは大音量を好まないため音量を中程度に設定してあり、また例えばＣさんは外国人であるため、英語で情報を提供する。嗜好データとしては、Ａさんは音楽、Ｂさんは映画及びドラマ、Ｃさんは音楽とスポーツが好みであるものとする。
【０１７９】
このような条件において、まず、元々部屋に居たＡさん及び後から部屋に入室してきたＢさんの２人に情報を提供する場合の例について説明する。図１６は、本例において各装置間でやり取りされる情報の流れの一例を示したシーケンス図である。
【０１８０】
同図に示すように、まずＡさんが最初に入室した段階で、Ａさんが携帯する無線ＬＡＮ端末３５ａからサーバ３１の位置情報取得部４２に位置データがＡさんの提供対象者ＩＤとともに送信され、Ａさんの上記現在位置データとして登録される。その後Ａさんがテレビ３２の電源を投入すると、テレビ３２からサーバ３１の通信部４１に対して、通知信号としてテレビ音響信号が番組内容情報及び情報提供機器ＩＤ等とともに送信される。本例では、番組内容は音楽番組であるとする。当該通知信号等は通信部４１から提供情報処理部４３へ送られる。
【０１８１】
提供情報処理部４３は、上記提供情報データベース４４を参照して、提供情報を提供する提供対象者を決定する。本例では、現時点で部屋にはＡさんのみ存在していること、及び音楽はＡさんの嗜好に合致することをサーバ３１は検知しているため、Ａさんの近隣のスピーカ３６ｆを含め、室内の全てのスピーカ３６ａ〜３６ｈに上記テレビ３２の音響信号を提供情報として送信する。そして当該スピーカ３６ａ〜３６ｈは音量を１０に設定して、例えば５．１ｃｈのようなマルチチャンネルサラウンドで当該音響信号の再生を行う。なお、音楽番組の場合は、音声及び言語に関しては、言語が日本語に設定されていれば当該番組の音響信号をそのまま送信するものとする。
【０１８２】
その後、Ｂさんが部屋に入ってくると、Ｂさんが携帯する無線ＬＡＮ端末３５ｂからサーバ３１の位置情報取得部４２に対して位置データが送信される。この時、サーバ３１の提供情報データベース４４中、提供中情報データには、テレビ３２が登録されているので、サーバ３１の提供情報処理部４３は、当該テレビ３２の提供情報をＢさんにも提供するか否かを判断する。すなわち、提供情報処理部４３は、提供対象者データ中の嗜好データを参照し、Ｂさんの嗜好データに音楽が含まれないことを検知して、Ａさんのみに上記テレビ３２の音響を再生させるようにスピーカ３６を切り替える。
【０１８３】
具体的には、提供情報処理部４３は、提供対象者データ中の現在位置データを参照して、例えばＡさん及びＢさんが上述した図１０の位置に存在している場合には、Ａさんの位置に最も近いスピーカ３６ｆのみにテレビ３２の音響を再生させるため、それ以外のスピーカ３６に再生処理の中止を通信部４１を介して要求する。これにより、Ａさんに最も近いスピーカ３６ｆのみがテレビの音響を再生し、Ｂさんの近隣の例えばスピーカ３６ｇ、３６ｈ等は再生しないため、Ａさんのみがテレビの音響を聞くことができる。
【０１８４】
その後、例えばＢさんが電子レンジ３３を用いて調理をしたとすると、所定時間経過後、電子レンジ３３は調理完了を検知し、当該調理完了の通知信号を情報通知機器ＩＤ等の情報とともにサーバ３１の通信部４１へ通知する。通信部４１は受信した情報を提供情報処理部４３に送信する。提供情報処理部４３は、提供情報データベース４４を参照して、情報通知機器ＩＤから電子レンジ３３に関する情報の提供対象者を検索し、対象者がＢさんであることを検知する。更に提供情報処理部４３は、通知の際の音量、言語を提供対象者データから検索し、Ｂさんに対して音響を再生させる際の音量を１０、言語は日本語と決定する。なお、図１５には図示していないが、音声に関しては例えば「調理完了しました。」等の予め設定した音声を再生させるように決定して、その音響信号を生成する。
【０１８５】
次に、位置情報取得部４２は、上記受信した位置データから、Ｂさんは上記図１４のマトリクス中、Ｄ−６の位置に存在することを確認し、例えば予め設定した当該Ｄ−６対応するスピーカ３６ｈを選択する。そして、通信部４１を介して当該スピーカ３６ｈに提供情報として音響信号を送信することにより、スピーカ３６ｈから電子レンジ３３の提供情報がＢさんのみに聞こえるように提供される。
【０１８６】
次に、図１５の条件における別の例として、情報通知機器からサーバ３１に通知信号の送信があったときに、その通知信号に対応する提供対象者が部屋にいない場合の例について説明する。本例では、元々部屋に居たＡさん及び後から部屋に入室してきたＣさんの２人に情報を提供するものとする。図１７は、本例において各装置間でやり取りされる情報の流れの一例を示したシーケンス図である。
【０１８７】
同図に示すように、まず、上記図１６の場合と同様の処理により、Ａさんに対してテレビの音楽番組の音響情報が提供される。当該再生中に、洗濯機３４が洗濯完了の通知信号を情報通知機器ＩＤ等の情報とともにサーバ３１の通信部４１へ通知する。通信部４１は受信した情報を提供情報処理部４３に送信する。提供情報処理部４３は、提供情報データベース４４を参照して、情報通知機器ＩＤから洗濯機３４に関する情報の提供対象者を検索し、対象者がＣさんであることを検知する。この時、Ｃさんの携帯する無線ＬＡＮ端末３５ｃからの位置データの送信がないため、サーバ３１は、Ｃさんが室内にいないことを検知し、上記洗濯機３４からの上記通知信号を上記提供情報データベース４４中、保留提供情報データとして保存する。
【０１８８】
その後、Ｃさんが部屋に入ってくると、Ｃさんが携帯する無線ＬＡＮ端末３５ｃからサーバ３１の位置情報取得部４２に対して位置データが送信される。提供情報処理部４３は、上記保留提供情報データとして洗濯機３４からの通知信号が保存されているため、当該通知信号を基に提供情報を生成して提供するための準備を始める。一方、提供情報処理部４３は、現在Ａさんに向けて再生しているテレビの音響をＣさんにも再生すべきか否かを判断する。テレビ３２は共用機器として登録されており、また音楽番組はＣさんの嗜好も合致するため、Ｃさんにもテレビの音響を再生させる必要があることを判断する。しかしこの場合、洗濯機３４からの通知信号も重なっているため、提供情報処理部４３は、上記重要度データを参照して、どちらの機器に関する提供情報を優先して提供すべきかを判断する。本例では、Ｃさんの重要度データには洗濯機３４の優先度がテレビ３２よりも高く設定されているものとする。そこで提供情報処理部４３は、まず洗濯機３４の提供情報を提供する。具体的には、Ｃさんの提供対象者データを参照して、Ｃさんに提供情報を提供する際の音量、音声、言語を決定する。上記図１５の例では、Ｃさんの音量は５、言語は英語に設定されているため、当該設定に従って決定し、また音声については例えば「Washing is completed.」等、英語で洗濯完了を通知するような音声や効果音に設定して提供情報としての音響信号を生成する。
【０１８９】
続いて位置情報取得部４２は、上記受信したＣさんの位置データから、例えばＣさんは上記図１４のマトリクス中、Ａ−６の位置に存在することを確認し、例えば予め設定した当該Ａ−６対応するスピーカ３６ｃを選択する。そして、通信部４１を介して当該スピーカ３６ｃに音響信号を送信することにより、スピーカ３６ｃから洗濯機３４の提供情報がＣさんのみに聞こえるように提供される。
【０１９０】
当該洗濯機３４の提供情報の提供が完了した時点で、提供情報処理部４３は、Ｃさんにテレビの音響を再生させるための準備を始める。具体的には、上記Ｃさんの提供対象者データを参照して、テレビ音響を再生させる際の音量、音声、言語を上記と同様に決定する。上述のように、音量は５、言語は英語であることを検知し、例えば上記音楽番組の副音声等の英語チャンネルが存在する場合には、当該英語チャンネルの音声を再生させるように設定する。
【０１９１】
そして位置情報取得部４２は、上記取得したＣさんの位置情報を基に、スピーカ３６ｃを選択し、通信部４１を介して当該スピーカ３６ｃに音響信号を送信することにより、スピーカ３６ｃからテレビの音響がＣさんに対しても提供される。この際Ａさんは日本語チャンネルで音量は１０、Ｃさんは英語チャンネルで音量は５というように、同一の機器からの情報であってもユーザの嗜好等によって提供情報を変更して、異なる態様で提供することができる。
【０１９２】
以上説明した情報の流れにより、室内に複数のユーザ及び機器が存在する場合でも、各ユーザの機器の利用態様に応じて、各ユーザに必要な情報のみが適切に提供される。
【０１９３】
なお、本発明は以上説明した実施の形態には限定されるものではなく、種々の変形が可能である。
【０１９４】
例えば、上述の実施形態においては音響再生部としてスピーカ３６を用いた例を説明したが、例えば各ユーザが所有するヘッドホンを用いて情報を提供するようにしても勿論構わない。この場合、予め各ユーザのヘッドホンのアドレスを上記提供情報データベースに記憶しておき、サーバ３１から各ユーザのヘッドホンに提供情報を送信することで実現することができる。
【０１９５】
また、上述の実施形態においては、家庭内のネットワークシステムを例にとって説明したが、オフィス内や公共施設、アミューズメント施設等、複数の機器及びユーザが存在するような様々なシステムに適用することが可能である。
【図面の簡単な説明】
【０１９６】
【図１】本発明の一実施形態において前提となるネットワークシステムの一例を示す図である。
【図２】情報処理装置が備える情報処理コントローラの説明に供する図である。
【図３】ソフトウェアセルの一例を示す図である。
【図４】ＤＭＡコマンドがステータス返信コマンドである場合のソフトウェアセルのデータ領域を示す図である。
【図５】複数の情報処理装置が仮想的な１台の情報処理装置として動作する様子を示す図である。
【図６】情報処理コントローラのソフトウェア構成の一例を示す図である。
【図７】４台の情報処理装置が仮想的な１台の情報処理装置として動作する様子を示す図である。
【図８】図７のシステムにおける分散処理の例を示す図である。
【図９】本発明の一実施形態におけるシステムの構成を示す図である。
【図１０】本発明の一実施形態に係る家庭内ネットワークシステムの電気的な構成を示す図である。
【図１１】提供情報データベース４４に記憶されたデータの詳細を示した図である。
【図１２】本発明の一実施形態において各装置がソフトウェアセルの一部として送信するＤＭＡコマンドの例を示した図である。
【図１３】本発明の一実施形態において、ユーザに提供情報を提供する際のサーバ３１の動作を示すフロー図である。
【図１４】サーバ３１が、位置データからスピーカを選択する方法を示す図である。
【図１５】本発明の一実施形態における情報通知機器及び提供対象者の情報の一覧を示した図である。
【図１６】本発明の一実施形態において各装置間でやり取りされる情報の流れの一例を示したシーケンス図である。
【図１７】上記情報の流れについて、上記図１６とは別の例を示したシーケンス図である。
【符号の説明】
【０１９７】
２１…メインプロセッサ
２２…ＬＳ
２３…サブプロセッサ
２４…ＬＳ
２５…ＤＭＡＣ
２６…メインメモリ
２７…ＤＣ
２８…外部記録部
３１…サーバ
３２…テレビ
３３…電子レンジ
３４…洗濯機
３５…無線ＬＡＮ端末
３６…スピーカ
４１…通信部
４２…位置情報取得部
４３…提供情報処理部
４４…提供情報データベース
【図１】
2005234929.tif 000003
【図２】
2005234929.tif 000004
【図３】
2005234929.tif 000005
【図４】
2005234929.tif 000006
【図５】
2005234929.tif 000007
【図６】
2005234929.tif 000008
【図７】
2005234929.tif 000009
【図８】
2005234929.tif 000010
【図９】
2005234929.tif 000011
【図１０】
2005234929.tif 000012
【図１１】
2005234929.tif 000013
【図１２】
2005234929.tif 000014
【図１３】
2005234929.tif 000015
【図１４】
2005234929.tif 000016
【図１５】
2005234929.tif 000017
【図１６】
2005234929.tif 000018
【図１７】
2005234929.tif 000019