(57)【要約】本発明は、記憶ユニットにソフトウェアプログラムをダウンロードする方法に関する。ソフトウェアプログラムは、ブートコード及びアプリケーションコードを含み、ブートコードは、アプリケーションコードをダウンロードすることを可能にする。記憶ユニットは、少なくとも現在ブートコード及び現在アプリケーションコードを有する。本発明の方法は、ダウンロード要求時、現在ブートコードに上書きしない位置に、新しいブートコードをダウンロードするステップと、新しいブートコードが現在ブートコードと入れ替わることを示すステップと、新しいブートコードに上書きしない位置に、新しいブートコードに関連する新しいアプリケーションコードをダウンロードするステップと、新しいアプリケーションコードが有効であることを示すステップと、を含む。
2005531846.tif 000002
【特許請求の範囲】
【請求項１】
伝送システムにおいて、ソフトウェアプログラムを記憶ユニットにダウンロードする方法であって、前記ソフトウェアプログラムが、ブートコード及びアプリケーションコードを含み、前記ブートコードが、アプリケーションコードのダウンロードを可能にし、前記記憶ユニットが、少なくとも現在ブートコードを含む、方法であって、
ダウンロード要求時、新しいブートコードを、前記現在ブートコードに上書きにしない位置にダウンロードするステップと、
前記新しいブートコードが前記現在ブートコードと入れ替わることを示すステップと、
前記新しいブートコードに関連する新しいアプリケーションコードを、前記新しいブートコードに上書きにしない位置にダウンロードするステップと、
前記新しいアプリケーションコードが有効であることを示すステップと、
を含む方法。
【請求項２】
伝送システムにおいて、ソフトウェアプログラムを記憶ユニットにダウンロードする方法であって、前記ソフトウェアプログラムが、ブートコード及びアプリケーションコードを含み、前記ブートコードが、前記アプリケーションコードのダウンロードを可能にし、前記記憶ユニットが、前記記憶ユニットの第１の位置に記憶された現在ブートコードを含む少なくとも記憶された現在ソフトウェアプログラムを含む、方法であって、
ブートコードの使用を有効化するために、該ブートコードが記憶されている前記記憶ユニットの位置へジャンプするためのブートセクタを規定するステップであって、前記ブートセクタが、前記現在ブートコードが記憶されている前記第１の位置を最初に示す、ステップと、
ダウンロード要求時、新しいブートコード及び新しいアプリケーションコードを含む新しいソフトウェアプログラムを、第２の位置にダウンロードするステップと、
前記新しいブートコードが記憶されている第２の位置へジャンプするステップと、
を含む方法。
【請求項３】
前記新しいブートコードが記憶されている前記第２の位置へジャンプする前記ステップののち、
前記第１の位置の前記現在ブートコードを前記新しいブートコードと入れ替えるステップと、
前記第１の位置へジャンプするステップと、
を含む、請求項２に記載の方法。
【請求項４】
前記ブートセクタが、前記記憶ユニットのプロテクトされた記憶領域に位置する、請求項２に記載の方法。
【請求項５】
前記ブートセクタが、前記記憶ユニットとは別のプロテクトされた記憶領域に位置する、請求項２に記載の方法。
【請求項６】
前記現在ブートコードは、前記記憶ユニットのプロテクトされた領域に記憶され、該領域は、特定のソフトウェア条件下で上書きされるようにプロテクト解除されることが可能である、請求項２に記載の方法。
【請求項７】
前記新しいソフトウェアプログラムは、特定のソフトウェア条件下で上書きされるようにプロテクトされ及びプロテクト解除されることが可能である前記記憶ユニットの領域に記憶される、請求項２に記載の方法。
【請求項８】
前記新しいソフトウェアプログラムは、中間のアプリケーションコードを含み、該中間のアプリケーションコードは、前記現在アプリケーションコードと前記新しいアプリケーションコードとの間のリンクであり、ユーザが前記新しいソフトウェアプログラムをパラメトライズすることを可能にする、請求項２に記載の方法。
【請求項９】
伝送システムによって伝送されるソフトウェアプログラムを受け取る受信器であって、請求項１乃至請求項８のいずれか１項に記載の方法を実施する手段を有する受信器。
【請求項１０】
請求項１乃至請求項８のいずれか１項に記載の方法を実施する前記手段が、ファイルシステムを有する、請求項９に記載の受信器。
【請求項１１】
前記記憶ユニットが、ソフトウェア命令時にメモリ領域をプロテクトし／プロテクト解除することを可能にする永続的なメモリである、請求項９に記載の受信器。
【請求項１２】
ソフトウェアプログラムを送信する送信器と、前記ソフトウェアプログラムを受け取る少なくとも受信器と、を有する伝送システムであって、前記受信器が、請求項１乃至請求項８のいずれか１項に記載の方法を実施する手段を有する、伝送システム。
【請求項１３】
命令の組を計算する受信器のためのコンピュータプログラムであって、前記命令の組は、前記受信器へロードされると、前記受信器に請求項１乃至請求項８のいずれか１項に記載の方法を実施させるようにする、コンピュータプログラム。
【請求項１４】
コンピュータプログラムを担持する信号であって、前記コンピュータプログラムが、請求項１に記載の方法を実施するように構成される信号。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、伝送システムに関する。本発明は、特に、伝送システムにおいて、ソフトウェアプログラムを記憶ユニットにダウンロードする方法に関する。
【０００２】
本発明は更に、伝送システム及び前記伝送システムの受信器に関する。
【０００３】
本発明は更に、上述の方法を実施するコンピュータプログラム及びコンピュータプログラムを担持する信号に関する。
【０００４】
本発明は、移動通信システムを含むいかなる通信システムにも適用される。本発明は、特に、ＤＳＳ（デジタルサテライトシステム）システム及びＤＶＢ（デジタルビデオブロードキャスト）システムのような放送システムに適用される。
【背景技術】
【０００５】
ブートストラップローダ（ＢＳＬ）は、消費者製品に広く普及している。ブートストラップローダは、ソフトウェアアプリケーションのダウンロードを管理し、現在ソフトウェアアプリケーションを新しいソフトウェアアプリケーションと入れ替えることによって製品の容易なアップグレードを可能にする。安全性の理由で、ＢＳＬは、一般に、プロテクトされたメモリ領域に記憶され、ソフトウェアは、ハードウェアリセット後、その領域においてブートする。メモリ領域は、工場で電気的にプロテクトされ、ハードウェア介入なくプロテクト解除されることができない。これらのＢＳＬは、一般に、例えば特定のトランスポートプロトコルを含む、標準化されていない技術に専用であり、このような技術は、使用されるシステム及び同じプロトコルを守らなければならないアプリケーションの種類にリンクされる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
新しいソフトウェアアプリケーションをダウンロードするために技術を変える場合、関連する新しいＢＳＬもダウンロードする必要がある。従って、現在ＢＳＬは、もはや使用されないが、プロテクトされたメモリ空間を使用しており、アプリケーションの残りのものに関して無駄になる。更に、新しいＢＳＬは、一般に、プロテクトされない、それゆえ例えば随意の又は不随意のソフトウェア消去によって引き起こされる損傷を受けることがあるメモリ領域にダウンロードされる。
【０００７】
本発明の目的は、受信器にソフトウェアプログラムをセキュアに、メモリ安全に、効率的にダウンロードすることを可能にし、それによってエンドユーザにより良いサービス品質をもたらすことである。本発明の方法は、有利には、技術（例えばＤＳＳ技術）に専用のブートコード（又はブートストラップローダ）及びアプリケーションコード（又はメインアプリケーション）を含む完全なエンベデッド（埋め込まれた）ソフトウェアプログラムを、別の技術（例えばＤＶＢ技術）に専用の別のソフトウェアプログラムと入れ替えることを可能にする。上述の技術の変更は、例えばＤＶＢ又はＤＳＳのような伝送技術に関連しうるが、更に、条件付きアクセス技術及び／又はブロードキャスタ技術に関連し又はグローバルシステムにおける任意の互換性のない変更にも関連しうる。
【課題を解決するための手段】
【０００８】
このために、本発明は、ソフトウェアプログラムが、ブートコード及びアプリケーションコードを含み、ブートコードが、アプリケーションコードのダウンロードを可能にし、記憶ユニットが、現在ブートコードを含む少なくとも記憶された現在ソフトウェアプログラムを含む、冒頭の段落で記述した第１の方法であって、
−ダウンロード要求時、現在ブートコードに上書きしない位置に、新しいブートコードをダウンロードするステップと、
−新しいブートコードが現在ブートコードと入れ替わる（現在ブートコードに取って代わる）ことを示すステップと、
−新しいブートコードに上書きにしない位置に、新しいブートコードに関連する新しいアプリケーションコードをダウンロードするステップと、
−新しいアプリケーションコードが有効であることを示すステップと、
を含む第１の方法を提案する。
【０００９】
この第１の方法は、有利には、新しいブートコードが有効にダウンロードされる前に現在ブートコードが損なわれうることを回避するとともに、現在ブートコードによって使用されるメモリ空間を再利用することを可能にする。
【００１０】
本発明の別の実施例によれば、
−ブートコードの使用を有効にするために、ブートコードが記憶されている記憶ユニットの位置にジャンプするためのブートセクタを規定するステップであって、該ブートセクタが、現在ブートコードが記憶されている第１の位置を最初に示す、ステップと、
−ダウンロード要求時、第２の位置に、新しいブートコード及び新しいアプリケーションコードを含む新しいソフトウェアプログラムをダウンロードするステップと、
−新しいブートコードが記憶されている第２の位置にジャンプするステップと、
を含む、第２の方法が提案される。
【００１１】
第２の方法において、処理は、前のソフトウェアに戻る能力を有利に含むとともに製造業者が第２の技術を無視する可能性を保持するセキュア且つメモリ安全なやり方で、行われることができる。更に、有利には、現在ブートコードのために使用されるメモリ空間は、例えば新しいアプリケーションコードのような他のデータを記憶するために再使用されることができるので、上述の方法はメモリ効率的である。
【００１２】
本発明及び本発明を有利に実現するために任意に使用されうる他の特徴は、添付の図面から明らかであり、それらの図面を参照して説明される。
【発明を実施するための最良の形態】
【００１３】
セットトップボックス又はデジタルテレビのような受信器と呼ばれる消費者装置に、新しいソフトウェアを、効率的に且つ信頼性をもってダウンロードするための技法について説明する。効率は、ダウンロードを実施するために必要とされる不揮発メモリに関して評価される。信頼性は、中断に対するプロセスの耐性に関して評価される。ダウンロードは、例えばオーバジエア（over the air、空気を通して）で、ケーブル伝送又は衛星リンクによって、局所的ダウンロードを用いて又はカード、外部装置、その他のハードウェアモジュールを介して、さまざまな異なるやり方で実施されることが可能である。
【００１４】
新しいソフトウェアは、永続的な（不揮発性の）メモリ（例えばフラッシュメモリ）に書き込まれる必要がある。プロセスが（例えば電力スイッチオフによって）中断され、新しいソフトウェアを古いソフトウェアに上書きするプロセスが完全に終わらない場合、ソフトウェアは一般に、もはや機能しない。１つの解決策は、古いソフトウェアに上書きすることを避けることである。しかしながら、永続的なメモリのフットプリントのサイズが、新しいソフトウェア及び古いソフトウェアの両方を記憶するに十分大きくなければならならず、これは効率的でない。
【００１５】
２つの方法が、記憶ユニットへのソフトウェアプログラムの効率的なダウンロードのために提案され、図１及び図２をそれぞれ参照して説明される。両方の方法は、ブートコード及びアプリケーションコードを含むソフトウェアプログラムに適用され、ブートコードは、記憶ユニットにプログラムコードをダウンロードすることを可能にする。両方の方法について、記憶ユニットは、現在の（古い）ブートコード及び現在の（古い）アプリケーションコードを含む、少なくとも記憶された現在の（古い）ソフトウェアプログラムを含むものとする。
【００１６】
第１の方法は、
−ダウンロード要求時、現在ブートコードに上書きしない位置に、新しいブートコードをダウンロードするステップと、
−新しいブートコードが現在ブートコードと入れ替わることを示すステップと、
−現在アプリケーションコードが破損されてもよいことを示すステップと、
−新しいブートコードに上書きしない位置に、新しいブートコードに関連する新しいアプリケーションコードをダウンロードするステップと、
−新しいアプリケーションコードが現在アプリケーションコードと入れ替わることを示すステップと、
を含む。
【００１７】
この第１の方法は、図１を参照して、５ステッププロセスにおいてより詳しく示されている。図１において、ブロックは、記憶ユニットのメモリ領域を表す。
【００１８】
−スタート：現在ソフトウェアは、２つの部分に分割される。１つの部分は、ソフトウェアのダウンロードを実施することができるものであり、現在ブートコードと呼ばれ、ＣＢＣと示される。他方の部分は、アプリケーション全体を作るためにこの機能を補足するものであり、現在アプリケーションコードと呼ばれ、ＣＡＣと示される。「インジケータ」を呼ばれる永続的なフラグが使用され、信頼性の有無をフラグで知らせる機能と、個々のコードが永続的なメモリ内に見つけられることができる位置とを組み合わせる。ＢＣＩと示されるブートコードインジケータフラグは、どのブートコードが使用されるのに有効であるかを示す。ＡＣＩと示されるアプリケーションコードインジケータフラグは、どのアプリケーションコードが使用されるのに有効であるかを示す。
【００１９】
−ステップ１：新しいソフトウェアがダウンロードされる前に、フラグＡＣＩは、現在アプリケーションコードが破損されてもよいことを知らせるようにセットされる。
【００２０】
−ステップ２：新しいブートコードＮＢＣが、永続的な記憶メモリに書き込まれる。このプロセスで、現在アプリケーションコードＣＡＣは、上書きされてもよい。
【００２１】
−ステップ３：新しいコードの書き込みが成功したのち、フラグＢＣＩは、これからは、現在ブートコードＣＢＣではなく、新しいブートコードＮＢＣが使用されるべきであることを示すようにセットされる。
【００２２】
−ステップ４：新しいアプリケーションコードＮＡＣが、永続的なメモリに書き込まれることができる。
【００２３】
−ステップ５：新しいアプリケーションコードの永続的なメモリへの書き込みが成功すると、永続的なフラグは、新しいアプリケーションコードが準備できていることを示すようにセットされる。
【００２４】
ステップ２、３及び４において、データの完全性が確認されることができるようにするために、永続的なメモリへの書き込みの処理に先行して、例えばＲＡＭ（ランダムアクセスメモリ）のような揮発性メモリへの一時的なロードが行われてもよい。
【００２５】
セキュリティ対策として、新しいブートコードが現在ブートコードの上に書き込まれる前に、現在ブートコードは、受信器の永続的なメモリの別の部分にコピーされる（バックアップされる）ことが可能であり、又は以前に現在ブートコードを記憶していたメモリに新しいブートコードを書き込む一方で、現在ブートコードが代替位置にコピーされることが可能である。それによって、新しいコードをコピーするプロセスが中断される場合、受信器は、この状況を検出し、現在ブートコードをリストアすることができる。ブートコードは、通常、アプリケーションコードのサイズと比較して非常に小さいサイズを有し、現在ブートコードのために使用されるメモリ空間は、新しいアプリケーションコードを記憶するために使用されることができるので、このセキュリティ対策は、いかなる別のメモリ空間も必要とせず、又は再使用可能なメモリ空間の非常に限られた領域を必要とするだけである。
【００２６】
ステップ３における最終の信頼性のために、新しいブートイメージのうちどれが正しいかを示すために、単一のメモリビットを使用することが可能である。このビットを書き込むプロセスが中断される場合、それは０又は１と読めるが、結論は随意である。２つのイメージのいずれでもよい。
【００２７】
アプリケーションコードが複数の部分に分けられることも可能である。ブートコードのみが入れ替えられる必要がある場合、アプリケーションコードの一部に新しいブートコードを上書きする必要がありうる。この場合、アプリケーションコードの上書きされた部分のみが、リロードされることを要する。
【００２８】
インプリメンテーションに関する限り、「フラッシュ」ファイルシステムが、ソフトウェア管理のため、前述の方法を実施するために有利に使用されることができる。この場合、マネージャアプリケーションは、古いブートアプリケーションが上書きされる前に、それが、新しいブートアプリケーションが記憶されることを可能にするのに十分な空間をファイルシステムに最初に作るとともに、プロセスが途中で止められる場合に矛盾する状態が生じないように、フラグ付け／インジケーションが信頼性をもって行われることを確実にしなければならない。特に、ファイルポインタが、「極微的に（atomically）」、すなわち１つのアクション内で更新されることができ、又は単一ビット手法が使用されることが保証される必要がある。更に、ブートコード全体に関して計算されるチェックサムを確認することによって、ブートコードが有効であるかどうかを確認することも可能である。イメージが部分的に上書きされる場合、それは無効となる。その場合、システムは、代替のものを探すことができる。
【００２９】
最後に述べるが重要なこととして、ブートコードの位置には制約がありうるので、ブートコードがメモリ内の同じ位置にあることが、あるシステムでは重要であり又は好都合でありうる。このようなシステムでは、新しいブートコードを別の位置に書き込む代わりに、新しいブートコードのコピー前又はコピー中に、古いブートコードが、そこに移動されることができる。プロセスが中断される場合、装置は、古いバックアップブートコードをなお回復することができ、可能性としてそれをその元の位置にコピーすることができ、又は新しいブートコードをダウンロードするプロセスを再開することができる。（部分的に書き込まれた）ブートコードが完全ではないという検出は、「ポインタ」、「ビット」又は「チェックサム」を通して行われうる。
【００３０】
現在ブートコードが、ブート領域、すなわちブートアドレスの近傍の位置に記憶される場合、第２の方法が好適である。現在ブートコードを新しいものと入れ替えているとき、この領域への書き込み中に時機を失したパワーオフが生じると、ブート領域を破損し、明らかにボックスをクラッシュすることがある。これを避けるための、第２の方法からなる解決策は、ソフトウェアが、決して変わらないメモリの別のセクタ上でブートし、好適にはプロテクトされたメモリ領域内の常にブートコードが記憶されているアドレスへジャンプするための決定を行うことである。アドレス１及びアドレス２の２つの異なるアドレスのみが図２に示されているが、より多くのアドレスがあってもよい。これは、安全性の理由のためである。時機を失したパワーオフが書き込み中に生じる場合、実行されるべき有効なＢＳＬが常にある。このブートセクタは、多くのソフトウェア資源を必要としない。これは、あまり大きなサイズをオーバロードしない非常に小さいアプリケーションである。これは決して消去されないので、ＲＯＭメモリに記憶されることさえ可能である。低いハードウェアの制約がある場合、ブートセクタは、例えばシリアルリンクによる、プロプライエタリなダウンロードシステムを含むことができる。
【００３１】
システムの変更前に、受信器の記憶ユニットにソフトウェアプログラムをダウンロードするこの第２の方法を以下に述べる。第２の方法は、
−ブートコードの使用を有効化するために、ブートコードが記憶されている記憶ユニットの位置へジャンプするためのブートセクタを規定するステップであって、前記ブートセクタが、現在ブートコードが記憶されている第１の位置を最初に示す、ステップと、
−システムの変更によるダウンロード要求時、新しいシステムで動作することが意図される、新しいブートコード及び新しいアプリケーションコードを含む新しいソフトウェアプログラムを、第２の位置にダウンロードするステップと、
−新しいブートコードが記憶される第２の位置へジャンプするステップと、
を含む。
【００３２】
現在ブートコードのために使用されるメモリ空間は、例えば新しいアプリケーションコードを記憶するために、有利に再使用されることができる。
【００３３】
ブートコードが常に同じ位置にあることが重要であるシステムにおいて、前述の方法は、
−第１の位置の現在ブートコードを新しいブートコードと入れ替えるステップと、
−第１の位置へジャンプするステップと、
によって完全にされることができる。
【００３４】
上述したように、ブートセクタは、好適にはプロテクトされた記憶領域に位置し、この記憶領域は、記憶ユニット内にあってもよく又は記憶ユニットとは別にあってもよい。
【００３５】
第２の方法の好ましい実施例において、ブートコード及び／又はアプリケーションコードは、特定のソフトウェア条件下で上書きされるように択一的にプロテクトされ及びプロテクト解除されることができる記憶ユニットの領域に記録される。この好ましい実施例は、ソフトウェア命令によってメモリ領域をプロテクトし／プロテクト解除することを可能にする永続的なメモリの新しい技術を利用する。
【００３６】
新しいソフトウェアプログラムは、現在アプリケーションコードと新しいアプリケーションコードと間のリンクである中間のアプリケーションコードを含むことができ、これは、例えば加入者カード、アンテナ、アンテナ指向を変更し、新しいサービスを有効化するためにテレホンセンタを呼び出す等のために、ユーザが受信器を新しいシステムにパラメトライズすることを可能にする。
【００３７】
インプリメンテーションの見地を考慮に入れずに、第２の方法の好ましい実施例は、次のように要約することができる。
−ステップ１：ダウンロード要求が検出されると、現在ブートコードＢＳＬ１は、通常、新しいブートコードＢＳＬ２を含む新しいアプリケーションをダウンロードする。
−ステップ２：新しいブートコードＢＳＬ２のメモリ領域がプロテクトされる。
−ステップ３：現在ブートコードＢＳＬ１のメモリ領域がプロテクト解除される。今後は、ブートセクタは、新しいブートコードＢＳＬ２にジャンプする。
−ステップ４：現在ブートコードＢＳＬ１が消去される。
−ステップ５：新しいブートコードＢＳＬ２に、通常のダウンロードが要求されることが可能である。
−エンド：新しいブートコードＢＳＬ２は、第２のプロトコルに従ってＡｐｐｌｉ２をロードする。正常モードへ戻る。従って、操作は、完全に可逆である。
【００３８】
図２は、この第２の方法の実施例をより詳細に示す。ブロックは、記憶ユニットのメモリ領域を表す。現在及び新しいブートコードは、それぞれＢＳＬ１及びＢＳＬ２と示されている。現在及び新しいアプリケーションコードは、それぞれＡｐｐｌｉ１及びＡｐｐｌｉ２と示されている。ブートセクタは、Ｂｏｏｔと示されている。方法は、以下のステップを含む。
−スタート：ブートセクタは、通常、現在ブートコードＢＳＬ１にジャンプし、現在ブートコードＢＳＬ１は、ダウンロードが要求されない場合、現在アプリケーションＡｐｐｌｉ１にジャンプする。
−ステップ１：Ａｐｐｌｉ１は、ダウンロード要求を検出する：Ａｐｐｌｉ１は、現在ブートコードＢＳＬ１上でブートするボックスをリセットする。現在ブートコードＢＳＬ１は、通常、新しいアプリケーションをダウンロードするが、これは、実際には、将来の新しいブートコードＢＳＬ２と、Ｓｗｉｔｃｈ  Ａｐｐｌｉと呼ばれる中間の有効なアプリケーションとの間のリンクである。最後に、現在ブートコードＢＳＬ１は、中間の有効なアプリケーションＳｗｉｔｃｈ  Ａｐｐｌｉにジャンプする。この段階で、新しいブートコードＢＳＬ２は、単に、アプリケーションデータとしてＳｗｉｔｃｈ  Ａｐｐｌｉに結合されるが、まだ機能できない。従って、現在ブートコードＢＳＬ１は、Ｓｗｉｔｃｈ  Ａｐｐｌｉエントリポイントへ直接ジャンプする。新しいブートコードＢＳＬ２をＳｗｉｔｃｈ  Ａｐｐｌｉにリンクする目的は、ダウンロードの数を制限することである。
−ステップ２：Ｓｗｉｔｃｈ  Ａｐｐｌｉは、それが記憶されているメモリ領域をプロテクトする。
【００３９】
−ステップ３：Ｓｗｉｔｃｈ  Ａｐｐｌｉは、ＢＳＬ１が記憶されているメモリ領域をプロテクト解除する。リセットののち、今後は、ブートセクタは、Ｓｗｉｔｃｈ  Ａｐｐｌｉにジャンプする。Ｓｗｉｔｃｈ  Ａｐｐｌｉは、ユーザに変更を警告するためにマンマシンインターフェースを表示するとともに、可能性としてシステムのいくつかのパラメータを適応化するようにユーザに求め、例えば、アンテナの指向を変更し、別のネットワークにアクセスするための新しいアクセスコードを入力する、等を求めることができる。
−ステップ４：Ｓｗｉｔｃｈ  Ａｐｐｌｉは、現在ブートコードＢＳＬ１を消去し、最終的に又は必要な場合、例えば現在ブートコードＢＳＬ１の代わりに、その最終的な位置に新しいブートコードＢＳＬ２を書き込む。
−ステップ５：Ｓｗｉｔｃｈ  Ａｐｐｌｉは、新しいブートコードＢＳＬ２のメモリ領域をプロテクトする。従って、今後は、ブートセクタは新しいブートコードＢＳＬ２にジャンプする。
−ステップ６：Ｓｗｉｔｃｈ  Ａｐｐｌｉは、それが記憶されているメモリ領域をプロテクト解除し、新しいブートコードＢＳＬ２に通常のダウンロードを要求し、ボックスをリセットする。
−エンド：ＢＳＬ２は、第２のプロトコルを守るＡｐｐｌｉ２をロードし、正常モードに戻る。従って、この操作は、完全に可逆である。
【００４０】
図２に示す例において、それぞれのリセット時に、ブートセクタは、最も高くプロテクトされたセクタ（図２の矢印を参照）にジャンプする。しかしながら、他の条件が規定されてもよい。
【００４１】
図３は、伝送チャネルを介して上述した方法の１つに従って送信器から受信器までソフトウェアをダウンロードするために、送信器３１、受信器３２及び伝送チャネル３３を有する本発明によるシステムを示す。放送システムにおけるダウンリンク伝送中、例えば、ユーザ機器は、受信器であり、基地局又はサーバは、送信器である。
【００４２】
放送システムのデジタル受信器の場合、現在のところ、２つの標準（ＤＶＢ及びＤＳＳ）がある。これら２つの標準は、同じハードウェアによって現在サポートされることが可能であるが、ソフトウェアサイズの理由のため、専用のソフトウェア（ＢＳＬ及びアプリケーション）によってサポートされる。本発明は、（例えばＤＳＳ標準と互換性がある）技術を利用して市場に出され、将来は（例えばＤＶＢ標準と互換性がある）全く異なる技術をダウンロードする可能性を保持する製品を可能にする。現在のシステムの技術と初めに互換性をもつソフトウェアを含む受信器のプロバイダは、製品を発売するときに、新しいシステムの仕様を知る必要はない。
【００４３】
図面及びそれらの上述の説明は、本発明を説明するものであり、本発明を制限するものではない。特許請求の範囲内にある多数の代替例があることが明らかであろう。この点で、以下の結びの説明がなされる。ハードウェア若しくはソフトウェアアイテム又はこれらの両方によって機能を実現する多くのやり方がある。この点で、図面は非常に概略的であり、各図面は、本発明のただ１つの可能な実施例を表している。このように、図面は、それぞれの異なる機能を、それぞれの異なるブロックとして示しているが、これは、ハードウェア又はソフトウェアの単一のアイテムがいくつかの機能を実行することを決して除外せず、また、ハードウェア又はソフトウェアのアイテムのアセンブリ又はこれら両方のアセンブリが或る機能を実行することを除外しない。
【００４４】
請求項におけるいかなる参照符号も、請求項を制限するものとして解釈されてはならない。動詞「有する、含む」及びその活用形の使用は、請求項に記載するもの以外の構成要素又はステップの存在を除外しない。単数の構成要素又はステップは、このような構成要素又はステップの複数の存在を除外しない。
【図面の簡単な説明】
【００４５】
【図１】本発明の第１の実施例による第１の方法の例を示す図。
【図２】本発明の第２の実施例による第２の方法の例を示す図。
【図３】本発明によるシステムの例を示す図。
【図１】
2005531846.tif 000003
【図２】
2005531846.tif 000004
【図３】
2005531846.tif 000005
【国際調査報告】
2005531846.tif 000006
2005531846.tif 000007
2005531846.tif 000008