(57)【要約】読み取り専用の記憶装置に保持されたソフトウェアをアップグレードする方法及び装置が説明される。前記方法及び装置は、ファイルマネージャプログラム（１２０）、プログラムファイルＡ（１２２）及びプログラムファイルＢ（１２４）を保存する再プログラム不可能な読み取り専用メモリ（１１６）と、ファイルＸ（１３２）を保存するＦｌａｓｈ（登録商標）ＲＡＭ（１１８）とを有する。ファイルマネージャプログラム（１２０）の制御の下、アップグレードプログラムファイルＢ＋（１２６）が例えばインターネットを介して取得された場合、該アップグレードプログラムファイルはＦｌａｓｈ（登録商標）ＲＡＭ（１１８）内に保存され、ファイルＸ（１３２）がアップグレードされる。前記ソフトウェアが実行されるとき、ファイルＡ（１２２）はファイルＸ１３２の内容に従って、ファイルＢ（１２４）の呼び出しに優先して、ファイルＢ＋（１２６）を呼び出す。
2005508538.tif 000002
【特許請求の範囲】
【請求項１】
製品内に保持されたソフトウェアをアップグレードする方法であって、前記方法はプログラムファイル管理及びプログラムファイル呼び出しのための手段によって支援され、
（ａ）再プログラム不可能な記憶装置から第１のプログラムファイルを実行するステップと、
（ｂ）前記第１のプログラムファイルから参照ファイルにアクセスするステップと、
（ｃ）前記参照ファイルの内容への参照によって、再プログラム不可能な記憶装置中に常駐する第２のプログラムファイルにアクセスするステップと、
（ｄ）第３のプログラムファイルを参照するために前記参照ファイルをアップデートし、以降に実行されるステップ（ａ）乃至（ｃ）が、前記第２のプログラムファイルの代わりに前記第３のプログラムファイルへのアクセスに帰着するようにするステップと、
を有する方法。
【請求項２】
前記プログラムファイル管理及び前記プログラムファイル呼び出しのための手段は埋め込みＬｉｎｕｘである、請求項１に記載の方法。
【請求項３】
前記プログラムファイル管理及び前記プログラムファイル呼び出しのための手段は埋め込みＵｎｉｘ（Ｒ）である、請求項１に記載の方法。
【請求項４】
前記参照ファイルはソフトリンクを有する、請求項２又は３に記載の方法。
【請求項５】
プログラムファイル管理及びプログラムファイル呼び出しを実行するためプログラムの実行を支援し、再プログラム不可能な記憶装置内に位置するファイルのアクセスを支援し、再プログラム可能な記憶装置内に位置するファイルのアクセスを支援するように動作可能なデータプロセッサと、
前記プログラムファイル管理及び前記プログラムファイル呼び出しのためのプログラムを保存し、第１のプログラムファイルを保存し、第２のプログラムファイルを保存するように動作可能な再プログラム不可能な記憶装置と、
参照ファイルを保存し、第３のプログラムファイルを保存するように動作可能な再プログラム可能な記憶装置と、
を有し、前記第２のプログラムファイル又は前記第３のプログラムファイルは、前記参照ファイルの内容に従って前記第１のプログラムファイルによってアクセスされる、アップグレード可能なソフトウェアを含む装置。
【請求項６】
前記再プログラム不可能な記憶装置は読み取り専用メモリを有する、請求項５に記載の装置。
【請求項７】
前記再プログラム可能な記憶装置はＦｌａｓｈ（登録商標）ＲＡＭを有する、請求項５に記載の装置。
【請求項８】
前記再プログラム可能な記憶装置はハードディスクを有する、請求項５に記載の装置。
【請求項９】
前記第３のプログラムファイルはネットワークを介して取得されダウンロードされる、請求項５に記載の装置。
【請求項１０】
前記第３のプログラムファイルは物理的な記録担体から取得される、請求項５に記載の装置。
【請求項１１】
請求項１乃至４のいずれか一項に記載された方法ステップを実行するために構成されたソフトウェアユーティリティ。
【請求項１２】
請求項５乃至１０のいずれか一項に記載されたデータプロセッサを含む装置であって、前記データプロセッサは請求項１１に記載されたソフトウェアユーティリティによる前記装置の動作に向けたものである装置。
【請求項１３】
請求項５乃至１０のいずれか一項又は請求項１２に記載の装置と共に使用されるための記録担体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は製品中のソフトウェアをアップグレードする方法及びかような方法を利用するように構成された装置に関する。
【０００２】
【従来の技術】
多くの消費者向け製品は、ハードウェアのみを利用して可能なものよりも、所定の価格で広い範囲の特徴を提供するためにソフトウェアを利用する。消費者向け電子機器市場はますます競争が激しくなっており、より低い価格のソリューションが求められる必要がある。例えばソフトウェアプログラムのために提供される記憶装置は、低いコストと、機能的なバリエーションに順応するための柔軟な方法により利用されることとの両方が必要である。加えて、例えばバグを修正するため又はことによるとエンドユーザ向けのカスタマイズを提供するために、製品はますますアップグレードに依存するようになっている。
【０００３】
ソフトウェアプログラムは、典型的に製品内の不揮発性のメモリに保存される。例えば読み取り専用メモリ（ＲＯＭ）などがあり、これは一般に他の形式の不揮発性メモリよりも単位メモリサイズ当たりのコストが低い。
【０００４】
標準的なＲＯＭは再プログラム不可能であるため、シリコン製造業者はＲＯＭを補うために、ＥＥＰＲＯＭ及びＦｌａｓｈ（登録商標）ＲＡＭを含む種々の電子的に再プログラム可能な不揮発性メモリ装置を開発してきた。これらの種類の装置は、ＲＯＭ中の元のソフトウェアがその場でアップデートされることを可能にする。かような技術の不利点は、比較的高いコストである。それ故製品中において利用されるかようなメモリの量を最小化することが望ましい。
【０００５】
【発明が解決しようとする課題】
フィールドアップグレード可能な製品の他の典型的な欠点は、アップグレードソフトウェアのコードが、前記製品の特定のハードウェアと互換性があるように構成される必要性である。このことは、それぞれが特定の製品のハードウェアプラットフォームのために構成される、同一のアップグレードコードの幾つかのバージョンの必要性に帰着する。
【０００６】
本発明の目的は、製品中のソフトウェアをアップグレードする改善された方法及び装置を通して、これらの及び他の問題を抑制しようとすることにある。
【０００７】
【課題を解決するための手段】
本発明によれば、製品内に保持されたソフトウェアをアップグレードする方法であって、前記方法はプログラムファイル管理及びプログラムファイル呼び出しのための手段によって支援され、
（ａ）再プログラム不可能な記憶装置から第１のプログラムファイルを実行するステップと、
（ｂ）前記第１のプログラムファイルから参照ファイルにアクセスするステップと、
（ｃ）前記参照ファイルの内容への参照によって、再プログラム不可能な記憶装置中に常駐する第２のプログラムファイルにアクセスするステップと、
（ｄ）第３のプログラムファイルを参照するために前記参照ファイルをアップデートし、以降に実行されるステップ（ａ）乃至（ｃ）が、前記第２のプログラムファイルの代わりに前記第３のプログラムファイルへのアクセスに帰着するようにするステップと、
を有する方法が提供される。
【０００７】
本方法は、（再プログラミング不可能な記憶装置中に常駐している元のモジュールの代わりに）再プログラム可能な記憶装置中に常駐しているアップグレードソフトウェアモジュールにアクセスする間も、アップグレードされないプログラムコードが依然再プログラム不可能な記憶装置から実行されることを可能にする。このことは、前記元のアップグレード可能なソフトウェアが前記再プログラム不可能な記憶媒体内において損傷を受けないままであり、問題（例えば前記アップグレードソフトウェアが破損した場合）があった場合に前記製品が古い元の（しかし未だ動作可能な）ソフトウェアに戻ることを可能とするという、付加的な利点を持つ。
【０００８】
更なる利点は、前記アップグレードソフトウェアが一般にファイルベースであり、それ故いずれの特定の対象のハードウェアアーキテクチャに依存しないということである。このことは、同一のソフトウェアアップデートのソースコードファイルが、全ての製品によって利用されることを可能にし、製造者、ハードウェア設計又は提供された実装にかかわらず、製品内の前記プログラムファイル管理手段及び前記プログラムファイル呼び出し手段が、前記アップグレードされたソフトウェアが前記製品自身において正確に機能するように、前記記憶装置及びファイルのリンクを支援する。
【０００９】
代わりに、本発明の方法を依然利用しながら、前記プログラムファイルが特定のハードウェアプラットフォームに適合されるような実装も可能である。
【００１０】
適切なプログラムファイル管理及びプログラムファイル呼び出し手段の一例は、他のファイルを介したファイルの参照によるアクセスのためのハードリンク及びソフトリンク（シムリンク（ｓｙｍｌｉｎｋｓ））を利用する、埋め込みＬｉｎｕｘである。加えて、Ｕｎｉｘ（Ｒ）に基づく他の適切な埋め込みシステムも利用可能である。
【００１１】
アップグレードプログラムファイルの取得は、ネットワーク接続及び物理的な記録媒体などを含む（これらに限定はされない）いずれの適切な手段を介しても良い。とりわけ地上波、衛星、ケーブル及びモデム接続を含む家庭消費者に利用可能なネットワークが、アップグレードファイルの配布のために利用されても良い。典型的に、インターネットもアップグレードファイルを取得するための有用な手段である。アップグレードファイルは、フロッピー（Ｒ）ディスク及びＣＤ−ＲＯＭのような物理的な媒体上に配布されても良い。
【００１２】
また本発明によれば、プログラムファイル管理及びプログラムファイル呼び出しを実行するためプログラムの実行を支援し、再プログラム不可能な記憶装置内に位置するファイルのアクセスを支援し、再プログラム可能な記憶装置内に位置するファイルのアクセスを支援するように動作可能なデータプロセッサと、
前記プログラムファイル管理及び前記プログラムファイル呼び出しのためのプログラムを保存し、第１のプログラムファイルを保存し、第２のプログラムファイルを保存するように動作可能な再プログラム不可能な記憶装置と、
参照ファイルを保存し、第３のプログラムファイルを保存するように動作可能な再プログラム可能な記憶装置と、
を有し、前記第２のプログラムファイル又は前記第３のプログラムファイルは、前記参照ファイルの内容に従って前記第１のプログラムファイルによってアクセスされる、アップグレード可能なソフトウェアを含む装置が提供される。
【００１３】
製品は、再プログラム不可能な及び再プログラム可能な記憶装置の、いずれの適切な手段を利用しても良い。再プログラム不可能な記憶装置の例は、マスクＲＯＭ及びワンタイムプログラム可能な（ＯＴＰ）ＲＯＭのような固体メモリ、及びＣＤ−ＲＯＭのようなデータ担体を含む（これらに限定はされない）。再プログラム可能な記憶媒体の例は、ＥＥＰＲＯＭ、Ｆｌａｓｈ（登録商標）ＲＡＭ、のような固体メモリ、並びにＣＤ−Ｒ／Ｗ、フロッピー（Ｒ）ディスク及びハードディスクのようなデータ担体をも含む（これらに限定はされない）。加えて、特定の製品の再プログラム可能な記憶装置は、前記製品の機能的な必要性に従って、適宜揮発性であっても不揮発性であっても良い。
【００１４】
製品は、前記アップグレード可能なコードを保存するための（例えばＦｌａｓｈ（登録商標）ＲＡＭのような）再プログラム可能な記憶装置と、アップグレード不可能なソフトウェアコードを保存するための（例えば読み取り専用メモリ、ＲＯＭのような）再プログラム不可能な記憶装置の効率的な使用を結合しても良い。このことは、前記製品の再プログラム不可能な記憶装置と再プログラム可能な記憶装置との両方に常駐するコードの重複したセットを回避することにより先行技術の方式に比べてコストの節約に帰着する。
【００１５】
本発明による製品は先行技術に対して、例えば結合されたＲＯＭ／Ｆｌａｓｈ（登録商標）ＲＡＭ法といった、再プログラム不可能な記憶装置と再プログラム可能な記憶装置との混合を利用するスプリット記憶装置法（ｓｐｌｉｔ  ｓｔｏｒａｇｅ  ｓｏｌｕｔｉｏｎｓ）という利点をも持つ。先行技術の方法は特定のアップグレードモジュールのためにメモリアドレス空間を予約する。このことは、アップグレードもジュ−ルのサイズが制限されるということをも意味する。本発明においては、ソースソフトウェアモジュールのアップグレードは、ハードウェア非依存である。それ故、例えばＦｌａｓｈ（登録商標）ＲＡＭメモリのような、利用可能な再プログラム可能な記憶装置の容量の利用は、例えば到着順又はことによるとユーザの選択に基づいてというように、アップグレードファイルがファイルマネージャによって決定されるようにロードされ保存されるという点で、より効率的である。それ故製造業者は、例えば考え得るアップグレードモジュールのためにメモリアドレスの範囲の予約を必要とする、又は実際に利用されるであろうものより（高価な）アップグレードメモリを組み込むといった、特定のハードウェアの実装又はコストに束縛されることなく、コスト／機能のニーズに合致するように製品を自由に設計できる。
【００１６】
更なる特徴及び利点が、添付する図を参照しながら、例としてのみ以下に説明される。
【００１７】
【発明の実施の形態】
本発明の以下の説明において、「再プログラム可能」という語は、データ（例えばプログラムコード）を用いてプログラムされていて、代替データ（例えばアップグレードプログラムコード）を用いて再プログラムされることが可能である、記憶装置の実体を意味する。「再プログラム不可能」という語は、データを用いてプログラムされているが、再プログラムされることができない記憶装置の実体を意味する。「参照ファイル」という語は、内容がデータファイル、プログラムファイル又は他の参照ファイルを参照し得るファイルを意味する。
【００１８】
図１は製品内のソフトウェアがアップグレードされる場合の例を示す。図１ａを参照すると、本図はアップグレード前の前記ソフトウェアを示す。例えばマスクＲＯＭのような再プログラム不可能な読み取り専用メモリは１００に示され、ファイルマネージャプログラム１０４、プログラムファイルＡ１０６及びプログラムファイルＢ１０８のための記憶装置を有する。前記ファイルマネージャは、前記記憶装置、及び／又は再プログラム不可能な読み取り専用メモリ１００と例えばＦｌａｓｈ（登録商標）ＲＡＭのような再プログラム可能な記憶装置１０２との両方の内部のファイルの位置の管理を担当する。再プログラム可能な記憶装置１０２は当然、例えばディスクドライブ、標準的なＲＡＭなどといった、いずれの適切な記憶装置であっても良く、必要に応じて不揮発性のものであっても良いし、そうでなくとも良い。ファイルマネージャ１０４は、前記プログラムが全体として正しく実行されるようにファイル間のリンクの維持をも担当する。この目的のため、例えば前記製品がリセットされた場合、ファイルマネージャ１０４は所定のリンクファイルＸ１１２をＦｌａｓｈ（登録商標）ＲＡＭ１０２に書き込む。ファイルＡ１０６の実行は、ファイルＸ１１２がアクセスされる（１１０）ようにする。（上述したように初期化された）ファイルＸ１１２の内容は、ファイルＢ１０８が呼び出される（１１４）ようにする。このようにして、再プログラム不可能な読み取り専用メモリ１００に位置するファイルＡ１０６は、同様に（同一の又は異なる）再プログラム不可能な読み取り専用メモリに位置するファイルＢ１０８を、中間ファイルＸ１１２を用いて呼び出すことができる。このことは、ファイルＡがアドレスベクトル又は同様のハードウェア依存のメカニズムを利用してファイルＢを呼び出すような先行技術のやり方とは良い対照をなす。
【００１９】
図１ｂはアップグレード後の前記製品のソフトウェアを示す。再プログラム不可能な読み取り専用メモリ１１６は、ファイルマネージャプログラム１２０、プログラムファイルＡ１２２及びプログラムファイルＢ１２４のための記憶装置を有し、これらは全て図１ａの対応する項目と同等のものである。ファイルマネージャ１２０の制御の下、付加的なプログラムファイルＢ＋１２６がＦｌａｓｈ（登録商標）ＲＡＭ１１８内に取得され保存されている。ここでＦｌａｓｈ（登録商標）ＲＡＭ１１８は図１ａの対応する項目と同等のものである。ファイルＢ＋１２６は、ファイルＢ１２４へのアップグレード（即ち、ファイルＢ１２４の代わりに実行されるもの）として意図されている。ファイルＢ＋の取得は、例えばＣＤ−ＲＯＭ若しくはフロッピー（Ｒ）ディスクといった物理的な媒体を含むいずれの適切な手段を介して、又は例えばイーサネット（Ｒ）、地上波、ケーブル、衛星又はモデムといったネットワーク接続を介したものであっても良い。インターネットはアップグレードファイルの典型的な取得源である。ファイルマネージャ１２０は、ファイルＢ＋１２６をＦｌａｓｈ（登録商標）ＲＡＭ１１８にロードするとき、ファイルＸ１３２もファイルＢ＋を指すように書き換える。かくして、前記ソフトウェアが実行されるとき、ファイルＡ１１２は、図１ａの例においてしたようにファイルＸ１３２をアクセスする（１３０）。しかしながらここでは、ファイルＸ１３２はファイルＢ＋１２６を参照し、ファイルＢ＋１２６がファイルＢ１２４の代わりに呼び出される（１３４）ようにする。（例えばファイルＸ１３２及びファイルＢ＋１２６が同一の記憶装置に常駐している場合には）ファイルＸ１３２はソフトリンク又はハードリンクを含んでも良い。
【００２０】
以上まとめると、ファイルＡはいつもファイルＸにアクセスする（なぜならファイルＡは再プログラム不可能な読み取り専用メモリに位置しているからである）。ファイルＸは任意のファイルを参照するように前記ファイルマネージャによって変更されることができる。元のファイルＢ１２４は常に保持され、ファイルＢを参照するようにファイルＸを再初期化する前記ファイルマネージャによって、以降の製品のリセット又は他の既定の理由のために再展開（ｄｅｐｌｏｙ）されることができることは容易に認識されよう。
【００２１】
図２は、衛星又はケーブルテレビジョンサービスを受信するための、及びインターネットブラウザとしての利用のためのセットトップボックス（ＳＴＢ）の模式図を示す。全体として２００として示されるデータ処理ユニットは、バス２０２によって相互接続されたＣＰＵ２０４、データ表示装置２０６、ユーザインタフェース２０８、ＲＯＭ２１０、ネットワークアクセス２１２及びＦｌａｓｈ（登録商標）ＲＡＭ２１８を有する。チューナ２１４はテレビ番組項目のマテリアル（ｍａｔｅｒｉａｌ）２１６にアクセスし、ビデオ／オーディオ処理ユニット２２０に前記マテリアルを配信する。ＲＯＭ２１０は、例えば埋め込みＬｉｎｕｘのようなファイルマネージャプログラム及びインターネットブラウザアプリケーションプログラムを有する。前記インターネットブラウザプログラムはアップグレード可能な１以上のプラグインプログラムファイルを持つ。Ｆｌａｓｈ（登録商標）ＲＡＭ２１８は１以上の（シムリンクとしても知られる）ソフトリンクファイルに加えて、ＲＯＭ２１０中に保持された前記ブラウザプラグインプログラムファイルをアップグレードするため１以上のプログラムファイルを収容するための付加的なメモリ容量を持つ。基本的な構成においては、前記ブラウザはＦｌａｓｈ（登録商標）ＲＡＭ２１８中に保持された前記ソフトリンクを介して、ＲＯＭ２１０から実行される。ユーザはユーザインタフェース２０８を用いて前記ブラウザを制御し、インターネットコンテンツはバス２０２を介してビデオ／オーディオ処理ユニット２２０に転送され、次いで２２２において前記ユーザに提示される。ブラウザアップグレードプラグインプログラムファイルはネットワークアクセス２１２を介して取得され、前記ファイルマネージャによってＦｌａｓｈ（登録商標）ＲＡＭ２１８にロードされる。前記アップグレードプラグインプログラムファイルに関するＦｌａｓｈ（登録商標）ＲＡＭ２１８内のソフトリンクも前記ファイルマネージャによってアップデートされる。従って以降の前記ブラウザの実行は、前記アップデートされたソフトリンクによって参照されるような前記アップデートされたプラグインを利用する。
【００２２】
セットトップボックス装置の上述した説明は、例としてのみ提示されたものであり、本発明において開示されるような方法の利点を活用するために当業者によって容易に既定され得る実現の範囲のうちの１つを表すものである。
【００２３】
図３は本発明を実施化する方法の模式図を示す。全体として３００に示される本方法は、３０２において開始し、第１のプログラムファイルを実行する（３０４）。前記第１のプログラムファイルは参照ファイル３０６にアクセスし、前記参照ファイルの内容はプログラムファイルマネージャ３１０によって管理されている。前記プログラムファイルマネージャは、前記参照ファイルがリンクを含む場合、３０８において第２のプログラムファイル３１２の代わりに第３のプログラムファイル３１４にアクセスする。本方法は３１６において終了する。
【００２４】
上述の方法は、例としてのみ提示されたものであり、当業者によって容易に既定され得る方法の範囲のうちの１つを表すものである。
【００２５】
上述の説明において、及び図１ｂを参照しながら、読み取り専用の記憶装置に保持されたソフトウェアをアップグレードする方法及び装置が説明された。本方法及び装置は、ファイルマネージャプログラム１２０、プログラムファイルＡ１２２及びプログラムファイルＢ１２４を保存する再プログラム不可能な読み取り専用メモリ１１６と、ファイルＸ１３２を保存するＦｌａｓｈ（登録商標）ＲＡＭ１１８とを有する。ファイルマネージャプログラム１２０の制御の下、アップグレードプログラムファイルＢ＋１２６が例えばインターネットを介して取得された場合、該アップグレードプログラムはＦｌａｓｈ（登録商標）ＲＡＭ１１８内に保存され、ファイルＸ１３２がアップデートされる。前記ソフトウェアが実行されるとき、ファイルＡ１２２はファイルＸ１３２の内容に従って、ファイルＢ１２４の呼び出しに優先して、ファイルＢ＋１２６を呼び出す。
【図面の簡単な説明】
【図１ａ】製品内のソフトウェアがアップグレードされる例を示す。図１ａはアップグレード前のソフトウェアを示す。
【図１ｂ】製品内のソフトウェアがアップグレードされる例を示す。図１ｂはアップグレード後のソフトウェアを示す。
【図２】本発明を利用するセットトップボックス（ＳＴＢ）消費者向け受信器の模式図を示す。
【図３】本発明を実施化する方法の模式図を示す。
【図１ａ】
2005508538.tif 000003
【図１ｂ】
2005508538.tif 000004
【図２】
2005508538.tif 000005
【図３】
2005508538.tif 000006
【国際公開パンフレット】
2005508538.tif 000007
2005508538.tif 000008
2005508538.tif 000009
2005508538.tif 000010
2005508538.tif 000011
2005508538.tif 000012
2005508538.tif 000013
2005508538.tif 000014
2005508538.tif 000015
2005508538.tif 000016
2005508538.tif 000017
2005508538.tif 000018
2005508538.tif 000019
2005508538.tif 000020
【国際公開パンフレット（コレクトバージョン）】
2005508538.tif 000021
【国際調査報告】
2005508538.tif 000022
2005508538.tif 000023
2005508538.tif 000024