(57)【特許請求の範囲】
【請求項１】
第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムを記憶させる処理を行う情報処理装置であって、
実行可能なコンピュータプログラムを記憶する記憶手段と、
前記第１のコンピュータプログラムの内部に記述されている、前記第１のコンピュータプログラムに適合する前記第２のコンピュータプログラムのバージョンと、前記第２のコンピュータプログラムの内部に記述されている前記第２のコンピュータプログラムのバージョンに基づく、前記第２のコンピュータプログラムのバージョンが、前記第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、前記第２のコンピュータプログラムの内部に記述されている、前記第２のコンピュータプログラムに適合する前記第１のコンピュータプログラムのバージョンと、前記第１のコンピュータプログラムの内部に記述されている前記第１のコンピュータプログラムのバージョンに基づく、前記第１のコンピュータプログラムのバージョンが、前記第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを行う判定手段と、
前記判定手段の判定結果に基づいて、前記第２のコンピュータプログラムを前記記憶手段に記憶させる記憶制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記第２のコンピュータプログラムと、前記第２のコンピュータプログラムと依存関係のある第３のコンピュータプログラムを受信する受信手段
をさらに備え、
前記記憶手段は、前記第１のコンピュータプログラムを記憶し、
前記判定手段は、前記記憶手段に既に記憶されている前記第１のコンピュータプログラムの内部に記述されている、前記第１のコンピュータプログラムに適合する前記第２のコンピュータプログラムのバージョンと、前記受信手段により受信された第２のコンピュータプログラムの内部に記述されている前記第２のコンピュータプログラムのバージョンに基づく、前記第２のコンピュータプログラムのバージョンが、前記第１のコンピュータプログラムのバージョンに適合しているかどうかの判定、前記第２のコンピュータプログラムの内部に記述されている、前記第２のコンピュータプログラムに適合する前記第１のコンピュータプログラムのバージョンと、前記第１のコンピュータプログラムの内部に記述されている前記第１のコンピュータプログラムのバージョンに基づく、前記第１のコンピュータプログラムのバージョンが、前記第２のコンピュータプログラムのバージョンに適合しているかどうかの判定、前記受信手段により受信された第３のコンピュータプログラムの内部に記述されている、前記第３のコンピュータプログラムに適合する前記第２のコンピュータプログラムのバージョンと、前記第２のコンピュータプログラムの内部に記述されている前記第２のコンピュータプログラムのバージョンに基づく、前記第２のコンピュータプログラムのバージョンが、前記第３のコンピュータプログラムのバージョンに適合しているかどうかの判定、および、前記第２のコンピュータプログラムの内部に記述されている、前記第２のコンピュータプログラムに適合する前記第３のコンピュータプログラムのバージョンと、前記第３のコンピュータプログラムに記述されている前記第３のコンピュータプログラムのバージョンに基づく、前記第３のコンピュータプログラムのバージョンが、前記第２のコンピュータプログラムのバージョンに適合しているかどうかの判定を行う
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１および第２のコンピュータプログラムが、所定の送信装置から送信される場合において、
前記判定手段により、前記第２のコンピュータプログラムのバージョンが、前記第１のコンピュータプログラムのバージョンに適合していないか、または前記第１のコンピュータプログラムのバージョンが、前記第２のコンピュータプログラムのバージョンに適合していないと判定されたときに、前記所定の送信装置に、適合するバージョンの前記第１のコンピュータプログラムを要求する要求手段をさらに備える
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムを記憶させる処理を行う情報処理装置の情報処理方法であって、
前記第１のコンピュータプログラムの内部に記述されている、前記第１のコンピュータプログラムに適合する前記第２のコンピュータプログラムのバージョンと、前記第２のコンピュータプログラムの内部に記述されている前記第２のコンピュータプログラムのバージョンに基づく、前記第２のコンピュータプログラムのバージョンが、前記第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、前記第２のコンピュータプログラムの内部に記述されている、前記第２のコンピュータプログラムに適合する前記第１のコンピュータプログラムのバージョンと、前記第１のコンピュータプログラムの内部に記述されている前記第１のコンピュータプログラムのバージョンに基づく、前記第１のコンピュータプログラムのバージョンが、前記第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを判定手段により行い、
その判定結果に基づいて、前記第２のコンピュータプログラムを、記憶制御手段により、実行可能なコンピュータプログラムを記憶する記憶手段に記憶させる
ことを特徴とする情報処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置および情報処理方法に関し、特に、コンピュータプログラムをダウンロード、インストールする場合などに用いて好適な情報処理装置および情報処理方法に関する。
【０００２】
【従来の技術】
コンピュータにおいては、一般的に、所定のＯＳの制御の下で、各種のアプリケーションプログラムが実行される。
【０００３】
【発明が解決しようとする課題】
ところで、アプリケーションプログラムは、一般に、ＯＳと依存関係を有し、所定のバージョンのＯＳの下でないと動作しない場合がある。従って、あるアプリケーションプログラムをインストールする場合には、通常、インストーラにおいて、アプリケーションプログラムが、既にインストールされているＯＳに適合するものであるかどうかが確認され、適合するときのみ、即ち、アプリケーションプログラムが、コンピュータに既にインストールされているＯＳの下で動作可能なバージョンのものであるときのみ、アプリケーションプログラムがインストールされるようになされている。
【０００４】
具体的には、例えば、アプリケーションプログラムの中に、そのアプリケーションプログラムのバージョンが記述されており、インストーラでは、そこに記述されているバージョンを参照することで、ＯＳとの整合性（ＯＳと適合するかどうか）が判定される。
【０００５】
ところで、例えば、コンピュータにインストールされたＯＳを、他のバージョンのものに書き換えたい場合がある。しかしながら、他のバージョンのＯＳをインストールする場合、そのＯＳが、既にインストールされているアプリケーションプログラムと適合するかどうかの確認は行われないため、ＯＳの書き換え後に、書き換え前は実行可能であったアプリケーションプログラムが実行できなくなることがあった。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、コンピュータプログラムをインストール（あるいは、ダウンロード）する際に、そのコンピュータプログラムと、それと依存関係を有する他のコンピュータプログラムとの整合性を、相互に確認することにより、正常に動作しないコンピュータプログラムのインストール等を防止することができるようにするものである。
【００１０】
【課題を解決するための手段】
請求項１に記載の情報処理装置は、実行可能なコンピュータプログラムを記憶する記憶手段と、第１のコンピュータプログラムの内部に記述されている、第１のコンピュータプログラムに適合する、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムのバージョンと、第２のコンピュータプログラムの内部に記述されている第２のコンピュータプログラムのバージョンに基づく、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第２のコンピュータプログラムの内部に記述されている、第２のコンピュータプログラムに適合する第１のコンピュータプログラムのバージョンと、第１のコンピュータプログラムの内部に記述されている第１のコンピュータプログラムのバージョンに基づく、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを行う判定手段と、判定手段の判定結果に基づいて、第２のコンピュータプログラムを記憶手段に記憶させる記憶制御手段とを備えることを特徴とする。
【００１１】
請求項４に記載の情報処理方法は、第１のコンピュータプログラムの内部に記述されている、第１のコンピュータプログラムに適合する、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムのバージョンと、第２のコンピュータプログラムの内部に記述されている第２のコンピュータプログラムのバージョンに基づく、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第２のコンピュータプログラムの内部に記述されている、第２のコンピュータプログラムに適合する第１のコンピュータプログラムのバージョンと、第１のコンピュータプログラムの内部に記述されている第１のコンピュータプログラムのバージョンに基づく、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを判定手段により行い、その判定結果に基づいて、第２のコンピュータプログラムを、記憶制御手段により、実行可能なコンピュータプログラムを記憶する記憶手段に記憶させることを特徴とする。
【００１５】
請求項１に記載の情報処理装置においては、記憶手段は、実行可能なコンピュータプログラムを記憶し、処理手段は、第１のコンピュータプログラムの内部に記述されている、第１のコンピュータプログラムに適合する、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムのバージョンと、第２のコンピュータプログラムの内部に記述されている第２のコンピュータプログラムのバージョンに基づく、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第２のコンピュータプログラムの内部に記述されている、第２のコンピュータプログラムに適合する第１のコンピュータプログラムのバージョンと、第１のコンピュータプログラムの内部に記述されている第１のコンピュータプログラムのバージョンに基づく、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを行い、記憶制御手段は、判定手段の判定結果に基づいて、第２のコンピュータプログラムを記憶手段に記憶させるようになされている。
【００１６】
請求項４に記載の情報処理方法においては、第１のコンピュータプログラムの内部に記述されている、第１のコンピュータプログラムに適合する、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムのバージョンと、第２のコンピュータプログラムの内部に記述されている第２のコンピュータプログラムのバージョンに基づく、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第２のコンピュータプログラムの内部に記述されている、第２のコンピュータプログラムに適合する第１のコンピュータプログラムのバージョンと、第１のコンピュータプログラムの内部に記述されている第１のコンピュータプログラムのバージョンに基づく、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを判定手段により行い、その判定結果に基づいて、第２のコンピュータプログラムを、記憶制御手段により、実行可能なコンピュータプログラムを記憶する記憶手段に記憶させるようになされている。
【００１７】
【発明の実施の形態】
以下に、本発明の実施の形態を説明するが、その前に、特許請求の範囲に記載の発明の各手段と以下の実施の形態との対応関係を明らかにするために、各手段の後の括弧内に、対応する実施の形態（但し、一例）を付加して、本発明の特徴を記述すると、次のようになる。
【００１９】
請求項１に記載の情報処理装置は、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムを記憶させる処理を行う情報処理装置であって、実行可能なコンピュータプログラムを記憶する記憶手段と、第１のコンピュータプログラムの内部に記述されている、第１のコンピュータプログラムに適合する第２のコンピュータプログラムのバージョンと、第２のコンピュータプログラムの内部に記述されている第２のコンピュータプログラムのバージョンに基づく、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第２のコンピュータプログラムの内部に記述されている、第２のコンピュータプログラムに適合する第１のコンピュータプログラムのバージョンと、第１のコンピュータプログラムの内部に記述されている第１のコンピュータプログラムのバージョンに基づく、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とを行う判定手段（例えば、図３に示すＣＰＵ（Central Processor Unit）２６、並びに図４に示すプログラムの処理ステップＳ１およびＳ２など）と、判定手段の判定結果に基づいて、第２のコンピュータプログラムを記憶手段に記憶させる記憶制御手段（例えば、図３に示すＣＰＵ２６並びに図４に示すプログラムの処理ステップＳ３など）とを備えることを特徴とする。
【００２０】
請求項３に記載の情報処理装置は、第１および第２のコンピュータプログラムが、所定の送信装置から送信される場合において、判定手段により、第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合していないか、または第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合していないと判定されたときに、所定の送信装置に、適合するバージョンの第１のコンピュータプログラムを要求する要求手段（例えば、図３に示すモデム２８など）をさらに備えることを特徴とする。
【００２１】
なお、勿論この記載は、各手段を上記したものに限定することを意味するものではない。
【００２２】
図１は、本発明を適用した放送システム（システムとは、複数の装置が論理的に集合した物をいい、各構成の装置が同一筐体中にあるか否かは問わない）の一実施の形態の構成例を示している。
【００２３】
放送局側では、送信装置１（提供装置）において、番組としてのディジタルビデオデータおよびディジタルオーディオデータが、例えば、ＭＰＥＧ（Moving Picture Experts Group）エンコードされ、スクランブルされる。さらに、送信装置１では、番組としてのディジタルデータ、その他の必要なデータを配置したＭＰＥＧトランスポートストリーム（以下、適宜、ＴＳという）が構成され、例えば、ＱＰＳＫ（Quadrature Phase Shift Keying）変調される。
【００２４】
ここで、送信装置１においてＴＳに配置される番組のデータ以外のデータとしては、例えば、ユーザ側の受信装置５で実行されるコンピュータプログラムなどがある。なお、送信装置１では、１のトランスポンダに対して、例えば、６番組分などのデータが多重化されたＴＳが構成される。また、ここでは、コンピュータプログラムを送信するのに、例えば、１のＰＩＤ（Packet Identification）が割り当てられるものとする。
【００２５】
送信装置１では、ＴＳを変調した変調信号がアップコンバートとされ、アンテナ（パラボラアンテナ）２から、電波として送信される。
【００２６】
アンテナ２からの電波は、衛星３で受信され、図示せぬトランスポンダにおいて、増幅その他の必要な処理が施された後、送信される。衛星３からの電波は、ユーザ（視聴者）側のアンテナ（パラボラアンテナ）４で受信され、ダウンコンバートされた後、例えば、ＩＲＤ（Integrated Receiver and Decoder）やＳＴＢ（Set Top Box）などでなる受信装置５に供給される。
【００２７】
受信装置５では、まず、アンテナ４からの信号の選択が行われる。即ち、衛星３は、一般には、複数のトランスポンダを有しており、アンテナ４では、その複数のトランスポンダから送信されてくる電波が受信され、ダウンコンバートされる。従って、アンテナ４から供給される信号には、その複数のトランスポンダからのものが含まれているため、受信装置５では、複数のトランスポンダに対応する信号から、いずれか１のトランスポンダに対応するものが、ユーザが行うチャンネルの選択操作にしたがって選択される。
【００２８】
さらに、受信装置５では、選択された信号、即ち、ＱＰＳＫ変調された信号が、ＱＰＳＫ復調され、その結果得られるＴＳがデスクランブルされ、デスクランブル後のＴＳから、ユーザが選択したチャンネルのトランスポートパケット（以下、適宜、ＴＳパケットという）が抽出される。そして、そのＴＳパケットに配置されているデータが、ＭＰＥＧデコードされ、その結果得られる画像が、モニタ６に供給されて表示される（音声は、図示せぬスピーカから出力される）。
【００２９】
また、受信装置５は、必要に応じて、コンピュータプログラムが配置されたＴＳパケットを抽出し、それを、ダウンロード、インストールする（取り込む）。そして、受信装置５では、そのインストールされたコンピュータプログラムが実行されることで、各種の処理が行われる。即ち、これにより、受信装置５では、例えば、受信装置５を構成する各ブロックの制御は勿論、上述のデスクランブル処理や、そのデスクランブル処理に用いるキーを獲得する処理、さらには、課金に関する処理などが行われる。
【００３０】
ここで、受信装置５では、デスクランブルが行われると、その番組の視聴に対する課金に関する処理、即ち、例えば、視聴履歴を作成する処理なども、必要に応じて行われる。その処理の結果得られる課金情報は、例えば、公衆網７などを介して、送信装置１に送信され、送信装置１では、この課金情報に基づいて、課金が行われる。
【００３１】
次に、図２は、図１の送信装置１の構成例を示している。
【００３２】
バージョン情報付加回路１１には、ユーザに配信すべきコンピュータプログラムとしての基本プログラムや、アプリケーションプログラムが入力されるようになされている。
【００３３】
ここで、アプリケーションプログラムは、基本プログラムと依存関係を有し、所定のバージョンの基本プログラムの制御の下で動作するようになされている。
【００３４】
そして、本実施の形態では、基本プログラムは、ブート部とロード部と呼ばれる２つのコンピュータプログラムから構成されている。ブート部は、コンピュータその他の装置（ここでは、受信装置５）の基本的な制御を行うためのもので、例えば、ＢＩＯＳ（Basic Input/Output System）やＯＳなどを含む。ロード部は、コンピュータプログラムをインストールするためのもので、いわゆるインストーラに相当する。なお、ロード部は、アプリケーションプログラムに含めても良い。この場合、基本プログラムは、ブート部だけで構成されることになる。また、バージョン情報付加回路１１には、コンピュータプログラム（ここでは、上述したように、基本プログラムやアプリケーションプログラム）が、例えば、モジュール単位などで入力されるようになされている。
【００３５】
バージョン情報付加回路１１は、そこに入力される基本プログラムまたはアプリケーションプログラムに、そのバージョンと、その基本プログラムまたはアプリケーションプログラムに適合するアプリケーションプログラムまたは基本プログラムのバージョンとの両方をそれぞれ記述し、ＭＵＸ（マルチプレクサ）１２に出力するようになされている。
【００３６】
ＭＵＸ１２は、バージョン情報付加回路１１の出力と、スクランブラ１４の出力とを多重化してＴＳを構成し、変調回路１５に供給するようになされている。ＭＰＥＧエンコーダ１３には、一般の番組を構成するディジタルビデオデータおよびそれに付随するディジタルオーディオデータとしての番組データが供給されるようになされている。そして、ＭＰＥＧエンコーダ１３は、そこに入力される番組データをＭＰＥＧエンコードし、スクランブラ１４に出力するようになされている。スクランブラ１４は、ＭＰＥＧエンコーダ１３の出力を、必要に応じてスクランブルし、ＭＵＸ１２に供給するようになされている。
【００３７】
変調回路１５は、ＭＵＸ１２が出力するＴＳを、例えば、ＱＰＳＫ変調し、その結果得られる変調信号を、アップコンバータ１６に出力するようになされている。アップコンバータ１６は、変調回路１５からの変調信号をアップコンバートし、アンテナ２に供給するようになされている。
【００３８】
コントローラ１７は、送信装置１を構成する各ブロックを制御する他、モデム１８から供給される情報を処理して、番組の視聴に対する課金のための処理を行うようにもなされている。モデム１８は、公衆網７を介して、受信装置５から送信されてくる課金情報を受信し、コントローラ１７に供給するようになされている。
【００３９】
次に、その動作について説明する。
【００４０】
番組データは、ＭＰＥＧエンコーダ１３に入力され、そこで、ＭＰＥＧエンコードされて、スクランブラ１４に供給される。スクランブラ１４では、ＭＰＥＧエンコーダ１３の出力がスクランブルされ、ＭＵＸ１２に供給される。
【００４１】
一方、バージョン情報付加回路１１には、ユーザに配信すべき基本プログラムまたはアプリケーションプログラムが入力される。そして、バージョン情報付加回路１１では、入力された基本プログラムまたはアプリケーションプログラムに、そのバージョンと、その基本プログラムまたはアプリケーションプログラムに適合するアプリケーションプログラムまたは基本プログラムのバージョンとの両方が記述され、ＭＵＸ１２に出力される。
【００４２】
具体的には、例えば、基本プログラムのうちのブート部が入力された場合には、入力されたブート部に、そのバージョンと、そのブート部に適合するロード部またはアプリケーションプログラムそれぞれのバージョンとが記述される。また、例えば、基本プログラムのうちのロード部が入力された場合には、入力されたロード部に、そのバージョンと、そのロード部に適合するブート部またはアプリケーションプログラムそれぞれのバージョンとが記述される。さらに、例えば、アプリケーションプログラムが入力された場合には、入力されたアプリケーションプログラムに、そのバージョンと、そのアプリケーションプログラムに適合するブート部またはロード部それぞれのバージョンとが記述される。
【００４３】
ここで、以上のように、バージョン情報付加回路１１において、そこに入力されるコンピュータプログラムに付加される情報を、以下、適宜、バージョン情報という。
【００４４】
ＭＵＸ１２では、バージョン情報付加回路１１の出力と、スクランブラ１４の出力とが多重化され、ＴＳが構成される。このＴＳは、変調回路１５に供給され、そこで、ＱＰＳＫ変調される。その結果得られる変調信号は、アップコンバータ１６を介して、アンテナ２に供給され、電波として送信される。
【００４５】
なお、受信装置５から、公衆網７を介して、通信リンクの確立の要求があった場合には、その要求は、モデム１８で受信され、これにより、送信装置１と受信装置５との間の通信リンクが確立される。そして、送信装置１と受信装置５との間で、必要なデータがやりとりされる。即ち、例えば、受信装置５から課金情報が送信されてくると、それは、モデム１８で受信され、コントローラ１７に供給される。この場合、コントローラ１７では、その課金情報に基づいて、番組の視聴に対する料金の算出が行われる。
【００４６】
次に、図３は、図１の受信装置５の構成例を示している。
【００４７】
フロントエンド部２１には、アンテナ４で受信され、ダウンコンバートされた信号が供給されるようになされている。そして、フロントエンド部２１は、アンテナ４からの信号を受信し、その受信信号に対して、所定の受信処理を施して、その結果得られるＴＳを、ＤＭＵＸ（デマルチプレクサ）２２に供給するようになされている。ＤＭＵＸ２２は、そこに供給されるＴＳを構成するＴＳパケットの中から、ＰＩＤなどを参照することで、必要なＴＳパケットを抽出するようになされている。そして、ＤＭＵＸ２２において抽出されたＴＳパケットのうち、一般の番組に関するものはデスクランブラ２３に、コンピュータプログラムに関するものはＩ／Ｆ（Interface）２５に、それぞれ供給されるようになされている。
【００４８】
デスクランブラ２３は、ＤＭＵＸ２２からのＴＳパケット（のペイロード）に配置された番組データを、必要に応じてデスクランブルし、ＭＰＥＧデコーダ２４に供給するようになされている。ＭＰＥＧデコーダ２４は、デスクランブラ２３の出力をＭＰＥＧデコードし、そのデコード結果を出力するようになされている。
【００４９】
Ｉ／Ｆ２５は、ＤＭＵＸ２２からのＴＳパケットを受信し、そこに配置されているコンピュータプログラムを、テンポラリバッファ２９に供給するようになされている。ＣＰＵ２６は、プログラムメモリ２７に記憶されたコンピュータプログラムを実行することで、受信装置５を構成する各ブロックの制御、その他の各種の処理を行うようになされている。プログラムメモリ２７は、例えば、フラッシュメモリやＨＤ（Hard Disk）などで構成され、ＣＰＵ２６が実行するコンピュータプログラムを記憶するようになされている。
【００５０】
なお、ここでは、プログラムメモリ２７に、あるバージョンの基本プログラムと、その基本プログラムの制御の下で動作可能なアプリケーションプログラムとが、既に記憶（インストール）されているものとする。
【００５１】
モデム２８は、公衆網７を介して、送信装置１（モデム１８）との間の通信制御を行うようになされている。テンポラリバッファ２９は、Ｉ／Ｆ２５を介して供給されるコンピュータプログラムを一時記憶するようになされている。ＲＡＭ（Random Access Memory）３０は、プログラムメモリ２７に記憶されたコンピュータプログラムのうち、ＣＰＵ２６が実行すべきものをロードするようになされている。即ち、ＣＰＵ２６は、実行すべきコンピュータプログラムを、プログラムメモリ２７から読み出し、ＲＡＭ３０上に展開して実行するようになされている。
【００５２】
なお、Ｉ／Ｆ２５，ＣＰＵ２６、プログラムメモリ２７、モデム２８、テンポラリバッファ２９，ＲＡＭ３０は、データバスを介して、相互に接続されており、これらの間では、このデータバスを介して、データのやりとりが行われる。また、ＣＰＵ２６は、プログラムメモリ２７、テンポラリバッファ２９、およびＲＡＭ３０と、アドレスバスによって接続されており、ＣＰＵ２６から、プログラムメモリ２７、テンポラリバッファ２９、およびＲＡＭ３０に対して、データを記憶させるアドレス、あるいはデータを読み出すアドレスは、このアドレスバスを介して供給されるようになされている。さらに、図示していないが、Ｉ／Ｆ２５は、受信装置５を構成するフロントエンド部２１、デスクランブラ２３、ＭＰＥＧデコーダ２４にも接続されており、ＣＰＵ２６からの指令その他のデータは、Ｉ／Ｆ２５を介して供給されるようになされている。
【００５３】
以上のように構成される受信装置５では、一般の番組を視聴する場合には、フロントエンド部２１において、アンテナ４からの信号が受信され、ユーザが図示せぬリモコン（リモートコマンダ）を操作することにより選択したチャンネルに対応した周波数帯域の受信信号が選択される。さらに、フロントエンド部１１では、その選択された受信信号に対して、ＱＰＳＫ復調その他の必要な処理が施され、これによりＴＳとされ、ＤＭＵＸ２２に供給される。ＤＭＵＸ２２では、フロントエンド部２１から供給されるＴＳから、ユーザの選択したチャンネルに対応するＰＩＤを有するＴＳパケットが抽出され、デスクランブラ２３に供給される。デスクランブラ２３では、ＤＭＵＸ２２の出力がデスクランブルされ、ＭＰＥＧデコーダ２４に供給される。ＭＰＥＧデコーダ２４では、デスクランブラ２３の出力がＭＰＥＧデコードされ、これにより、ユーザが選択したチャンネルで放送されている番組の画像が表示されるとともに、対応する音声が出力される。
【００５４】
また、ＤＭＵＸ２２では、フロントエンド部２１から供給されるＴＳから、コンピュータプログラムの配信のために割り当てられたＰＩＤを有するＴＳパケットも抽出される。このＴＳパケットに配置されたコンピュータプログラムは、Ｉ／Ｆ２５を介して、テンポラリバッファ２９に供給されて記憶される。
【００５５】
テンポラリバッファ２９にコンピュータプログラムが記憶されると、ＣＰＵ２６は、プログラムメモリ２７に記憶された基本プログラムの中のロード部を、ＲＡＭ３０上に展開して実行し、これにより、テンポラリバッファ２９に記憶されたコンピュータプログラムを、ダウンロード、インストールする処理（以下、適宜、インストール処理という）を行う。
【００５６】
即ち、図４のフローチャートは、インストール処理の詳細を示している。
【００５７】
インストール処理では、まず最初に、ステップＳ１において、インストール対象のコンピュータプログラムのバージョンが、それと依存関係を有する他のコンピュータプログラム（以下、適宜、依存プログラムという）に記述されているバージョン情報に適合しているかどうかが判定される。
【００５８】
ここで、本実施の形態では、例えば、基本プログラムを構成するブート部およびロード部、並びにアプリケーションプログラムが、相互に、依存関係を有している。従って、ブート部がインストール対象のコンピュータプログラムである場合には、ロード部およびアプリケーションプログラムが依存プログラムとなる。また、ロード部がインストール対象のコンピュータプログラムである場合には、ブート部およびアプリケーションプログラムが依存プログラムとなる。さらに、アプリケーションプログラムがインストール対象のコンピュータプログラムである場合には、ブート部およびロード部が依存プログラムとなる。
【００５９】
ステップＳ１において、インストール対象のコンピュータプログラムのバージョンが、依存プログラムに記述されているバージョン情報に適合していると判定された場合、ステップＳ２に進み、依存プログラムのバージョンが、インストール対象のコンピュータプログラムに記述されているバージョン情報に適合しているかどうかが判定される。ステップＳ２において、依存プログラムのバージョンが、インストール対象のコンピュータプログラムに記述されているバージョン情報に適合していると判定された場合、即ち、インストール対象のコンピュータプログラムのバージョンと、依存プログラムのバージョンとが、相互に適合している場合（相互に整合がとれている場合）、ステップＳ３に進み、インストール対象のコンピュータプログラムが、テンポラリバッファ２９からダウンロードされ、プログラムメモリ２７にインストールされ、インストール処理を終了する。
【００６０】
一方、ステップＳ１において、インストール対象のコンピュータプログラムのバージョンが、依存プログラムに記述されているバージョン情報に適合していないと判定された場合、およびステップＳ２において、依存プログラムのバージョンが、インストール対象のコンピュータプログラムに記述されているバージョン情報に適合していないと判定された場合は、いずれの場合も、インストール対象のコンピュータプログラムのダウンロード、インストールは行われず、インストール処理を終了（中止）する。
【００６１】
なお、ステップＳ３においては、インストール対象のコンピュータプログラムが、プログラムメモリ２７にインストールされるのと同時に、そのプログラムメモリ２７に記憶されていた、インストール対象のコンピュータプログラムと異なるバージョンのものは、基本的に消去される（例えば、上書きされる）。
【００６２】
また、インストール処理は、テンポラリバッファ２９に記憶されたコンピュータプログラムが、ブート部、ロード部、またはアプリケーションプログラムのうちのいずれか１つだけの場合には、それだけを、インストール対象のコンピュータプログラムとして行われるが、テンポラリバッファ２９に記憶されたコンピュータプログラムが、ブート部、ロード部、またはアプリケーションプログラムのうちの複数である場合には、その複数のコンピュータプログラムそれぞれを、インストール対象のコンピュータプログラムとして行われる。
【００６３】
次に、図５および図６を参照して、インストール処理について、さらに説明する。
【００６４】
いま、プログラムメモリ２７に、例えば、図５に示すような、基本プログラム（ブート部およびロード部）並びにアプリケーションプログラムが記憶（インストール）されているものとする。
【００６５】
ここで、本実施の形態では、ブート部の最後に、そのバージョンと、そのブート部に適合するロード部またはアプリケーションプログラムそれぞれのバージョンとが記述されている。ロード部またはアプリケーションプログラムについても、同様に、その最後にバージョン情報が記述されている。
【００６６】
図５の実施の形態では、ブート部のバージョンは１．０であり、それと適合するロード部またはアプリケーションプログラムそれぞれのバージョンは、１．１以上または２．０以上となっている。また、ロード部のバージョンは１．１であり、それと適合するブート部またはアプリケーションプログラムそれぞれのバージョンは、１．０以上または１．３以上となっている。さらに、アプリケーションプログラムのバージョンは２．２であり、それと適合するブート部またはロード部それぞれのバージョンは、１．０以上または１．１となっている。
【００６７】
従って、バージョンが１．０であるブート部は、１．０以上のバージョンのブート部を要求するロード部およびアプリケーションプログラムと適合したものとなっている。また、バージョンが１．１であるロード部は、１．１以上または１．１のバージョンのロード部をそれぞれ要求するブート部またはアプリケーションプログラムと適合したものとなっている。さらに、バージョンが２．２であるアプリケーションプログラムは、２．０以上または１．３以上のバージョンのアプリケーションプログラムをそれぞれ要求するブート部またはロード部と適合したものとなっている。よって、この場合、プログラムメモリ２７にインストールされているブート部、ロード部、およびアプリケーションプログラムは、いずれも正常に動作する。
【００６８】
以上のように、プログラムメモリ２７に、ブート部、ロード部、およびアプリケーションプログラムがインストールされている状態において、例えば、図６に示すようなロード部（図６（Ａ））およびアプリケーションプログラム（図６（Ｂ））が、送信装置１から送信され、受信装置５のテンポラリバッファ２９に記憶されたとする。
【００６９】
この場合、テンポラリバッファ２９に記憶されたロード部またはアプリケーションプログラムそれぞれを、順次、インストール対象のコンピュータプログラムとして、インストール処理が行われる。
【００７０】
即ち、例えば、まず最初に、テンポラリバッファ２９に記憶されたロード部が、インストール対象のコンピュータプログラムとされる。この場合、例えば、プログラムメモリ２７に記憶されているブート部（図５）と、テンポラリバッファ２９に記憶されたアプリケーションプログラム（図６（Ｂ））とが、依存プログラムとされる。
【００７１】
そして、インストール対象のコンピュータプログラムと、依存プログラムとが相互に適合するかどうかが判定される。
【００７２】
即ち、いまの場合、テンポラリバッファ２９に記憶されたロード部（図６（Ａ））のバージョンは１．２であり、それと適合するブート部またはアプリケーションのバージョンは、それぞれ０．８以上または１．３以上となっている。一方、依存プログラムである、プログラムメモリ２７に記憶されているブート部（図５）、またはテンポラリバッファ２９に記憶されたアプリケーションプログラム（図６（Ｂ））のバージョンは、それぞれ１．０または２．３である。従って、いずれも、テンポラリバッファ２９に記憶されたロード部に適合する。
【００７３】
また、依存プログラムである、プログラムメモリ２７に記憶されているブート部（図５）と適合するロード部のバージョンは、１．１以上となっており、従って、バージョンが１．２である、テンポラリバッファ２９に記憶されたロード部（図６（Ａ））は、プログラムメモリ２７に記憶されているブート部（図５）に適合する。
【００７４】
さらに、依存プログラムである、テンポラリバッファ２９に記憶されているアプリケーションプログラム（図６（Ｂ））と適合するロード部のバージョンは、１．１以上となっており、従って、バージョンが１．２である、テンポラリバッファ２９に記憶されたロード部（図６（Ａ））は、同じくテンポラリバッファ２９に記憶されているアプリケーションプログラム（図６（Ｂ））に適合する。
【００７５】
従って、インストール対象のコンピュータプログラムであるロード部（図６（Ａ））と、依存プログラムであるブート部（図５）またはアプリケーションプログラム（図６（Ｂ））それぞれとは、相互に適合するので、テンポラリバッファ２９に記憶されているロード部（図６（Ａ））は、プログラムメモリ２７に転送され、インストールされる。
【００７６】
次に、例えば、テンポラリバッファ２９に記憶されたアプリケーションプログラムが、インストール対象のコンピュータプログラムとされる。この場合、例えば、プログラムメモリ２７に記憶されているブート部（図５）と、上述のようにしてインストールされたロード部（図６（Ａ））とが、依存プログラムとされる。
【００７７】
そして、インストール対象のコンピュータプログラムと、依存プログラムとが相互に適合するかどうかが判定される。
【００７８】
即ち、いまの場合、テンポラリバッファ２９に記憶されたアプリケーションプログラム（図６（Ｂ））のバージョンは２．３であり、それと適合するブート部またはアプリケーションのバージョンは、それぞれ１．０以上または１．１以上となっている。一方、依存プログラムである、プログラムメモリ２７に記憶されているブート部（図５）、または既にインストールされたロード部（図６（Ａ））のバージョンは、それぞれ１．０または１．２である。従って、いずれも、テンポラリバッファ２９に記憶されたアプリケーションプログラムに適合する。
【００７９】
また、依存プログラムである、プログラムメモリ２７に記憶されているブート部（図５）と適合するアプリケーションプログラムのバージョンは、２．０以上となっており、従って、バージョンが２．３である、テンポラリバッファ２９に記憶されたロード部（図６（Ａ））は、プログラムメモリ２７に記憶されているブート部（図５）に適合する。
【００８０】
さらに、依存プログラムである、既にインストールされたロード部（図６（Ａ））と適合するアプリケーションプログラムのバージョンは、１．３以上となっており、従って、バージョンが２．３である、テンポラリバッファ２９に記憶されたアプリケーションプログラム（図６（Ｂ））は、既にインストールされたロード部（図６（Ａ））に適合する。
【００８１】
従って、インストール対象のコンピュータプログラムであるアプリケーションプログラム（図６（Ｂ））と、依存プログラムであるブート部（図５）またはロード部（図６（Ａ））それぞれとは、相互に適合するので、テンポラリバッファ２９に記憶されているアプリケーションプログラム（図６（Ｂ））は、プログラムメモリ２７に転送され、インストールされる。
【００８２】
以上のように、コンピュータプログラムを、ダウンロード、インストールする際に、そのコンピュータプログラムと、それと依存関係を有する他のコンピュータプログラムとの整合性を、相互に確認するようにしたので、正常に動作しないコンピュータプログラムのダウンロード、インストールを防止することができる。
【００８３】
なお、インストール対象のコンピュータプログラムのバージョンが、依存プログラムのバージョンに適合していないか、または依存プログラムのバージョンが、インストール対象のコンピュータプログラムのバージョンに適合していないときには、送信装置１に、例えば、インストール対象のコンピュータプログラムに適合するバージョンの依存プログラムを要求するようにすることが可能である。この要求は、例えば、ＣＰＵ２６の制御の下、モデム２８に行わせることが可能である。また、この場合、送信装置１には、要求されたコンピュータプログラムを、衛星３を介して送信させても良いし、公衆網７を介して送信させても良い。
【００８４】
さらに、コンピュータプログラムを、いわゆるアッパーコンパチブルに構成する場合においては、インストール対象のコンピュータプログラムのインストールは、そのバージョンが、既に記録されている、対応するコンピュータプログラムのバージョンよりも新しい場合にのみ許可するようにすることができる。この場合、コンピュータプログラムには、そのバージョンだけを記述するだけで済み、それと適合する依存プログラムのバージョンは記述する必要がない。
【００８５】
また、本発明の適用範囲は、図１に示したようなディジタル衛星放送を受信する受信装置に限定されるものではなく、コンピュータプログラムをロードして実行する、あらゆる装置に適用可能である。
【００８６】
さらに、受信装置５に実行させるコンピュータプログラムは、衛星回線、インターネット、その他のネットワークを介して伝送することで提供する他、フロッピーディスク、CD-ROMディスク、その他の記録媒体に記録して提供することができる。
【００８８】
【発明の効果】
請求項１に記載の情報処理装置および請求項４に記載の情報処理方法によれば、第１のコンピュータプログラムと依存関係のある第２のコンピュータプログラムのバージョンが、第１のコンピュータプログラムのバージョンに適合しているかどうかの判定と、第１のコンピュータプログラムのバージョンが、第２のコンピュータプログラムのバージョンに適合しているかどうかの判定とが行われ、その判定結果に基づいて、第２のコンピュータプログラムが記憶される。従って、第１のコンピュータプログラムに適合しないバージョンの第２のコンピュータプログラムがダウンロード、インストールされることを防止することなどが可能となる。
【図面の簡単な説明】
【図１】本発明を適用した放送システムの一実施の形態の構成例を示す図である。
【図２】図１の送信装置１の構成例を示す図である。
【図３】図１の受信装置５の構成例を示す図である。
【図４】図３のＣＰＵ２６によるインストール処理を説明するためのフローチャートである。
【図５】プログラムメモリ２７の記憶内容を示す図である。
【図６】テンポラリバッファ２９の記憶内容を示す図である。
【符号の説明】
１  送信装置，  ２  アンテナ，  ３  衛星，  ４  アンテナ，  ５  受信装置，  ６  モニタ，  ７  公衆網，  １１  バージョン情報付加回路，  １２  ＭＵＸ，  １３  ＭＰＥＧエンコーダ，  １４  スクランブラ，  １５  変調回路，  １６  アップコンバータ，  １７  コントローラ，  １８  モデム，  ２１  フロントエンド部，  ２２  ＤＭＵＸ，  ２３  デスクランブラ，  ２４  ＭＰＥＧデコーダ，  ２５  Ｉ／Ｆ，  ２６  ＣＰＵ，  ２７  プログラムメモリ，  ２８  モデム，  ２９  テンポラリバッファ，  ３０  ＲＡＭ
【図１】
0004029448.tif 000002
【図２】
0004029448.tif 000003
【図３】
0004029448.tif 000004
【図４】
0004029448.tif 000005
【図５】
0004029448.tif 000006
【図６】
0004029448.tif 000007