【誤訳訂正書】
【提出日】平成18年8月11日(2006.8.11)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
電子ファイルの更新システムであって、
デルタ・ファイルを生成する、ファイル差別化および更新システムの第１コンポーネントを含む第１デバイスと、
前記第１デバイスから前記デルタ・ファイルを少なくとも１つの結合を介して受け第２デバイスであって、前記ファイル差別化および更新システムの第２コンポーネントを含む第２デバイスと、
を備え、前記ファイル差別化および更新システムが、
前記デルタ・ファイルから新電子ファイルの少なくとも１つの新コンポーネントを読み出し、前記新電子ファイルが、元の電子ファイルの更新バージョンであり、
第１および第２メモリ・エリアの順次探索を行うことにより、前記新コンポーネントを収容するのに十分大きいメモリ・ブロックを識別し予約し、これにおいて未使用メモリ・ブロックを排除するために前記第１メモリ・エリアに再書き込みし、前記新コンポーネントのサイズが前記第１および第２メモリ・エリアの使用可能なメモリ・ブロックのサイズを超過するとき、前記第１および第２メモリ・エリアを再分配し、
前記新コンポーネントを前記予約したメモリ・ブロックに書き込み、
前記新コンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込んだときに、ベクトル・テーブルを更新する、
ことによって前記第２デバイスの電子ファイルを更新するように構成されており、
更に、前記ファイル差別化および更新システムが、
前記デバイスの主プログラムからの関数コールを受け、前記関数コールは対応する電子ファイルの識別情報を含み、
前記ベクトル・テーブルから前記対応する電子ファイルの開始アドレスを読み取り、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを生成することによって、
前記デバイスの前記電子ファイルにアクセスするように構成されている、更新システム。
【請求項２】
請求項１記載の更新システムにおいて、前記第２デバイスは、更に、電子ファイルの更新において用いるための第１および第２アプリケーション・プログラミング・インターフェース（ＡＰＩ）を含む、更新システム。
【請求項３】
請求項１記載の更新システムにおいて、前記第２デバイスは、更に、電子ファイルへのアクセスにおいて用いるための第３アプリケーション・プログラミング・インターフェース（ＡＰＩ）を含む、更新システム。
【請求項４】
請求項１記載の更新システムにおいて、前記第１デバイスは、前記第２デバイス上にホストされたソフトウェアの少なくとも１つのプロバイダによってアクセス可能な、プロセッサ・ベースのデバイスを含む、更新システム。
【請求項５】
請求項１記載の更新システムにおいて、前記第２デバイスは、パーソナル・コンピュータ、携帯用計算機、セルラ電話機、携帯用通信デバイス、およびパーソナル・ディジタル・アシスタントの中から選択した、少なくとも１つのプロセッサ・ベースのデバイスを含む、更新システム。
【請求項６】
請求項１記載の更新システムにおいて、前記少なくとも１つの結合は、ワイヤレス結合、ワイヤード結合、混合ワイヤレス／ワイヤード結合、およびローカル・エリア・ネットワーク（ＬＡＮ）、都市区域ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、企業固有のネットワーク、バックエンド・ネットワーク、インターネットを含む少なくとも１つのネットワークとの結合、ならびにフロッピ・ディスク、ハード・ディスク・ドライブ、およびＣＤ−ＲＯＭディスクを含む着脱可能固定媒体、更に電話回線、バス、および電子メール・メッセージの中から選択する、更新システム。
【請求項７】
請求項１記載の更新システムにおいて、前記元の電子ファイルおよび新電子ファイルはソフトウェア・ファイルを含み、該ソフトウェア・ファイルは、ダイナミック・リンク・ライブラリ・ファイル、共有オブジェクト・ファイル、埋め込みソフトウェア・コンポーネント（ＥＢＳＣ）、ファームウェア・ファイル、実行可能ファイル、１６進データ・ファイルを含むデータ・ファイル、システム・コンフィギュレーション・ファイル、および個人的使用データを含むファイルを含む、更新システム。
【請求項８】
ホスト・デバイスにおけるデバイス・メモリ管理のための方法であって、
新電子ファイルの少なくとも１つの受信コンポーネントの識別情報を受けるステップであって、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、前記識別情報は前記受けたコンポーネントのサイズを含む、ステップと、
第１および第２メモリ・エリアの順次探索を行うことによって、前記受けたコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約するステップであって、未使用メモリ・ブロックを排除するように前記第１メモリ・エリアに再書き込みし、前記サイズが前記第１および第２メモリ・エリアの使用可能メモリ・ブロックのサイズを超過するとき、前記第１および第２メモリ・エリアを再分配する、ステップと、
前記予約したメモリ・ブロックのアドレスを与えるステップと、
前記受けたコンポーネントを前記予約メモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新するステップと、
を備えた方法。
【請求項９】
請求項８記載の方法であって、さらに、前記受けたコンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む前記第１メモリ・エリア内の元のメモリ・ブロック以外のメモリ・ブロックに書き込むとき、第１テーブルを更新するステップを含み、前記第１テーブルは、前記ホスト・デバイスの電子ファイルのコンポーネントのコンポーネント情報を含み、該コンポーネント情報は、コンポーネント識別、リード・オンリ・メモリ（ＲＯＭ）番号、開始アドレス、およびサイズを含む、方法。
【請求項１０】
請求項８記載の方法において、識別し予約するステップは、前記元の電子ファイルの対応するコンポーネントのサイズ以下のとき、前記第１メモリ・エリアの元のメモリ・ブロックを予約することを含み、前記元のメモリ・ブロックは、前記元の電子ファイルの前記対応するコンポーネントを含む、方法。
【請求項１１】
請求項１０記載の方法において、識別し予約するステップは、前記サイズが前記元の電子ファイルの前記対応するコンポーネントのサイズを超過するとき、前記第２メモリ・エリアと前記第１メモリ・エリアの未使用部分との少なくとも一方を探索して、前記受けたコンポーネントを格納できる十分大きなメモリ・ブロックを求めることを含む、方法。
【請求項１２】
請求項８記載の方法において、前記第１メモリ・エリアの再書き込みおよび前記第２メモリ・エリアの再分配のステップは、更に、
前記第１エリアの前記未使用メモリ・ブロックに対応する少なくとも１つのエントリを含む第２テーブルを読み取り、
前記第１メモリ・エリアのコンポーネントを順次パックし、前記未使用メモリ・ブロックを統合するために、前記第１メモリ・エリアのコンポーネントを再書き込みし、
前記第２メモリ・エリアの各コンポーネントのサイズを順次評価し、前記第２メモリ・エリアのコンポーネントを、前記第２メモリ・エリアの前記コンポーネントのサイズおよび前記統合した未使用メモリ・ブロックのサイズが許す前記第１メモリ・エリアに再書き込みし、
前記順次評価および再書き込みに続いて、前記統合した未使用メモリ・ブロックの残りのブロックを識別し、
前記統合した未使用メモリ・ブロックの前記残りのブロックを、前記第２メモリ・エリアの一部として指定することによって、前記第２メモリ・エリアを再分配し、
前記再分配した第２メモリ・エリアの使用可能なメモリの開始アドレスを維持するために、前記第２メモリ・エリアのポインタを設定し、
前記第２テーブルを更新する
ことを含む、方法。
【請求項１３】
請求項１２記載の方法において、前記第２テーブルの前記エントリは、リード・オンリ・メモリ（ＲＯＭ）番号、開始アドレス、およびサイズを含む前記未使用メモリ・ブロックの情報を含む、方法。
【請求項１４】
請求項８記載の方法であって、更に、
前記ホスト・デバイスの主プログラムからの関数コールを受け、該関数コールが対応する電子ファイルの識別情報を含み、
前記対応する電子ファイルの開始アドレスをベクトル・テーブルから読み出し、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを発生する
ことによって前記ホスト・デバイスの電子ファイルが与える機能にアクセスするステップを含む、方法。
【請求項１５】
新電子ファイルの少なくとも１つの新コンポーネントを受ける手段であって、該新電子ファイルは、元の電子ファイルの更新バージョンである、手段と、
第１および第２メモリ・エリアの順次探索を行うことによって、前記受けた新コンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約する手段であって、未使用メモリ・ブロックを排除するように前記第１メモリ・エリアに再書き込みし、前記新コンポーネントのサイズが前記第１および第２メモリ・エリアの使用可能メモリ・ブロックのサイズを超過するとき、前記第１および第２メモリ・エリアを再分配する、手段と、
前記新コンポーネントを前記予約したメモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新する手段と、
前記新コンポーネントを、前記元の電子ファイルの前記対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込むとき、ベクトル・テーブルを更新する手段と、
を備えた装置。
【請求項１６】
請求項１５記載の装置において、該装置は、パーソナル・コンピュータ、携帯用計算機、セルラ電話機、携帯用通信デバイス、およびパーソナル・ディジタル・アシスタントの中から選択した、少なくとも１つのプロセッサ・ベースのデバイスを含む、装置。
【請求項１７】
請求項１５記載の装置において、前記メモリ・ブロックを識別し予約する手段は、第１アプリケーション・プログラミング・インターフェース（ＡＰＩ）である、装置。
【請求項１８】
請求項１５記載の装置であって、更に、
前記デバイスの主プログラムから関数コールを受け取る手段であって、該関数コールは、対応する電子ファイルの識別情報を含む、手段と、
前記ベクトル・テーブルから前記対応する電子ファイルの開始アドレスを読み取る手段と、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを発生する手段と、
を備えた、装置。
【請求項１９】
請求項１８記載の装置において、関数コールを受け取る前記手段は、第２アプリケーション・プログラミング・インターフェース（ＡＰＩ）である、装置。
【請求項２０】
電子ファイルの更新システムであって、
デルタ・ファイルを生成する、ファイル差別化および更新システムの第１コンポーネントを含む第１デバイスと、
前記第１デバイスから前記デルタ・ファイルを少なくとも１つの結合を介して受ける第２デバイスであって、前記ファイル差別化および更新システムの第２コンポーネントを含む第２デバイスと、
を備え、前記ファイル差別化および更新システムが、
前記デルタ・ファイルを通じて新電子ファイルの少なくとも１つのコンポーネントを受け、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、
前記受けたコンポーネントのサイズを判定し、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下であるとき、前記受けたコンポーネントを、前記元の電子ファイルの前記対応するコンポーネントを含む元のメモリ・エリアに書き込み、
前記サイズが前記元の電子ファイルの前記対応するコンポーネントのサイズを超過するとき、前記受けたコンポーネントを、前記元のメモリ・エリアと関連した予約メモリ・エリアに書き込む、
ことにより前記第２デバイスの電子ファイルを更新するように構成された、更新システム。
【請求項２１】
新電子ファイルの少なくとも１つのコンポーネントを受ける手段であって、前記新電子ファイルは、元の電子ファイルの更新バージョンである、手段と、
前記受けたコンポーネントのサイズを判定する手段と、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下であるとき、前記受けたコンポーネントを、前記元の電子ファイルの前記対応するコンポーネントを含む元のメモリ・エリアに書き込む手段と、
前記サイズが前記元の電子ファイルの前記対応するコンポーネントのサイズを超過するとき、前記受けたコンポーネントを、前記元のメモリ・エリアと関連した予約メモリ・エリアに書き込む手段と、
を備えた、装置。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】０００３
【訂正方法】変更
【訂正の内容】
【０００３】
ホスト・デバイスのある機能を実現するために中央演算装置（ＣＰＵ）上で実行するソフトウェアは、時間と共に変化していくことが多い。この変化は、ソフトウェア・バグを訂正する必要性から生じたり、発展する技術に適合するためであったり、あるいはホスト・デバイスに新たな特徴を追加するためであると考えられる。特に、セルラ電話のような移動ワイヤレス・デバイスにおける埋め込みソフトウェア・コンポーネントは、他の携帯のデバイスまたは処理システムよりも多くのソフトウェア・バグを含み、したがって、新たな特徴をそのデバイスに追加するためにより頻繁な更新を一般に必要とする。
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】０００４
【訂正方法】変更
【訂正の内容】
【０００４】
ソフトウェアは、人が読むことができる情報相互交換用アメリカ標準コード（ＡＳＣＩＩ）の平文ファイルまたは二進コードの形態の１つ以上のファイルを含む。ソフトウェア・ファイルは、更に小さな単位に分割することができ、多くの場合これらをモジュールまたはコンポーネントと呼ぶ。ＵＮＩＸ（登録商標）プラットフォームまたはパーソナル・コンピュータ（ＰＣ）は、多数のソフトウェア・コンポーネントを含み、これらソフトウェア・コンポーネントの各々は、対応するオペレーティング・システム（ＯＳ）が対応するファイル・システムを通じて独立して管理および更新が行われる。ＵＮＩＸ（登録商標）プラットフォームまたはＰＣ上にホストされたソフトウェア・ファイルまたはソフトウェア・コンポーネントを更新する際に用いられる情報は、インターネットを通じて転送したり、あるいはフロッピ・ディスク、コンパクト・ディスク・リード・オンリ・メモリ（ＣＤ−ＲＯＭ）、またはコンパクト・フラッシュ・カードのような二次的な記憶媒体からロードすることができる。
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】０００６
【訂正方法】変更
【訂正の内容】
【０００６】
低速通信リンクを通じて移動ワイヤレス・デバイスの大きなファイルを更新する場合の障害には、更新したファイルをデバイスに配信するのに伴う時間が含まれる。差分ファイルを、更新／改訂の目標となるファイルをホストしているデバイスに転送する場合、この時間は、差分ファイルを転送するための通信時間、ならびに受信側装置が差分ファイルを処理し、目標のファイルを更新／改訂するために用いられる時間の双方を含む。これを、ここでは、ホスト・デバイス処理時間と呼ぶ。関連出願に記載されているように、更新したソフトウェア・ファイルまたはソフトウェア・コンポーネントを転送するためにデルタ・ファイルを用いると、通信時間が大幅に短縮するが、ホスト・デバイスの処理時間の短縮は、少なくとも部分的に、ホスト・デバイスのアーキテクチャによって決まる。
【誤訳訂正５】
【訂正対象書類名】明細書
【訂正対象項目名】００２２
【訂正方法】変更
【訂正の内容】
【００２２】
デルタ・ファイル１１６は、通信経路１０６を通じて、別のコンピュータ・システムに転送または送信される。転送の前に、当技術分野では公知の圧縮技法を用いて、デルタ・ファイル１１６を圧縮することもできるが、そのように限定される訳ではない。受信側のコンピュータ・システム上にホストされたファイル更新アルゴリズム１１８は、デルタ・ファイル１１６を、ホストされた元のファイル１１０と共に用いて、新ファイル１１２のコピーを生成即ち作成する。この新ファイル１１２のコピーは、次に、改訂または更新の対象である、クライアント・デバイス上にホストされた元のファイル１１０を更新する際に用いられる。この更新プロセスの完了時に、第２コンピュータ・システム上に現在格納されている新ファイルは、第１コンピュータ・システムにおいて受信した新ファイルと同一となる。
【誤訳訂正６】
【訂正対象書類名】明細書
【訂正対象項目名】００２３
【訂正方法】変更
【訂正の内容】
【００２３】
元のファイルと新ファイルとの間の相違は、通例では、新ファイル自体よりも小さいので、新たなバイト・ストリーム全体の代わりに、差分を送信し格納すれば、格納および送信において大幅な節約となる。これは、通例では遅くしかも費用がかかる可能性が高い接続部、例えば、ワイヤレスまたはセルラ接続部を通じて更新するプログラムをホストしている移動電子デバイスにとっては、特に重要である。
【誤訳訂正７】
【訂正対象書類名】明細書
【訂正対象項目名】００２５
【訂正方法】変更
【訂正の内容】
【００２５】
アップグレード・システム２００は、サービス・プロバイダのワイヤレス・インフラストラクチャの種々の機構を用いて、新たなおよび改訂したソフトウェアのファイルの供給をサポートすることによって、デバイスのリコールを防止する。これらのシステムは、新たなおよび改訂したソフトウェアをソフトウェア流通業者から受け取り、ファイル差別化アルゴリズムを用いて新たなソフトウェアからデルタ・ファイルを生成することによって機能する。デルタ・ファイルは、サービス・プロバイダのインフラストラクチャを通じて、クライアント・デバイスに転送される。受信側即ちクライアント・デバイスのアップグレード・クライアントは、ファイル更新アルゴリズムを含み、デルタ・ファイルを用いて、クライアント・デバイス上にホストされた目標とされているソフトウェアを更新する。
【誤訳訂正８】
【訂正対象書類名】明細書
【訂正対象項目名】００２９
【訂正方法】変更
【訂正の内容】
【００２９】
一実施形態のソフトウェア・コンポーネント分配部２０２は、クライアント・デバイス製造業者の処理システム上にホストされている。代替実施形態では、ソフトウェア・コンポーネント分配部２０２は、アプリケーションまたはシステム・ソフトウェア供給業者の処理システム上にホストされている。別の代替実施形態では、ソフトウェア・コンポーネント分配部２０２は、通信サービス・プロバイダの処理システム上、例えば、アップグレード・コンポーネント２０３〜２０５上にホストされている。
【誤訳訂正９】
【訂正対象書類名】明細書
【訂正対象項目名】００３８
【訂正方法】変更
【訂正の内容】
【００３８】
図３は、一実施形態の下における、デバイス・メモリ３００のブロック図である。一実施形態のデバイス・メモリ３００はフラッシュＲＯＭであるが、デバイス・メモリ３００の代替実施形態では、多くの形式のメモリおよび／またはメモリ形式の組み合わせを用いることもできる。デバイス・メモリ３００は、埋め込みソフトウェア・エリア３０２、アップグレード・クライアント・デバイス・パラメータのエリア３０６、およびデバイス・メモリ管理エリア３０８を含む。アップグレード・クライアント１３０は、ファイル更新アルゴリズム１１８と共に、一実施形態の埋め込みソフトウェア・エリア３０２に格納されている。デバイス・メモリ管理エリア３０８は、デバイス・メモリ管理（ＤＭＭ）ライブラリ３１０、ベクトル・テーブル３１２、およびガベージ・テーブル３１４をホストしている。これらについては、以下で詳しく説明する。
【誤訳訂正１０】
【訂正対象書類名】明細書
【訂正対象項目名】００４５
【訂正方法】変更
【訂正の内容】
【００４５】
次に、ブロック５０８において、クライアント・デバイスのアップグレード・クライアントは、元のファイルのホストされたコピーを、デルタ・ファイルと共に用いて、新ファイルのコピーを生成する。ブロック５１０において、新ファイルのコピーを、クライアント・デバイスの、予め指定したメモリ・エリア、例えば、クライアント・デバイスの予約メモリ内に書き込む。このプロセスを必要に応じて繰り返す。
【誤訳訂正１１】
【訂正対象書類名】明細書
【訂正対象項目名】００６３
【訂正方法】変更
【訂正の内容】
【００６３】
アップグレード・クライアント・デバイス・パラメータ・エリア１００８は、アップグレード・クライアントに特定のクライアント・デバイス・コンフィギュレーション・データおよびパラメータを格納する。このエリア１００８の推定サイズは、クライアント・デバイス上にホストされたデバイス・コンフィギュレーションに関連するアップグレード可能ＥＢＳＣの数に対応するが、そのように限定される訳ではない。
【誤訳訂正１２】
【訂正対象書類名】明細書
【訂正対象項目名】００７７
【訂正方法】変更
【訂正の内容】
【００７７】
アップグレード・クライアント・デバイス・パラメータ・エリア１４０８は、アップグレード・クライアントに特定のクライアント・デバイス・コンフィギュレーション・データおよびパラメータを格納する。アップグレード・クライアント・デバイス・パラメータ・エリア１４０８の推定サイズは、クライアント・デバイス上にホストされたデバイス・コンフィギュレーションに関係するアップグレード可能なＥＢＳＣの数に対応する。
【誤訳訂正１３】
【訂正対象書類名】明細書
【訂正対象項目名】００７８
【訂正方法】変更
【訂正の内容】
【００７８】
デバイス・メモリ管理エリア１４１０は、メモリ・パラメータ、ベクトル・テーブル、およびガベージ・エントリ・テーブルを格納するが、そのように限定される訳ではない。このエリア１４１０の推定サイズは、クライアント・デバイス上にホストされたデバイス・メモリ管理に関係するアップグレード可能なＥＢＳＣの数に対応する。
【誤訳訂正１４】
【訂正対象書類名】明細書
【訂正対象項目名】０１０４
【訂正方法】変更
【訂正の内容】
【０１０４】
一実施形態のシステムの第２デバイスは、更に、電子ファイルにアクセスする際に用いるための第３アプリケーション・プログラミング・インターフェース（ＡＰＩ）を含む。
一実施形態のシステムの第１デバイスは、第２デバイス上にホストされたソフトウェアの少なくとも１つのプロバイダによってアクセス可能な、プロセッサに基づくデバイスを含む。
【誤訳訂正１５】
【訂正対象書類名】図面
【訂正対象項目名】図１
【訂正方法】変更
【訂正の内容】
【図１】
2006506747.tif 000001