(57)【特許請求の範囲】
【請求項１】
現用系のプログラムを格納するプログラム格納手段と、現用系のデータファイルを格納する現用系領域と予備系のデータファイルを格納する予備系領域を有するデータファイル格納手段と、プログラムをダウンロードするダウンロード手段と、上記プログラム格納手段に格納されている現用系のプログラムを上記ダウンロード手段によりダウンロードされたプログラムに更新するプログラム更新手段と、上記プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、上記データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとして上記データファイル格納手段の予備系領域に移すとともに、上記プログラム更新手段による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを生成し、そのデータファイルを現用系のデータファイルとして上記データファイル格納手段の現用系領域に格納する第１のデータファイル更新手段と、上記プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、上記データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとして上記データファイル格納手段の予備系領域に移すとともに、上記予備系領域に格納されている予備系のデータファイルを現用系のデータファイルとして上記現用系領域に移す第２のデータファイル更新手段とを備えたデータファイル管理装置。
【請求項２】
第１のデータファイル更新手段は、プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンが一旦ダウンされてから、上記プログラムのバージョンが元のバージョンにアップされた場合、上記データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとして上記データファイル格納手段の予備系領域に移すとともに、上記予備系領域に格納されている予備系のデータファイルを現用系のデータファイルとして上記現用系領域に移すことを特徴とする請求項１記載のデータファイル管理装置。
【請求項３】
現用系のプログラムを格納するプログラム格納手段と、現用系のデータファイルを格納する現用系領域と予備系のデータファイルを格納する予備系領域を有するデータファイル格納手段と、プログラムをダウンロードするダウンロード手段と、上記プログラム格納手段に格納されている現用系のプログラムを上記ダウンロード手段によりダウンロードされたプログラムに更新するプログラム更新手段と、上記プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、現用系のプログラムの更新に伴って新たに追加するデータ項目を上記データファイル格納手段の現用系領域に格納されている現用系のデータファイルに追加するとともに、上記データ項目を含むデータファイルを予備系のデータファイルとして上記データファイル格納手段の予備系領域に格納する第１のデータファイル更新手段と、上記プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、上記データファイル格納手段の予備系領域に格納されている予備系のデータファイルを組み合わせることで、上記プログラム更新手段による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを現用系のデータファイルとして生成して、上記データファイル格納手段の現用系領域に格納されている現用系のデータファイルを更新する第２のデータファイル更新手段とを備えたデータファイル管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、現用系と予備系に２重化されているデータファイルを管理するデータファイル管理装置に関するものである。
【背景技術】
【０００２】
あるシステムにおいて、主となるファイルの一部に何らかの障害が発生しても、システム全体の機能を停止することなく、稼働の継続を可能にするために、平常時からバックアップとして、予備のファイルを配置する冗長化の概念がある。
この冗長化の概念は、機能の停止が許されない金融機関、交通機関、航空機や鉄道車両等の輸送機器などの分野で幅広く取り入れられている。
【０００３】
以下の特許文献１には、２重化制御方式を採用しているデータファイル管理装置が開示されている。
即ち、このデータファイル管理装置には、二重化されたファイルの代替処理を行う代替処理部が設けられており、二重化ファイルに記録されているデータのうち、一方のデータが正常で、もう一方のデータが異常である場合、この代替処理部が、正常なデータをリード要求元に通知するとともに、異常があるデータを記録しているファイルに対する再書込みを行って修復するようにしている。
【０００４】
以下の特許文献２には、現用系と予備系を切替えるデータファイル管理装置が開示されている。
即ち、このデータファイル管理装置では、現用系システムの主記憶装置と、予備系システムの主記憶装置とを備えており、これらの主記憶装置には同一のデータを記憶し、現用系システムの主記憶装置に記憶されているデータの変更を行う場合、予備系システムの主記憶装置に記憶されているデータについても同時に変更を行うようにしている。
ただし、特定指令に基づいてデータの変更を行う場合には、最初に、現用系システムの主記憶装置に記憶されているデータを変更し、変更後のデータで現用系システムが正常に動作することを確認できれば、予備系システムの主記憶装置に記憶されているデータを変更するようにする。
一方、変更後のデータで現用系システムが正常に動作することを確認できず、異常が発生する場合、現用系システムと予備系システムを切替えるようにする。
【０００５】
特許文献１，２には、上記のようにデータの二重化に関する記述はあるが、プログラムが参照するデータファイルのファイル形式が変更される場合の取り扱いに関する記述はない。
即ち、あるシステムにおいて、ファームウェアなどのプログラムを更新する際、そのプログラムが参照するデータファイルのファイル形式の変更を伴うケースがあるが、ファイル形式が変更される場合の取り扱いについての記述が特許文献１，２にない。
【０００６】
データファイル管理装置が冗長化の機能を有する場合、プログラムが更新される際には、一般的に、現用系と予備系の双方において、データファイルのデータファイル形式が更新後のプログラムに対応するデータファイル形式に更新されることが想定される。
このとき、プログラムの更新後に、何らかの障害が発生することで、正常な動作を行えなくなる状況が発生すると、プログラムのバージョンを以前のバージョンに戻す必要が生じることがある。
しかし、現用系と予備系の双方において、データファイルのデータファイル形式が、バージョンアップ後のプログラムに対応するデータファイル形式に更新されていると、プログラムのバージョンを以前のバージョンに戻しても、当該バージョンのプログラムでは、更新後のデータファイル形式のデータファイルを参照することができない。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平１−７６３３８号公報（第５頁から第６頁、図１）
【特許文献２】特公平３−２１９３５号公報（第４頁、図２）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来のデータファイル管理装置は以上のように構成されているので、プログラムをバージョンアップして、現用系及び予備系におけるデータファイルのデータファイル形式をバージョンアップ後のプログラムに対応するデータファイル形式に変更する機能を備えている。しかし、何らかの障害が発生することで、正常な動作を行えなくなる状況が発生し、プログラムをバージョンダウンしても、バージョンダウン後のプログラムが、現用系及び予備系で更新されているデータファイル形式のデータファイルを参照することができず、処理を継続することができなくなるなどの課題があった。
【０００９】
この発明は上記のような課題を解決するためになされたもので、プログラムをバージョンダウンしても、処理を継続することができるデータファイル管理装置を得ることを目的とする。
【課題を解決するための手段】
【００１０】
この発明に係るデータファイル管理装置は、現用系のプログラムを格納するプログラム格納手段と、現用系のデータファイルを格納する現用系領域と予備系のデータファイルを格納する予備系領域を有するデータファイル格納手段と、プログラムをダウンロードするダウンロード手段と、プログラム格納手段に格納されている現用系のプログラムをダウンロード手段によりダウンロードされたプログラムに更新するプログラム更新手段と、プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとしてデータファイル格納手段の予備系領域に移すとともに、プログラム更新手段による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを生成し、そのデータファイルを現用系のデータファイルとして上記データファイル格納手段の現用系領域に格納する第１のデータファイル更新手段と、プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとしてデータファイル格納手段の予備系領域に移すとともに、その予備系領域に格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域に移す第２のデータファイル更新手段とを設けるようにしたものである。
【発明の効果】
【００１１】
この発明によれば、現用系のプログラムを格納するプログラム格納手段と、現用系のデータファイルを格納する現用系領域と予備系のデータファイルを格納する予備系領域を有するデータファイル格納手段と、プログラムをダウンロードするダウンロード手段と、プログラム格納手段に格納されている現用系のプログラムをダウンロード手段によりダウンロードされたプログラムに更新するプログラム更新手段とを設け、プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、第１のデータファイル更新手段が、データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとしてデータファイル格納手段の予備系領域に移すとともに、プログラム更新手段による更新後の現用系のプログラムに対応するデータファイル形式を生成し、そのデータファイルを現用系のデータファイルとして上記データファイル格納手段の現用系領域に格納し、プログラム更新手段により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、第２のデータファイル更新手段が、データファイル格納手段の現用系領域に格納されている現用系のデータファイルを予備系のデータファイルとしてデータファイル格納手段の予備系領域に移すとともに、その予備系領域に格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域に移すように構成したので、プログラムをバージョンダウンしても、処理を継続することができる効果がある。
【図面の簡単な説明】
【００１２】
【図１】この発明の実施の形態１によるデータファイル管理装置を搭載しているＩＰ−ＳＴＢを示す構成図である。
【図２】データファイル管理装置における初回のバージョンアンプ時の処理内容を示すフローチャートである。
【図３】初回のバージョンアンプ後にバージョンダウンされる際の処理内容を示すフローチャートである。
【図４】バージョンダウン後に再度バージョンアンプされる際の処理内容を示すフローチャートである。
【図５】バージョンアップが行われる前の初期状態の現用系のプログラムと現用系のデータファイルとを示す説明図である。
【図６】データ項目に対するデータの書込例を示す説明図である。
【図７】データ項目からのデータの読込例を示す説明図である。
【図８】バージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
【図９】データ項目に対するデータの書込例を示す説明図である。
【図１０】データ項目からのデータの読込例を示す説明図である。
【図１１】データ項目に対するデータの書込例を示す説明図である。
【図１２】データ項目からのデータの読込例を示す説明図である。
【図１３】バージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
【図１４】データ項目に対するデータの書込例を示す説明図である。
【図１５】データ項目からのデータの読込例を示す説明図である。
【図１６】バージョンアップが２回行われた場合のデータファイル構成等を示す説明図である。
【図１７】データ項目に対するデータの書込例を示す説明図である。
【図１８】データファイル管理装置における初回のバージョンアンプ時の処理内容を示すフローチャートである。
【図１９】２回目のバージョンアンプ時の処理内容を示すフローチャートである。
【図２０】２回目のバージョンアンプ後にバージョンダウンされる際の処理内容を示すフローチャートである。
【図２１】バージョンアップが行われる前の初期状態の現用系のプログラムと現用系のデータファイルとを示す説明図である。
【図２２】データ項目に対するデータの書込例を示す説明図である。
【図２３】データ項目からのデータの読込例を示す説明図である。
【図２４】１回目のバージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
【図２５】データ項目に対するデータの書込例を示す説明図である。
【図２６】データ項目からのデータの読込例を示す説明図である。
【図２７】データ項目に対するデータの書込例を示す説明図である。
【図２８】データ項目からのデータの読込例を示す説明図である。
【図２９】２回目のバージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
【図３０】データ項目に対するデータの書込例を示す説明図である。
【図３１】データ項目からのデータの読込例を示す説明図である。
【図３２】データ項目に対するデータの書込例を示す説明図である。
【図３３】データ項目からのデータの読込例を示す説明図である。
【図３４】バージョンダウンが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
【図３５】データ項目からのデータの読込例を示す説明図である。
【発明を実施するための形態】
【００１３】
実施の形態１．
図１はこの発明の実施の形態１によるデータファイル管理装置を搭載しているＩＰ−ＳＴＢを示す構成図である。
ＩＰ−ＳＴＢ（ＩＰセットトップボックス）は、ネットワーク上のコンテンツ配信サーバ１などから、ＦＴＴＨ等によるアクセス網通信技術を利用したブロードバンド回線によって配信されるＩＰパケット化されたＩＰ放送、地上デジタル放送ＩＰ再送信、ＢＳデジタル放送ＩＰ再送信、ＶＯＤ（Ｖｉｄｅｏ  ＯＮ  Ｄｅｍａｎｄ）などの映像や音声などのコンテンツデータを復調して、その映像や音声をテレビなどの外部表示機器に出力する端末である。
【００１４】
図１において、コンテンツ配信サーバ１はＩＰパケット化されているコンテンツデータをネットワーク３経由でＩＰ−ＳＴＢに配信する装置である。
プログラム配信サーバ２はＩＰ−ＳＴＢの処理内容を記述しているプログラムをネットワーク３経由でＩＰ−ＳＴＢに配信する装置である。
ネットワーク３は例えばＩＰネットワークなどの回線網である。
【００１５】
ＩＰ−ＳＴＢのプログラム格納装置１１は例えばＲＡＭやハードディスクなどから構成されている記憶装置であり、ＩＰ−ＳＴＢの処理内容を記述している現用系のプログラムを格納する。なお、プログラム格納装置１１はプログラム格納手段を構成している。
データファイル格納装置１２は例えばＲＡＭやハードディスクなどから構成されている記憶装置であり、現用系のデータファイルを格納する現用系領域１２ａと予備系のデータファイルを格納する予備系領域１２ｂを有している。なお、データファイル格納装置１２はデータファイル格納手段を構成している。
【００１６】
通信Ｉ／Ｆ１３は例えばＬＡＮコネクタやＰＨＹ・ＩＣなどから構成されており、コンテンツ配信サーバ１やプログラム配信サーバ２から配信された信号を受信して、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する処理を実施する。
プロセッサ１４は通信Ｉ／Ｆ１３から出力されたデジタルデータからコンテンツデータやプログラムなどを復調する処理を実施する。
【００１７】
プロセッサ１４の通信制御部１５は主信号の制御やプログラムを交換するため通信機能を実装するものであり、通信Ｉ／Ｆ１３から出力されたデジタルデータがコンテンツデータであれば、そのデジタルデータを選局制御部１６に出力し、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムであれば、そのプログラムをプログラム更新部２０に出力する処理を実施する。
なお、通信Ｉ／Ｆ１３及び通信制御部１５からダウンロード手段が構成されている。
【００１８】
選局制御部１６は通信制御部１５から出力されたコンテンツデータの中から、リモコンＩ／Ｆ２２から出力されたリモコン操作信号が示すチャンネル（ユーザによるリモコンの操作で選局されたチャンネル）のデータを選択し、そのチャンネルのデータをデマルチプレクサ１７に出力する処理を実施する。
デマルチプレクサ１７は選局制御部１６から出力されたチャンネルのデータを映像データと音声データに分離して、その映像データを映像デコーダ１８に出力し、その音声データを音声デコーダ１９に出力する処理を実施する。
【００１９】
映像デコーダ１８はデマルチプレクサ１７から出力された映像データをデコードして、映像用のアナログデータと映像用のデジタルデータを映像出力Ｉ／Ｆ２３に出力する処理を実施する。
音声デコーダ１９はデマルチプレクサ１７から出力された音声データをデコードして、音声用のデジタルデータを音声出力Ｉ／Ｆ２４に出力する処理を実施する。
【００２０】
プログラム更新部２０は通信制御部１５からプログラムを受けると、プログラム格納装置１１により格納されている現用系のプログラムを通信制御部１５から出力されたプログラムに更新する処理を実施する。なお、プログラム更新部２０はプログラム更新手段を構成している。
【００２１】
データファイル切替部２１はプログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに、プログラム更新部２０による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを生成し、そのデータファイルを現用系のデータファイルとしてデータファイル格納装置１２の現用系領域１２ａに格納する処理を実施する。
また、データファイル切替部２１はプログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに、予備系領域１２ｂに格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域１２ａに移す処理を実施する。
【００２２】
さらに、データファイル切替部２１はプログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンが一旦ダウンされてから、プログラムのバージョンが元のバージョンにアップされた場合、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに、予備系領域１２ｂに格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域１２ａに移す処理を実施する。
なお、データファイル切替部２１は第１及び第２のデータファイル更新手段を構成している。
【００２３】
リモコンＩ／Ｆ２２はユーザにより操作されるリモコンから発信されるリモコン操作信号を受信して、そのリモコン操作信号を選局制御部１６に出力する処理を実施する。
映像出力Ｉ／Ｆ２３はＲＣＡ端子及びＨＤＭＩ端子を備えており、映像デコーダ１８から出力された映像用のアナログデータについてはＲＣＡ端子に出力し、映像デコーダ１８から出力された映像用のデジタルデータについてはＨＤＭＩフォーマットのデジタルデータに変換してからＨＤＭＩ端子に出力することで、外部接続機器であるテレビなどの表示装置に映像を表示する。
音声出力Ｉ／Ｆ２４はＤ／Ａコンバータ及びＲＣＡ端子を備えており、Ｄ／Ａコンバータが音声デコーダ１９から出力された音声用のデジタルデータをアナログデータに変換してから、そのアナログデータをＲＣＡ端子に出力することで、外部接続機器であるテレビなどの表示装置に出力する。
【００２４】
図２はデータファイル管理装置における初回のバージョンアンプ時の処理内容を示すフローチャートである。
また、図３は初回のバージョンアンプ後にバージョンダウンされる際の処理内容を示すフローチャートである。
また、図４はバージョンダウン後に再度バージョンアンプされる際の処理内容を示すフローチャートである。
【００２５】
次に動作について説明する。
図５はバージョンアップが行われる前の初期状態の現用系のプログラムと現用系のデータファイルとを示す説明図である。
図５の例では、バージョンアップが行われる前の初期状態の現用系のプログラムのバージョンがＶｅｒ．αである。また、現用系のデータファイルのデータファイル形式が型式Ａであり、データファイル形式Ａのデータファイルに含まれているデータの項目として、データ項目Ａ１，Ａ２，Ａ３がデータファイル格納装置１２の現用系領域１２ａに格納されている。
【００２６】
プロセッサ１４は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）を参照して、コンテンツデータの復調などの各種の処理を実施するが、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイル形式Ａのデータファイルに書き込むデータをダウンロードすると、現用系のプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、現用系のプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
図６はデータ項目に対するデータの書込例を示す説明図であり、図６の例では、データ項目Ａ２を選択して、データをデータ項目Ａ２に書き込んでいる。
【００２７】
また、プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムを参照して、データの読込を行うデータ項目を選択する。
プロセッサ１４は、現用系のプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
図７はデータ項目からのデータの読込例を示す説明図であり、図７の例では、データ項目Ａ２を選択して、データ項目Ａ２からデータを読み込んでいる。
【００２８】
次に、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）をバージョンアンプする際の処理内容を説明する。
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）よりバージョンがアップされているプログラム（Ｖｅｒ．βのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．βのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００２９】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．βのプログラムのダウンロードが完了する（図２のステップＳＴ１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．βのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ２）。
【００３０】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．βのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータをデータファイル形式Ａのデータファイルに書き込む処理を行う（ステップＳＴ３）。
その後、プログラム更新部２０は、Ｖｅｒ．αのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新する（ステップＳＴ４）。
【００３１】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ５）、Ｖｅｒ．βのプログラムを起動する（ステップＳＴ６）。これにより、Ｖｅｒ．βのプログラムが現用系のプログラムとして有効となる。
【００３２】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．βのプログラム内のデータファイル更新に関する処理内容を実行することで、データファイル格納装置１２におけるデータファイルの構成が現用系と予備系の２重化になるように設定する。
即ち、データファイル切替部２１は、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイル（データファイル形式Ａのデータファイル）を予備系のデータファイルとして予備系領域１２ｂに移す処理を実施する（ステップＳＴ７）。
【００３３】
また、データファイル切替部２１は、Ｖｅｒ．βのプログラムに対応するデータファイル形式のデータファイルとして、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加するデータ項目と、データファイル形式Ａのデータファイルに含まれているデータ項目とからなるデータファイル形式Ｂのデータファイルを生成し、そのデータファイルを現用系のデータファイルとして現用系領域１２ａに格納する（ステップＳＴ８）。
なお、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加するデータ項目は、例えば、プログラム配信サーバ２からＶｅｒ．βのプログラムと一緒にダウンロードしてもよいし、Ｖｅｒ．βのプログラムと別個にダウンロードしてもよい。また、コンテンツ配信サーバ１からダウンロードしてもよいし、他の装置からダウンロードしてもよい。
【００３４】
図８はバージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
図８の例では、現用系領域１２ａ内に格納されているデータファイル形式Ａのデータファイル（データ項目Ａ１，Ａ２，Ａ３）が予備系領域１２ｂに移され、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加されたデータ項目Ｂ１，Ｂ２とデータ項目Ａ１，Ａ２，Ａ３を含むデータファイル形式Ｂのデータファイルが現用系領域１２ａに書き込まれている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．βのプログラムを実行することで処理を継続する（ステップＳＴ９）。
【００３５】
プロセッサ１４は、コンテンツデータの復調などの各種の処理を実施しているとき、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイルに書き込むデータをダウンロードすると、現用系のプログラムであるＶｅｒ．βのプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．βのプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
【００３６】
図９はデータ項目に対するデータの書込例を示す説明図であり、図９の例では、バージョンアップ前後のプログラムの互換項目であるデータ項目Ａ２を選択しているが、データ項目Ａ２は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ａ２に対して、同一のデータを書き込んでいる。
図１１は別のデータの書込例を示しており、図１１の例では、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加されたデータ項目Ｂ４を選択しているが、データ項目Ｂ４は、データファイル格納装置１２の現用系領域１２ａだけに存在しているので、現用系領域１２ａに格納されているデータ項目Ｂ４に対して、データを書き込んでいる。
【００３７】
プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムであるＶｅｒ．βのプログラムを参照して、現用系領域１２ａに格納されているデータファイルの中から、データの読込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．βのプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
【００３８】
図１０はデータ項目からのデータの読込例を示す説明図であり、図１０の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ａ２を選択して、そのデータ項目Ａ２からデータを読み込んでいる。
図１２は別のデータの読込例を示しており、図１２の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ｂ４を選択して、そのデータ項目Ｂ４からデータを読み込んでいる。
【００３９】
プロセッサ１４は、現用系のプログラムをＶｅｒ．βのプログラムに更新したのち、何らかの障害の発生、仕様の変更、機能の追加や削減などが要因で、現用系のプログラムを元のバージョンのプログラム（Ｖｅｒ．αのプログラム）に戻す必要を生じるケースがある。
次に、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）をバージョンダウンする際の処理内容を説明する。
【００４０】
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）よりバージョンがダウンされているプログラム（Ｖｅｒ．αのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．αのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００４１】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．αのプログラムのダウンロードが完了する（図３のステップＳＴ１１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．αのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ１２）。
【００４２】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．αのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータを現用系のデータファイル形式Ｂのデータファイル及び予備系のデータファイル形式Ａのデータファイルに書き込む処理を行う（ステップＳＴ１３）。
その後、プログラム更新部２０は、Ｖｅｒ．βのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）をＶｅｒ．αのプログラムに更新する（ステップＳＴ１４）。
【００４３】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．βのプログラム）をＶｅｒ．αのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ１５）、Ｖｅｒ．αのプログラムを起動する（ステップＳＴ１６）。これにより、Ｖｅｒ．αのプログラムが現用系のプログラムとして有効となる。
【００４４】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．αのプログラム内のデータファイル更新に関する処理内容を実行することで、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに（ステップＳＴ１７）、予備系領域１２ｂに格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域１２ａに移す処理を実施する（ステップＳＴ１８）。
【００４５】
図１３はバージョンダウンが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
図１３の例では、現用系領域１２ａに格納されていたデータファイル形式Ｂのデータファイル（データ項目Ａ１，Ａ２，Ａ３，Ｂ１，Ｂ２）が予備系領域１２ｂに移され、予備系領域１２ｂに格納されていたデータファイル形式Ａのデータファイル（データ項目Ａ１，Ａ２，Ａ３）が現用系領域１２ａに移されている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．αのプログラムを実行することで処理を継続する（ステップＳＴ１９）。
【００４６】
プロセッサ１４は、コンテンツデータの復調などの各種の処理を実施しているとき、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイルに書き込むデータをダウンロードすると、現用系のプログラムであるＶｅｒ．αのプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．αのプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
図１４はデータ項目に対するデータの書込例を示す説明図であり、図１４の例では、バージョンダウン前後のプログラムの互換項目であるデータ項目Ａ２を選択しているが、データ項目Ａ２は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ａ２に対して、同一のデータを書き込んでいる。
【００４７】
プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムであるＶｅｒ．αのプログラムを参照して、現用系領域１２ａに格納されているデータファイルの中から、データの読込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．αのプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
図１５はデータ項目からのデータの読込例を示す説明図であり、図１５の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ａ２を選択して、そのデータ項目Ａ２からデータを読み込んでいる。
【００４８】
次に、プログラム格納装置１１に格納されている現用系のプログラムが１回バージョンダウンされてから、再度、バージョンアップする際の処理内容を説明する。
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）よりバージョンがアップされているプログラム（Ｖｅｒ．βのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．βのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００４９】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．βのプログラムのダウンロードが完了する（図４のステップＳＴ２１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．βのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ２２）。
【００５０】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．βのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータを現用系のデータファイル形式Ａのデータファイル及び予備系のデータファイル形式Ｂのデータファイルに書き込む処理を行う（ステップＳＴ２３）。
その後、プログラム更新部２０は、Ｖｅｒ．αのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新する（ステップＳＴ２４）。
【００５１】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ２５）、Ｖｅｒ．βのプログラムを起動する（ステップＳＴ２６）。これにより、Ｖｅｒ．βのプログラムが現用系のプログラムとして有効となる。
【００５２】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．βのプログラム内のデータファイル更新に関する処理内容を実行することで、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに（ステップＳＴ２７）、予備系領域１２ｂに格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域１２ａに移す処理を実施する（ステップＳＴ２８）。
【００５３】
これにより、図８に示す１回目のバージョンアップ後と同様のプログラム及びデータファイルの構成になる。
図８の例では、現用系領域１２ａに格納されていたデータファイル形式Ａのデータファイル（データ項目Ａ１，Ａ２，Ａ３）が予備系領域１２ｂに移され、予備系領域１２ｂに格納されていたデータファイル形式Ｂのデータファイル（データ項目Ａ１，Ａ２，Ａ３，Ｂ１，Ｂ２）が現用系領域１２ａに移されている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．βのプログラムを実行することで処理を継続する（ステップＳＴ２９）。
【００５４】
以上で明らかなように、この実施の形態１によれば、現用系のプログラムを格納するプログラム格納装置１１と、現用系のデータファイルを格納する現用系領域１２ａと予備系のデータファイルを格納する予備系領域１２ｂを有するデータファイル格納装置１２と、プログラムをダウンロードする通信Ｉ／Ｆ１３及び通信制御部１５と、プログラム格納装置１１に格納されている現用系のプログラムをダウンロードされたプログラムに更新するプログラム更新部２０とを設け、データファイル切替部２１が、プログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに、プログラム更新部２０による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを現用系のデータファイルとして生成して、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを更新し、プログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すとともに、予備系領域１２ｂに格納されている予備系のデータファイルを現用系のデータファイルとして現用系領域１２ａに移すように構成したので、バージョン変更前後におけるプログラムとデータファイル間の不整合を解消することが可能になり、その結果、プログラムをバージョンダウンしても、処理を継続することができる効果を奏する。
【００５５】
実施の形態２．
上記実施の形態１では、Ｖｅｒ．αのプログラムをＶｅｒ．βのプログラムにバージョンアップする際、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移すものを示したが、現用系領域１２ａに格納されている現用系のデータファイルを予備系のデータファイルとして予備系領域１２ｂに移す場合、複数回バージョンアップを行うと、予備系領域１２ｂに格納される予備系のデータファイルが膨大になることが想定される。
【００５６】
図１６はバージョンアップが２回行われた場合のデータファイル構成等を示す説明図であり、予備系領域１２ｂには、予備系のデータファイルとして、データファイル形式Ａ，データファイル形式Ｂ，データファイル形式Ｃのデータファイルが格納されている。
これらの予備系のデータファイルに含まれているデータ項目のうち、データ項目Ａ１，Ａ２，Ａ３については、全てのデータファイルに含まれており、データ項目Ｂ４，Ｂ５については、２つのデータファイルに含まれている。
このように、同じデータ項目が複数のデータファイルに含まれているため、予備系領域１２ｂの容量が増大する。この結果、ＩＰ−ＳＴＶの内蔵メモリの容量を圧迫し、動作に影響することが懸念される。
また、全てのデータファイルに含まれているデータ項目Ａ１，Ａ２，Ａ３に対して、データを書き込むような場合には、処理の負荷が増大する（図１７を参照）。
【００５７】
そこで、この実施の形態２では、複数回バージョンアップが行われる場合でも、予備系領域１２ｂの容量の増大を最小限に抑えることができるようにしている。
図１８はデータファイル管理装置における初回のバージョンアンプ時の処理内容を示すフローチャートである。
また、図１９は２回目のバージョンアンプ時の処理内容を示すフローチャートである。
また、図２０は２回目のバージョンアンプ後にバージョンダウンされる際の処理内容を示すフローチャートである。
以下、図１８、図１９及び図２０を参照しながら処理内容を具体的に説明する。
【００５８】
次に動作について説明する。
図２１はバージョンアップが行われる前の初期状態の現用系のプログラムと現用系のデータファイルとを示す説明図である。
図２１の例では、バージョンアップが行われる前の初期状態の現用系のプログラムのバージョンがＶｅｒ．αである。また、現用系のデータファイルのデータファイル形式が型式Ａであり、データファイル形式Ａのデータファイルに含まれているデータの項目として、データ項目Ａ１，Ａ２，Ａ３がデータファイル格納装置１２の現用系領域１２ａに格納されている。
【００５９】
プロセッサ１４は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）を参照して、コンテンツデータの復調などの各種の処理を実施するが、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイル形式Ａのデータファイルに書き込むデータをダウンロードすると、現用系のプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、現用系のプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
図２２はデータ項目に対するデータの書込例を示す説明図であり、図２２の例では、データ項目Ａ２を選択して、データをデータ項目Ａ２に書き込んでいる。
【００６０】
また、プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムを参照して、データの読込を行うデータ項目を選択する。
プロセッサ１４は、現用系のプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
図２３はデータ項目からのデータの読込例を示す説明図であり、図２３の例では、データ項目Ａ２を選択して、データ項目Ａ２からデータを読み込んでいる。
【００６１】
次に、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）をバージョンアンプ（１回目のバージョンアンプ）する際の処理内容を説明する。
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）よりバージョンがアップされているプログラム（Ｖｅｒ．βのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．βのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００６２】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．βのプログラムのダウンロードが完了する（図１８のステップＳＴ３１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．βのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ３２）。
【００６３】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．βのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータをデータファイル形式Ａのデータファイルに書き込む処理を行う（ステップＳＴ３３）。
その後、プログラム更新部２０は、Ｖｅｒ．αのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新する（ステップＳＴ３４）。
【００６４】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．αのプログラム）をＶｅｒ．βのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ３５）、Ｖｅｒ．βのプログラムを起動する（ステップＳＴ３６）。これにより、Ｖｅｒ．βのプログラムが現用系のプログラムとして有効となる。
【００６５】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．βのプログラム内のデータファイル更新に関する処理内容を実行することで、データファイル格納装置１２におけるデータファイルの構成が現用系と予備系の２重化になるように設定する。
即ち、データファイル切替部２１は、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイル（データファイル形式Ａのデータファイル）を予備系のデータファイルとして予備系領域１２ｂに移す処理を実施する（ステップＳＴ３７）。
【００６６】
また、データファイル切替部２１は、Ｖｅｒ．βのプログラムに対応するデータファイル形式のデータファイルとして、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加するデータ項目と、データファイル形式Ａのデータファイルに含まれているデータ項目とからなるデータファイル形式Ｂのデータファイルを生成し、そのデータファイルを現用系のデータファイルとして現用系領域１２ａに格納する（ステップＳＴ３８）。
また、データファイル切替部２１は、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加するデータ項目が含まれているデータファイル形式Ｂ−Ａのデータファイルを生成し、そのデータファイルを予備系のデータファイルとして予備系領域１２ｂに格納する（ステップＳＴ３９）。
【００６７】
図２４は１回目のバージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
図２４の例では、現用系領域１２ａ内に格納されているデータファイル形式Ａのデータファイル（データ項目Ａ１，Ａ２，Ａ３）が予備系領域１２ｂに移され、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加されたデータ項目Ｂ１，Ｂ２とデータ項目Ａ１，Ａ２，Ａ３を含むデータファイル形式Ｂのデータファイルが現用系領域１２ａに書き込まれ、データ項目Ｂ１，Ｂ２を含むデータファイル形式Ｂ−Ａのデータファイルが予備系領域１２ｂに書き込まれている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．βのプログラムを実行することで処理を継続する（ステップＳＴ４０）。
【００６８】
プロセッサ１４は、コンテンツデータの復調などの各種の処理を実施しているとき、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイルに書き込むデータをダウンロードすると、現用系のプログラムであるＶｅｒ．βのプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．βのプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
【００６９】
図２５はデータ項目に対するデータの書込例を示す説明図であり、図２５の例では、バージョンアップ前後のプログラムの互換項目であるデータ項目Ａ２を選択しているが、データ項目Ａ２は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ａ２に対して、同一のデータを書き込んでいる。
図２７は別のデータの書込例を示しており、図２７の例では、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加されたデータ項目Ｂ４を選択しているが、データ項目Ｂ４は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ｂ４に対して、同一のデータを書き込んでいる。
【００７０】
プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムであるＶｅｒ．βのプログラムを参照して、現用系領域１２ａに格納されているデータファイルの中から、データの読込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．βのプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
【００７１】
図２６はデータ項目からのデータの読込例を示す説明図であり、図２６の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ａ２を選択して、そのデータ項目Ａ２からデータを読み込んでいる。
図２８は別のデータの読込例を示しており、図２８の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ｂ４を選択して、そのデータ項目Ｂ４からデータを読み込んでいる。
【００７２】
次に、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）をバージョンアンプ（２回目のバージョンアンプ）する際の処理内容を説明する。
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）よりバージョンがアップされているプログラム（Ｖｅｒ．γのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．γのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００７３】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．γのプログラムのダウンロードが完了する（図１９のステップＳＴ４１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．γのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ４２）。
【００７４】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．γのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータを現用系のデータファイル形式Ｂのデータファイル及び予備系のデータファイル形式Ａ，Ｂ−Ａのデータファイルに書き込む処理を行う（ステップＳＴ４３）。
その後、プログラム更新部２０は、Ｖｅｒ．βのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．βのプログラム）をＶｅｒ．γのプログラムに更新する（ステップＳＴ４４）。
【００７５】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．βのプログラム）をＶｅｒ．γのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ４５）、Ｖｅｒ．γのプログラムを起動する（ステップＳＴ４６）。これにより、Ｖｅｒ．γのプログラムが現用系のプログラムとして有効となる。
【００７６】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．γのプログラム内のデータファイル更新に関する処理内容を実行することで、Ｖｅｒ．γのプログラムに対応するデータファイル形式のデータファイルとして、Ｖｅｒ．γのプログラムへの更新に伴って新たに追加するデータ項目と、データファイル形式Ｂのデータファイルに含まれているデータ項目とからなるデータファイル形式Ｃのデータファイルを生成し、そのデータファイルを現用系のデータファイルとして現用系領域１２ａに格納する（ステップＳＴ４７）。なお、現用系のプログラムが構成される前に、現用系領域１２ａに格納されていたデータファイル形式Ａのデータファイルは削除する。
また、データファイル切替部２１は、Ｖｅｒ．γのプログラムへの更新に伴って新たに追加するデータ項目が含まれているデータファイル形式Ｃ−Ｂのデータファイルを生成し、そのデータファイルを予備系のデータファイルとして予備系領域１２ｂに格納する（ステップＳＴ４８）。
【００７７】
図２９は２回目のバージョンアップが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
図２９の例では、Ｖｅｒ．βのプログラムへの更新に伴って新たに追加されたデータ項目Ｃ６とデータ項目Ａ１，Ａ２，Ａ３，Ｂ４，Ｂ５を含むデータファイル形式Ｃのデータファイルが現用系領域１２ａに書き込まれ、データ項目Ｃ６を含むデータファイル形式Ｃ−Ｂのデータファイルが予備系領域１２ｂに書き込まれている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．γのプログラムを実行することで処理を継続する（ステップＳＴ４９）。
【００７８】
プロセッサ１４は、コンテンツデータの復調などの各種の処理を実施しているとき、例えば、コンテンツ配信サーバ１又はプログラム配信サーバ２からデータファイルに書き込むデータをダウンロードすると、現用系のプログラムであるＶｅｒ．γのプログラムを参照して、そのデータの書込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．γのプログラムを参照して、データの書込を行うデータ項目を選択すると、そのデータ項目に対する当該データの書込を行う。
【００７９】
図３０はデータ項目に対するデータの書込例を示す説明図であり、図３０の例では、バージョンアップ前後のプログラムの互換項目であるデータ項目Ｂ４（１回目のバージョンアンプで追加された項目）を選択しているが、データ項目Ｂ４は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ｂ４に対して、同一のデータを書き込んでいる。
図３２は別のデータの書込例を示しており、図３２の例では、Ｖｅｒ．γのプログラムへの更新に伴って新たに追加されたデータ項目Ｃ６を選択しているが、データ項目Ｃ６は、データファイル格納装置１２における現用系領域１２ａと予備系領域１２ｂの双方に存在しているので、現用系領域１２ａと予備系領域１２ｂに格納されている双方のデータ項目Ｃ６に対して、同一のデータを書き込んでいる。
【００８０】
プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムであるＶｅｒ．γのプログラムを参照して、現用系領域１２ａに格納されているデータファイルの中から、データの読込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．γのプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
【００８１】
図３１はデータ項目からのデータの読込例を示す説明図であり、図３１の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ｂ５を選択して、そのデータ項目Ｂ５からデータを読み込んでいる。
図３３は別のデータの読込例を示しており、図３３の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ｃ６を選択して、そのデータ項目Ｃ６からデータを読み込んでいる。
【００８２】
プロセッサ１４は、現用系のプログラムをＶｅｒ．γのプログラムに更新したのち、何らかの障害の発生、仕様の変更、機能の追加や削減などが要因で、現用系のプログラムを元のバージョンのプログラム（Ｖｅｒ．βのプログラム）に戻す必要を生じるケースがある。
次に、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．γのプログラム）をバージョンダウンする際の処理内容を説明する。
【００８３】
プログラム配信サーバ２は、プログラム格納装置１１に格納されている現用系のプログラム（Ｖｅｒ．γのプログラム）よりバージョンがダウンされているプログラム（Ｖｅｒ．βのプログラム）をネットワーク３経由でＩＰ−ＳＴＢに配信する。
ＩＰ−ＳＴＢの通信Ｉ／Ｆ１３は、プログラム格納装置１１から配信されたＶｅｒ．βのプログラムに係る信号を受信すると、その信号をデジタルデータに変換し、そのデジタルデータをプロセッサ１４に出力する。
【００８４】
プロセッサ１４の通信制御部１５は、通信Ｉ／Ｆ１３から出力されたデジタルデータがプログラムである場合、そのプログラムをプログラム更新部２０に出力することで、Ｖｅｒ．βのプログラムのダウンロードが完了する（図２０のステップＳＴ５１）。
プログラム更新部２０は、通信制御部１５からＶｅｒ．βのプログラムを受けると、そのプログラムをプログラム格納装置１１に格納する（ステップＳＴ５２）。
【００８５】
データファイル切替部２１は、プログラム更新部２０がＶｅｒ．βのプログラムをプログラム格納装置１１に格納すると、再起動前に、データファイルを最新の値に更新するため、例えば、プロセッサ１４のキャッシュや外部メモリに記憶されているデータを現用系のデータファイル形式Ｃのデータファイル及び予備系のデータファイル形式Ａ，Ｂ−Ａ，Ｃ−Ｂのデータファイルに書き込む処理を行う（ステップＳＴ５３）。
その後、プログラム更新部２０は、Ｖｅｒ．γのプログラム内のプログラム更新に関する処理内容を実行することで、プログラム格納装置１１により格納されている現用系のプログラム（Ｖｅｒ．γのプログラム）をＶｅｒ．βのプログラムに更新する（ステップＳＴ５４）。
【００８６】
プログラム更新部２０は、現用系のプログラム（Ｖｅｒ．γのプログラム）をＶｅｒ．βのプログラムに更新すると、ＩＰ−ＳＴＢを再起動することで（ステップＳＴ５５）、Ｖｅｒ．βのプログラムを起動する（ステップＳＴ５６）。これにより、Ｖｅｒ．βのプログラムが現用系のプログラムとして有効となる。
【００８７】
データファイル切替部２１は、プログラム更新部２０が現用系のプログラムを更新すると、現用系のプログラムであるＶｅｒ．βのプログラム内のデータファイル更新に関する処理内容を実行することで、データファイル格納装置１２の予備系領域１２ｂに格納されている予備系のデータファイルを組み合わせることで、Ｖｅｒ．βのプログラムに対応するデータファイル形式Ｂのデータファイルを生成し、そのデータファイルを現用系のデータファイルとして現用系領域１２ａに格納する（ステップＳＴ５７）。なお、現用系のプログラムが構成される前に、現用系領域１２ａに格納されていたデータファイル形式Ｃのデータファイルは削除する。
【００８８】
図３４はバージョンダウンが行われた後の現用系のプログラムと現用系及び予備系のデータファイルとを示す説明図である。
図３４の例では、現用系領域１２ａに格納されていたデータファイル形式Ｃのデータファイル（データ項目Ａ１，Ａ２，Ａ３，Ｂ１，Ｂ２，Ｃ６）が、データファイル形式Ｂのデータファイル（データ項目Ａ１，Ａ２，Ａ３，Ｂ１，Ｂ２）に更新されている。
以後、プロセッサ１４は、現用系のプログラムであるＶｅｒ．βのプログラムを実行することで処理を継続する（ステップＳＴ５８）。
【００８９】
プロセッサ１４は、現用系のデータファイルからデータを読み込む必要がある場合、現用系のプログラムであるＶｅｒ．βのプログラムを参照して、現用系領域１２ａに格納されているデータファイルの中から、データの読込を行うデータ項目を選択する。
プロセッサ１４は、Ｖｅｒ．γのプログラムを参照して、データの読込を行うデータ項目を選択すると、そのデータ項目からデータの読込を行う。
図３５はデータ項目からのデータの読込例を示す説明図であり、図３５の例では、現用系領域１２ａに格納されているデータファイル内のデータ項目Ｂ４を選択して、そのデータ項目Ｂ４からデータを読み込んでいる。
【００９０】
ここでは、Ｖｅｒ．γのプログラムからＶｅｒ．βのプログラムにバージョンダウンするものを示したが、Ｖｅｒ．βのプログラムからＶｅｒ．αのプログラムにバージョンダウンする場合も、同様の手順で行うことができる。
【００９１】
以上で明らかなように、この実施の形態２によれば、データファイル切替部２１が、プログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがアップされた場合、現用系のプログラムの更新に伴って新たに追加するデータ項目をデータファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルに追加するとともに、そのデータ項目を含むデータファイルを予備系のデータファイルとしてデータファイル格納装置１２の予備系領域１２ｂに格納し、プログラム更新部２０により現用系のプログラムが更新されることで、現用系のプログラムのバージョンがダウンされた場合、データファイル格納装置１２の予備系領域１２ｂに格納されている予備系のデータファイルを組み合わせることで、プログラム更新部２０による更新後の現用系のプログラムに対応するデータファイル形式のデータファイルを現用系のデータファイルとして生成して、データファイル格納装置１２の現用系領域１２ａに格納されている現用系のデータファイルを更新するように構成したので、上記実施の形態１と同様の効果を奏するほかに、複数回プログラムのバージョンアップが行われても、複数の予備系のデータファイルの中に、同じデータ項目が重複して含まれることがなくなり、データファイル格納装置１２の容量を軽減することができる効果を奏する。また、書込処理に必要なデータファイルを１つにすることができるため、処理負荷を軽減することができる効果を奏する。
【００９２】
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
【符号の説明】
【００９３】
１  コンテンツ配信サーバ、２  プログラム配信サーバ、３  ネットワーク、１１  プログラム格納装置（プログラム格納手段）、１２  データファイル格納装置（データファイル格納手段）、１３  通信Ｉ／Ｆ（ダウンロード手段）、１４  プロセッサ、１５  通信制御部（ダウンロード手段）、１６  選局制御部、１７  デマルチプレクサ、１８  映像デコーダ、１９  音声デコーダ、２０  プログラム更新部（プログラム更新手段）、２１  データファイル切替部（第１及び第２のデータファイル更新手段）、２２  リモコンＩ／Ｆ、２３  映像出力Ｉ／Ｆ、２４  音声出力Ｉ／Ｆ。
【図１】
0005501259.tif 000002
【図２】
0005501259.tif 000003
【図３】
0005501259.tif 000004
【図４】
0005501259.tif 000005
【図５】
0005501259.tif 000006
【図６】
0005501259.tif 000007
【図７】
0005501259.tif 000008
【図８】
0005501259.tif 000009
【図９】
0005501259.tif 000010
【図１０】
0005501259.tif 000011
【図１１】
0005501259.tif 000012
【図１２】
0005501259.tif 000013
【図１３】
0005501259.tif 000014
【図１４】
0005501259.tif 000015
【図１５】
0005501259.tif 000016
【図１６】
0005501259.tif 000017
【図１７】
0005501259.tif 000018
【図１８】
0005501259.tif 000019
【図１９】
0005501259.tif 000020
【図２０】
0005501259.tif 000021
【図２１】
0005501259.tif 000022
【図２２】
0005501259.tif 000023
【図２３】
0005501259.tif 000024
【図２４】
0005501259.tif 000025
【図２５】
0005501259.tif 000026
【図２６】
0005501259.tif 000027
【図２７】
0005501259.tif 000028
【図２８】
0005501259.tif 000029
【図２９】
0005501259.tif 000030
【図３０】
0005501259.tif 000031
【図３１】
0005501259.tif 000032
【図３２】
0005501259.tif 000033
【図３３】
0005501259.tif 000034
【図３４】
0005501259.tif 000035
【図３５】
0005501259.tif 000036