JP4364790B2 - バイト・レベルのファイル相違検出および更新アルゴリズム - Google Patents
バイト・レベルのファイル相違検出および更新アルゴリズム Download PDFInfo
- Publication number
- JP4364790B2 JP4364790B2 JP2004504132A JP2004504132A JP4364790B2 JP 4364790 B2 JP4364790 B2 JP 4364790B2 JP 2004504132 A JP2004504132 A JP 2004504132A JP 2004504132 A JP2004504132 A JP 2004504132A JP 4364790 B2 JP4364790 B2 JP 4364790B2
- Authority
- JP
- Japan
- Prior art keywords
- file
- byte
- stream
- byte stream
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
abcatsrst
および新バイト・ストリーム
abdailyrst
について検討する。
以下の疑似コードは、ファイル相違検出アルゴリズムによって用いられるものの一例の上位記述として提示する。この例では、「o」は原バイト・ストリームを表し、「n」は新バイト・ストリームを表し、「op_array」は動作アレイを表す。
再帰分析については、ファイル相違検出アルゴリズムのツリー横断関数を、「while ループ」を用いて実施するとよい。約1Mバイトを収容するバイト・ストリームでは、ファイル相違検出アルゴリズムの再帰レベルは約20である。Lが、Hirschbergのアルゴリズムを呼び出すことができるバイト・ストリームの最大サイズとすると、Hirshbergアルゴリズムの再帰レベルは、log2Lとなる。Lが1Mよりも小さい場合、総再帰レベルは約40となる。したがって、殆どのUNIXおよびWindowsプラットフォーム上で用いられているO(1M)のデフォルト・スタック・サイズは、ファイル相違検出アルゴリズムの実行に十分対応して余りある。
したがって、この技法の適用後、動作アレイは次のようになる。
第3M&I技法は、シーケンスの中に一致(「M」)動作がない場合、挿入(「I」)動作、削除(「D」)動作、および代替(「R」)動作のシーケンスを合併して1つの動作を形成する。この技法は、2つの変形を含む。第1の変形は、挿入動作の数が削除動作の数と等しいときに用いられ、その場合、合併した動作は、指定の長さを有する固定長置換動作となる。それ以外の場合、第2の変形、即ち、2つの指定長を有する可変長置換が適用され、その場合動作は、次のように指定される。
したがって、この技法の適用後では、動作アレイは次のようになる。
多くの場合、置換動作の固定長シーケンスは、一致動作の固定長シーケンスの間で発生する。第5技法は、このパターンを利用する新たな動作を導入する。新動作の名称は、置換長と、間隔長および繰り返し回数を指定する2つのパラメータとを共に与える。一例についてこれより説明する。ここで、動作アレイを次の通りとする。
第6M&I技法は、処理した全ての動作をデータ構造、例えば、ハッシュ・テーブルに入力することを含む。動作アレイにおいて以前に発生した動作に、動作アレイにおいて遭遇した場合、新たな動作を導入し、以前に遭遇した動作を新たな場所に挿入するように動作する。
バイト・ストリームが実行可能な場合、1つの命令、挿入または削除によって、後続の命令のアドレスが一定値だけずれることになる。第7M&I技法は、このパターンを利用する新たな動作を導入する。新たな動作は、次の通りであり、
通信環境では、転送プロセスにおける効率を最大に高め、ファイル転送または送信に伴うエラーを最少に抑えるには、デバイスに送信するデータ・ファイルのサイズはできるだけ小さい方がよい。したがって、動作アレイの合併およびインデックス化に続いて、一実施形態のファイル相違検出アルゴリズムは、動作アレイをデルタ・ファイルに書き込む際における動作アレイの冗長情報を削減することによって、デルタ・ファイルのサイズを極力小さくする。この冗長情報の削減を行うには、可変長整数フォーマットを用いて、動作アレイをデルタ・ファイルに書き込むが、実施形態はそのように限定される訳ではない。可変長整数フォーマットに加えて、絶対開始アドレスの代わりに相対開始アドレスを動作アレイにおいて用い、バイト・ストリームに対する変更が行われる場所を示す。
図13および図14を参照すると、この例では、各レコードのフォーマットは、次のようになっている。
「relative_start_addr」レコード1304は、相対的開始アドレスを与え、このアドレスで現在の変更が発生する。このレコード1304が最初のレコードである場合、「relative_start_add」レコード1304は、新バイト・ストリームの先頭に対するオフセットを表し、それ以外の場合、現在の絶対開始アドレスと最後のレコードにおける絶対開始アドレスとの間の差を表す。この方式を用いると、現在の変更に対する絶対開始アドレスの計算が容易となる。その利点は、大きな整数の代わりに、小さな整数がデルタ・ファイルに格納されることである。したがって、可変長整数フォーマットを用いることによって、デルタ・ファイルが数千のレコードを含む場合、数千バイトの節約となる。
INSERTIONオペコード:これは挿入動作である。レコード・フォーマットは次の通りである。
DELETIONオペコード:これは、削除動作である。レコード・フォーマットは、次の通りである。
REPLACEMENTオペコード:これは、同じ長さの置換動作である。レコード・フォーマットは、次の通りである。
VARIABLE_LEN_REPLACEMENTオペコード:これは可変長置換動作である。レコード・フォーマットは次の通りである。
EXACT_COPY_INDEX_TOオペコード:これは、現在の動作がバイト・ストリーム内のどこかで以前に行われたことを示す。レコード・フォーマットは次の通りである。
WHOLE_REPLACEMENTオペコード:これは全体置換動作である。レコード・フォーマットは次の通りである。
ADDRESS_REPEAT_SHIFTオペコード:これは、多重1バイト・アドレス・シフト動作(multi-one-byte address shift operation)である。レコード・フォーマットは次の通りである。
SAME_ADDRESS_REPEAT_SHIFTオペコード:これは、多重1バイト・アドレス・シフト動作であるが、シフト値は、以前のADDRESS_REPEAT_SHIFTレコードによって暗示される。したがって、以前のレコードと比較して、1バイトの節約となる。レコード・フォーマットは次の通りである。
他の全オペコード:他のオペコードは、動作アレイ、例えば、固定長間隔で繰り返し現れる短い長さの動作シーケンスにおいて見出される動作のパターンを利用する。このようなシーケンスの一例は、
別の例は、
一実施形態の第2デバイスは、パーソナル・コンピュータ、携帯用計算機、セルラ電話機、携帯用通信デバイス、およびパーソナル・ディジタル・アシスタントの中から選択した、少なくとも1つのプロセッサを用いるデバイスである。
一実施形態では、可変長整数フォーマットは、1バイトの内の1ビットを用い、後続のバイトを整数の一部として読み取るか否かについて示す。
Claims (21)
- バイト・レベルのファイル相違検出を実行する、コンピュータにより実行される方法であって、
前記コンピュータが、2つの受けたバイト・ストリームまたはそのサブストリーム間における最も長い共通サブストリング(LCS)を識別するステップであって、前記バイト・ストリームは、原ファイルに対応する原バイト・ストリームと、前記原ファイルの新ファイル・バージョンに対応する新バイト・ストリームとを含む、ステップと、
前記コンピュータが、前記2つの受けたバイト・ストリームまたはそのサブストリームの各々をサブストリームに分割するステップであって、第1サブストリームが前記それぞれのLCSの接頭部であり、第2サブストリームが前記それぞれのLCSの接尾部である、ステップと、
前記コンピュータが、前記サブストリームのサイズが予め指定したサイズ未満となるまで、またはLCSが存在しなくなるまで、前記のLCSを識別するステップ及び前記のサブストリームに分割するステップを、前記サブストリームに対し繰り返すステップと、
前記コンピュータが、前記原バイト・ストリームにおけるサブストリームと前記新バイト・ストリームにおける対応するサブストリームとの間におけるバイト・レベルの相違を判定するステップであって、前記原バイト・ストリームのサブストリームと前記新バイト・ストリームの対応するサブストリームとの間の編集距離を計算することを含み、前記編集距離は、前記原バイト・ストリームのサブストリームから前記新バイト・ストリームの対応するサブストリームに変換する最小数の編集動作により表され、前記予め指定したサイズは、前記編集距離の計算に関係する、ステップと、
前記コンピュータが、計算した前記編集距離を表す前記編集動作の情報を含む動作アレイを生成するステップと、
前記コンピュータが、前記動作アレイに含まれた前記編集動作の情報を含むデルタ・ファイルを生成するステップと、
を備えた方法。 - 請求項1記載の方法において、前記編集動作は、置換動作、挿入動作、削除動作、一致動作を含み、
前記デルタ・ファイルを生成するステップは、前記動作アレイに含まれた前記編集動作のうち、一致動作以外の動作を前記デルタ・ファイルに書き込むことを含み、
前記デルタ・ファイルは、連接した一連のレコードを含み、各レコードは、前記動作アレイに含まれた前記置換動作、挿入動作、削除動作のうちの1つに関連した動作コードと、該関連した1つの動作に関係する情報を格納した、
方法。 - 請求項2記載の方法において、前記動作アレイを生成するステップは、
生成された前記動作アレイに含まれる前記編集距離を表す前記の置換動作、挿入動作、削除動作、一致動作に対し合併またはインデックス化を行うステップ、
を含む方法。 - 請求項1記載の方法において、前記デルタ・ファイルのレコードは、前記情報として、バイト・ストリームの変更位置を識別する相対的開始アドレスを含むこと、を特徴とする方法。
- 請求項2記載の方法において、前記デルタ・ファイルを生成するステップは、前記デルタ・ファイルへの書き込みにおいて可変長整数フォーマットを使用することを含み、該可変長整数フォーマットは、1バイトの内の1ビットを用いて、後続のバイトを整数の一部として読み取るか否かについて示す、方法。
- 請求項1記載の方法において、前記デルタ・ファイルのレコードは、更に、前記情報として、前記動作コードを適用する前記新ファイルの相対的開始アドレス、および前記原ファイルに対する挿入または置換のデータを含む、を特徴とする方法。
- 請求項1記載の方法であって、更に、
前記コンピュータが、前記デルタ・ファイルを圧縮するステップと、
前記コンピュータが、誤り訂正コード化を前記デルタ・ファイルに適用するステップと、
を含む、方法。 - 請求項1記載の方法であって、更に、
前記コンピュータが、前記2つのバイト・ストリームまたはサブストリームがLCSの識別に関連する最大指定サイズよりも長いとき、前記2つのバイト・ストリームまたはサブストリームの各々を半分ずつに分割するステップ、
を含む方法。 - 請求項1記載の方法であって、前記動作アレイを生成するステップは、更に、
前記コンピュータが、2つのバイト・ストリーム間または2つのサブストリームの間にLCSがない場合、前記新ファイルに対応する前記バイト・ストリームまたはサブストリームの長さが前記原ファイルに対応する前記バイト・ストリームまたはサブストリームの長さ未満であるとき、置換動作および削除動作を前記動作アレイに書き込むステップ、
を含む方法。 - 請求項1記載の方法であって、前記動作アレイを生成するステップは、更に、
前記コンピュータが、2つのバイト・ストリーム間または2つのサブストリームの間にLCSがない場合、前記新ファイルに対応する前記バイト・ストリームまたはサブストリームの長さが前記原ファイルに対応する前記バイト・ストリームまたはサブストリームの長さよりも長いとき、置換動作および挿入動作を前記動作アレイに書き込むステップ、
を含む方法。 - 請求項3記載の方法において、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、前記動作アレイにおいて一致動作の短いシーケンスを突き止めるステップであって、前記短いシーケンスが3つ以下の連続する一致動作を含む、ステップと、
前記コンピュータが、前記短いシーケンスの一致動作を置換動作と置換するステップと、
を含む方法。 - 請求項3記載のステップにおいて、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、前記動作アレイにおいて一致動作以外の動作のシーケンスを突き止めるステップと、
前記コンピュータが、前記突き止めたシーケンスを、前記動作の種類および前記シーケンスの長さを指定する単一の動作と置換するステップ、
を含む方法。 - 請求項3記載の方法であって、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、挿入、削除、および置換の動作の少なくとも1つの組み合わせを含むシーケンスを突き止めるステップと、
前記コンピュータが、前記シーケンスを、単一の可変長置換動作と置換するステップと、
を含む方法。 - 請求項3記載の方法において、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、等しい数の挿入および削除の動作を含むシーケンスを突き止めるステップと、
前記コンピュータが、前記シーケンスを、単一の固定長置換動作で置換するステップと、
を含む方法。 - 請求項3記載の方法において、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、あるパターンで繰り返す動作単位を突き止めるステップであって、前記単位は、置換動作の固定長シーケンスと、他の種類の動作の固定長シーケンスとを含む、ステップと、
前記コンピュータが、前記繰り返す単位を、前記置換動作シーケンスの長さ、前記単位の長さ、および前記単位が前記パターンで繰り返す回数を指定する単一の動作と置換するステップと、
を含む方法。 - 請求項3記載の方法において、前記合併またはインデックス化を行うステップは、更に、
前記コンピュータが、前記動作アレイに適当な動作をハッシュ・テーブルに入力するステップと、
前記コンピュータが、オフセット・パラメータを含む単一のコピー動作を用いるステップであって、前記コピー動作が、前記ハッシュ・テーブルの情報を用いて、前記動作アレイ内に動作を挿入する、ステップと、
を含む方法。 - 請求項1記載の方法において、前記予め指定したサイズは、約4096バイトである、方法。
- バイト・レベルのファイル相違検出および更新を実行する方法であって、
第1のコンピュータ・システムが請求項1から17のいずれかに記載の方法を実行するステップと、
前記第1コンピュータ・システムが、前記デルタ・ファイルを第2のコンピュータ・システムに転送するステップと、
前記第2コンピュータ・システムが、前記原ファイルと前記デルタ・ファイルを用いて、前記新ファイルのコピーを生成するステップと、
前記第2コンピュータ・システムが、前記新ファイルの前記コピーを用いて、前記原ファイルを更新するステップと、
を備えた方法。 - バイト・レベルのファイル相違検出を実行するように構成された、コンピュータに実現される装置であって、
2つのバイト・ストリームまたはそのサブストリームを受ける手段であって、前記2つのバイト・ストリームは原ファイルに対応する原バイト・ストリームと、新ファイルに対応する新バイト・ストリームとを含む、ステップと、
前記2つの受信したバイト・ストリームまたはそのサブストリーム間における最も長い共通サブストリング(LCS)を判定する手段と、
前記2つの受信したバイト・ストリームまたはそのサブストリームの各々をサブストリームに分割する手段であって、第1サブストリームが前記それぞれのLCSの接頭部であり、第2サブストリームが前記それぞれのLCSの接尾部である、手段と、
前記サブストリームのサイズが予め指定したサイズ未満となるまで、前記LCSを判定する手段及び前記サブストリームに分割する手段に前記サブストリームを供給する手段と、
前記原バイト・ストリームにおけるサブストリームと前記新バイト・ストリームにおける対応するサブストリームとの間でバイト・レベルの相違を判定する手段であって、前記原バイト・ストリームのサブストリームと前記新バイト・ストリームの対応するサブストリームと間の編集距離を計算することを含み、前記編集距離は、前記原バイト・ストリームのサブストリームから前記新バイト・ストリームの対応するサブストリームに変換する最小数の編集動作により表され、前記予め指定したサイズは、前記編集距離の計算に関係する、手段と、
計算した前記編集距離を表す前記編集動作の情報を含む動作アレイを生成する手段と、
前記動作アレイに含まれる編集動作を合併することにより前記動作アレイを最適化する手段と、
可変長整数フォーマットを用いて、前記最適化した動作アレイに含まれた前記編集動作の情報を含むデルタ・ファイルを生成する手段と、
を備えた装置。 - バイト・レベルのファイル相違検出および更新を実行するように構成された、第2のコンピュータ・システムで実現される装置であって、
第1のコンピュータ・システムに実現される請求項19記載の装置からのデルタ・ファイルを受ける手段と、
前記原ファイルと前記デルタ・ファイルを用いて、前記新ファイルのコピーを生成する手段と、
前記コピーを用いて前記原ファイルを更新する手段と、
を備えた装置。 - 実行可能命令を含むコンピュータ読み取り可能記憶媒体であって、処理システムにおいて実行されると、バイト・レベルのファイル相違検出を実行する方法を行い、前記方法が、
受けた2つのバイト・ストリームまたはそのサブストリーム間における最も長い共通サブストリング(LCS)を判定するステップであって、前記バイト・ストリームが、原ファイルに対応する原バイト・ストリームと、前記原ファイルの新ファイル・バージョンに対応する新バイト・ストリームとを含む、ステップと、
前記受けた2つのバイト・ストリームまたはそのサブストリームの各々をサブストリームに分割するステップであって、第1サブストリームが前記それぞれのLCSの接頭部であり、第2サブストリームが前記それぞれのLCSの接尾部である、ステップと、
前記サブストリームのサイズが予め指定したサイズ未満になるまで、前記LCSを判定するステップ及び前記のサブストリームに分割するステップを、前記サブストリームに対し繰り返すステップと、
前記原バイト・ストリームにおけるサブストリームと前記新バイト・ストリームにおける対応するサブストリームの各々の間でバイト・レベルの相違を判定するステップであって、前記原バイト・ストリームのサブストリームと前記新バイト・ストリームの対応するサブストリームとの間の編集距離を計算することを含み、前記編集距離は、前記原バイト・ストリームのサブストリームから前記新バイト・ストリームの対応するサブストリームに変換する最小数の編集動作により表され、前記予め指定したサイズは、前記編集距離の計算に関係する、ステップと、
前記計算した前記編集距離を表す前記編集動作の情報を含む動作アレイを生成するステップと、
可変長整数フォーマットを用いて、前記動作アレイに含まれた前記編集動作の情報を含むデルタ・ファイルを生成するステップと、
を含む、コンピュータ読み取り可能記憶媒体。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/146,545 US6925467B2 (en) | 2002-05-13 | 2002-05-13 | Byte-level file differencing and updating algorithms |
PCT/US2003/014903 WO2003096211A1 (en) | 2002-05-13 | 2003-05-12 | Byte-level file differencing and updating algorithms |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005525641A JP2005525641A (ja) | 2005-08-25 |
JP2005525641A5 JP2005525641A5 (ja) | 2009-09-03 |
JP4364790B2 true JP4364790B2 (ja) | 2009-11-18 |
Family
ID=29400475
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004504132A Expired - Fee Related JP4364790B2 (ja) | 2002-05-13 | 2003-05-12 | バイト・レベルのファイル相違検出および更新アルゴリズム |
Country Status (5)
Country | Link |
---|---|
US (2) | US6925467B2 (ja) |
EP (1) | EP1550047A4 (ja) |
JP (1) | JP4364790B2 (ja) |
AU (1) | AU2003241421A1 (ja) |
WO (1) | WO2003096211A1 (ja) |
Families Citing this family (151)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479189B2 (en) * | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
US7409685B2 (en) | 2002-04-12 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Initialization and update of software and/or firmware in electronic devices |
US20030182414A1 (en) | 2003-05-13 | 2003-09-25 | O'neill Patrick J. | System and method for updating and distributing information |
US6925467B2 (en) * | 2002-05-13 | 2005-08-02 | Innopath Software, Inc. | Byte-level file differencing and updating algorithms |
US7555750B1 (en) * | 2002-08-22 | 2009-06-30 | Hewlett-Packard Development Company, L.P. | Update package generator employing partial predictive mapping techniques for generating update packages for mobile handsets |
WO2004031961A1 (en) * | 2002-09-30 | 2004-04-15 | Insignia Solutions Plc | Efficient system and method for updating a memory device |
US7096311B2 (en) * | 2002-09-30 | 2006-08-22 | Innopath Software, Inc. | Updating electronic files using byte-level file differencing and updating algorithms |
US6836657B2 (en) * | 2002-11-12 | 2004-12-28 | Innopath Software, Inc. | Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade |
US7194728B1 (en) * | 2002-11-18 | 2007-03-20 | Bmc Software, Inc. | System and method for packaging updates |
US7984435B2 (en) * | 2002-11-13 | 2011-07-19 | Hewlett-Packard Development Company, L.P. | Update system employing reference software to reduce number of update packages |
US7320010B2 (en) * | 2002-11-18 | 2008-01-15 | Innopath Software, Inc. | Controlling updates of electronic files |
US20040098361A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Managing electronic file updates on client devices |
US7844734B2 (en) * | 2002-11-18 | 2010-11-30 | Innopath Software, Inc. | Dynamic addressing (DA) using a centralized DA manager |
US20040098421A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Scheduling updates of electronic files |
US7007049B2 (en) * | 2002-11-18 | 2006-02-28 | Innopath Software, Inc. | Device memory management during electronic file updating |
US7003534B2 (en) * | 2002-11-18 | 2006-02-21 | Innopath Software, Inc. | Generating difference files using module information of embedded software components |
US7099884B2 (en) * | 2002-12-06 | 2006-08-29 | Innopath Software | System and method for data compression and decompression |
US8356019B1 (en) * | 2002-12-11 | 2013-01-15 | Altera Corporation | Method and apparatus for utilizing patterns in data to reduce file size |
US7904432B2 (en) * | 2003-01-24 | 2011-03-08 | Hewlett-Packard Development Company, L.P. | Compressed data structure for extracted changes to a database and method of generating the data structure |
JP4153324B2 (ja) * | 2003-01-31 | 2008-09-24 | 松下電器産業株式会社 | 差分データ生成装置及び方法、更新後データ復元装置及び方法、並びにプログラム |
US20040230965A1 (en) * | 2003-02-28 | 2004-11-18 | Harri Okkonen | Mobile handset network that facilitates interaction between a generic intelligent responsive agent and a service broker server |
US7689981B1 (en) * | 2003-02-28 | 2010-03-30 | Hewlett-Packard Development Company, L.P. | Mobile handset with efficient interruption point detection during a multiple-pass update process |
US7320009B1 (en) | 2003-03-28 | 2008-01-15 | Novell, Inc. | Methods and systems for file replication utilizing differences between versions of files |
US7975147B1 (en) | 2003-03-31 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Electronic device network supporting enciphering and deciphering and update generation in electronic devices |
US7290251B2 (en) * | 2003-05-16 | 2007-10-30 | Microsoft Corporation | Method and system for providing a representation of merge conflicts in a three-way merge operation |
US7747994B1 (en) * | 2003-06-04 | 2010-06-29 | Hewlett-Packard Development Company, L.P. | Generator based on multiple instruction streams and minimum size instruction set for generating updates to mobile handset |
US7890464B2 (en) * | 2003-06-20 | 2011-02-15 | Innopath Software, Inc. | Processing software images and generating difference files |
US7089270B2 (en) * | 2003-06-20 | 2006-08-08 | Innopath Software | Processing software images for use in generating difference files |
EP2273361B1 (en) * | 2003-06-23 | 2012-09-19 | Red Bend Ltd. | Method and system for updating versions of content stored in a storage device |
WO2005003963A2 (en) * | 2003-07-07 | 2005-01-13 | Red Bend Ltd. | Method and system for updating versions of content stored in a storage device |
US7343443B1 (en) | 2003-07-08 | 2008-03-11 | Hewlett-Packard Development Company, L.P. | Updated package generation based on analysis of bank dependency |
US20050010870A1 (en) * | 2003-07-09 | 2005-01-13 | Jinsheng Gu | Post-processing algorithm for byte-level file differencing |
US20050010576A1 (en) * | 2003-07-09 | 2005-01-13 | Liwei Ren | File differencing and updating engines |
US7031972B2 (en) * | 2003-07-21 | 2006-04-18 | Innopath Software, Inc. | Algorithms for block-level code alignment of software binary files |
US20050020308A1 (en) * | 2003-07-23 | 2005-01-27 | David Lai | Dynamically binding Subscriber Identity Modules (SIMs)/User Identity Modules (UIMs) with portable communication devices |
US7886093B1 (en) | 2003-07-31 | 2011-02-08 | Hewlett-Packard Development Company, L.P. | Electronic device network supporting compression and decompression in electronic devices |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
WO2005039161A1 (en) * | 2003-10-14 | 2005-04-28 | Innopath Sofware, Inc. | Upgrading electronic files of a mobile device upgrade client |
CN1973262B (zh) * | 2003-10-23 | 2012-08-22 | 创道软件有限公司 | 使用集中动态寻址(da)管理器的动态寻址 |
US8135683B2 (en) * | 2003-12-16 | 2012-03-13 | International Business Machines Corporation | Method and apparatus for data redundancy elimination at the block level |
US7469262B2 (en) * | 2003-12-29 | 2008-12-23 | Oracle International Corporation | Customizable metadata merging framework |
KR100584448B1 (ko) * | 2004-01-19 | 2006-05-26 | 삼성전자주식회사 | 바이너리 위치정보를 이용한 임베디드 소프트웨어 원격다운로드방법 및 시스템 |
US7739679B2 (en) * | 2004-04-06 | 2010-06-15 | Hewlett-Packard Development Company, L.P. | Object ordering tool for facilitating generation of firmware update friendly binary image |
US7694291B2 (en) * | 2004-04-06 | 2010-04-06 | Hewlett-Packard Development Company, L.P. | Build optimizer tool for efficient management of software builds for mobile devices |
US7904895B1 (en) | 2004-04-21 | 2011-03-08 | Hewlett-Packard Develpment Company, L.P. | Firmware update in electronic devices employing update agent in a flash memory card |
US7730167B2 (en) * | 2004-04-30 | 2010-06-01 | Microsoft Corporation | Methods and systems for halting synchronization loops in a distributed system |
US7543118B1 (en) | 2004-05-07 | 2009-06-02 | Hewlett-Packard Development Company, L.P. | Multiple variance platform for the management of mobile devices |
EP1754322A4 (en) * | 2004-06-10 | 2012-03-07 | Samsung Electronics Co Ltd | DEVICE AND METHOD FOR EFFICIENTLY PRODUCING DELTA FILES FOR AIR RADIO UPGRADES IN A WIRELESS NETWORK |
US7673300B2 (en) * | 2004-06-10 | 2010-03-02 | Samsung Electronics Co., Ltd. | Segmented linker using spatial locality of reference for over-the-air software updates |
US7529779B2 (en) * | 2004-06-10 | 2009-05-05 | Samsung Electronics Co., Ltd. | Apparatus and method for efficient generation of delta files for over-the-air upgrades in a wireless network |
KR100849301B1 (ko) * | 2004-06-10 | 2008-07-29 | 삼성전자주식회사 | 무선 네트워크에서의 오버-더-에어 업그레이드용 델타파일의 효율적 생성 장치 및 방법 |
US7580959B2 (en) * | 2004-06-14 | 2009-08-25 | International Business Machines Corporation | Apparatus, system, and method for providing efficient disaster recovery storage of data using differencing |
US7484051B2 (en) * | 2004-06-14 | 2009-01-27 | International Business Machines Corporation | Apparatus, system and method for reliably updating a data group in a read-before-write data replication environment using a comparison file |
US7492953B2 (en) * | 2004-06-17 | 2009-02-17 | Smith Micro Software, Inc. | Efficient method and system for reducing update requirements for a compressed binary image |
US8526940B1 (en) | 2004-08-17 | 2013-09-03 | Palm, Inc. | Centralized rules repository for smart phone customer care |
US7516451B2 (en) * | 2004-08-31 | 2009-04-07 | Innopath Software, Inc. | Maintaining mobile device electronic files including using difference files when upgrading |
WO2006052904A2 (en) * | 2004-11-08 | 2006-05-18 | Innopath Software, Inc. | Updating compressed read-only memory file system (cramfs) images |
US7487169B2 (en) * | 2004-11-24 | 2009-02-03 | International Business Machines Corporation | Method for finding the longest common subsequences between files with applications to differential compression |
US20060117075A1 (en) * | 2004-12-01 | 2006-06-01 | International Business Machines Corporation | Prerequisite, dependent and atomic deltas |
US7756826B2 (en) * | 2006-06-30 | 2010-07-13 | Citrix Systems, Inc. | Method and systems for efficient delivery of previously stored content |
US8943304B2 (en) | 2006-08-03 | 2015-01-27 | Citrix Systems, Inc. | Systems and methods for using an HTTP-aware client agent |
US9692725B2 (en) | 2005-05-26 | 2017-06-27 | Citrix Systems, Inc. | Systems and methods for using an HTTP-aware client agent |
US9407608B2 (en) | 2005-05-26 | 2016-08-02 | Citrix Systems, Inc. | Systems and methods for enhanced client side policy |
US9621666B2 (en) | 2005-05-26 | 2017-04-11 | Citrix Systems, Inc. | Systems and methods for enhanced delta compression |
CA2928051C (en) | 2005-07-15 | 2018-07-24 | Indxit Systems, Inc. | Systems and methods for data indexing and processing |
US7783781B1 (en) | 2005-08-05 | 2010-08-24 | F5 Networks, Inc. | Adaptive compression |
CN1913441A (zh) * | 2005-08-09 | 2007-02-14 | 张永敏 | 连续变化数据集传输及更新方法 |
DE602005010858D1 (de) * | 2005-08-18 | 2008-12-18 | Ericsson Telefon Ab L M | Rückgekoppelter Linker for erhöhte Delta-Performanz |
WO2007023497A1 (en) * | 2005-08-23 | 2007-03-01 | Red Bend Ltd. | Method and system for in-place updating content stored in a storage device |
ATE486316T1 (de) * | 2005-08-30 | 2010-11-15 | Sony Ericsson Mobile Comm Ab | Verfahren und software für die optimierung der positionierung von software-funktionen in einem speicher |
US20070130232A1 (en) * | 2005-11-22 | 2007-06-07 | Therrien David G | Method and apparatus for efficiently storing and managing historical versions and replicas of computer data files |
US8275909B1 (en) * | 2005-12-07 | 2012-09-25 | F5 Networks, Inc. | Adaptive compression |
KR100717064B1 (ko) | 2006-03-03 | 2007-05-10 | 삼성전자주식회사 | 소프트웨어 업데이트 실행 방법 및 장치 |
US20070276912A1 (en) * | 2006-05-05 | 2007-11-29 | Mike Rybak | Apparatus and method for forming and communicating a responsive data message |
US8055096B2 (en) * | 2006-05-10 | 2011-11-08 | Research In Motion Limited | Method and system for incremental patching of binary files |
EP2025095A2 (en) | 2006-06-08 | 2009-02-18 | Hewlett-Packard Development Company, L.P. | Device management in a network |
US7783686B2 (en) * | 2006-06-16 | 2010-08-24 | Microsoft Corporation | Application program interface to manage media files |
US7603387B2 (en) * | 2006-06-16 | 2009-10-13 | Microsoft Corporation | Techniques to manage media files |
US7555480B2 (en) * | 2006-07-11 | 2009-06-30 | Microsoft Corporation | Comparatively crawling web page data records relative to a template |
US8296268B2 (en) * | 2006-07-21 | 2012-10-23 | Samsung Electronics Co., Ltd. | System and method for change logging in a firmware over the air development environment |
US8752044B2 (en) | 2006-07-27 | 2014-06-10 | Qualcomm Incorporated | User experience and dependency management in a mobile device |
EP1903437A3 (en) * | 2006-07-31 | 2008-10-22 | Seiko Epson Corporation | Update data transmission method, firmware writing system, and update data transmission program |
KR20080025957A (ko) * | 2006-09-19 | 2008-03-24 | 삼성전자주식회사 | 휴대용 단말기에서 소프트웨어를 업그레이드하기 위한 장치및 방법 |
US7769731B2 (en) * | 2006-10-04 | 2010-08-03 | International Business Machines Corporation | Using file backup software to generate an alert when a file modification policy is violated |
US8117609B2 (en) * | 2006-12-20 | 2012-02-14 | Omx Technology Ab | System and method for optimizing changes of data sets |
EP1962182A1 (en) * | 2007-02-23 | 2008-08-27 | Ingenico | Computer-implemented method and executable program for updating reference data |
US8166466B2 (en) * | 2007-06-22 | 2012-04-24 | Microsoft Corporation | Function matching in binaries |
US8630981B1 (en) * | 2007-12-21 | 2014-01-14 | Symantec Corporation | Techniques for differencing binary installation packages |
JP5111129B2 (ja) * | 2008-01-22 | 2012-12-26 | キヤノン株式会社 | 情報処理装置、情報処理システム、情報処理方法、及び、プログラム |
US8219595B2 (en) * | 2008-02-14 | 2012-07-10 | Hewlett-Packard Development Company, L.P. | System and method for efficient remote data access for server management |
US8078957B2 (en) * | 2008-05-02 | 2011-12-13 | Microsoft Corporation | Document synchronization over stateless protocols |
US20090287986A1 (en) * | 2008-05-14 | 2009-11-19 | Ab Initio Software Corporation | Managing storage of individually accessible data units |
US8832034B1 (en) | 2008-07-03 | 2014-09-09 | Riverbed Technology, Inc. | Space-efficient, revision-tolerant data de-duplication |
US8370309B1 (en) | 2008-07-03 | 2013-02-05 | Infineta Systems, Inc. | Revision-tolerant data de-duplication |
US8015220B1 (en) * | 2008-08-05 | 2011-09-06 | Smith Micro Software, Inc. | Block-based differencing algorithm |
US8346967B2 (en) * | 2008-08-08 | 2013-01-01 | International Business Machines Corporation | Management of redirection |
US8756664B2 (en) * | 2008-08-08 | 2014-06-17 | International Business Machines Corporation | Management of user authentication |
US8352442B2 (en) * | 2008-08-08 | 2013-01-08 | International Business Machines Corporation | Determination of an updated data source from disparate data sources |
US8078593B1 (en) | 2008-08-28 | 2011-12-13 | Infineta Systems, Inc. | Dictionary architecture and methodology for revision-tolerant data de-duplication |
US8468516B1 (en) * | 2008-12-19 | 2013-06-18 | Juniper Networks, Inc. | Creating hot patches for embedded systems |
US9104521B2 (en) * | 2009-03-16 | 2015-08-11 | Tyco Electronics Subsea Communications Llc | System and method for remote device application upgrades |
US8219526B2 (en) | 2009-06-05 | 2012-07-10 | Microsoft Corporation | Synchronizing file partitions utilizing a server storage model |
CN101930387A (zh) * | 2009-06-19 | 2010-12-29 | 上海惠普有限公司 | 用于更新压缩只读文件系统的改进的容错方法及装置 |
JP2013517565A (ja) * | 2010-01-12 | 2013-05-16 | グーグル インコーポレイテッド | オペレーティングシステム自動更新手順 |
US9292266B2 (en) * | 2010-04-30 | 2016-03-22 | Qualcomm Incorporate | Preprocessor for file updating |
US8555161B2 (en) * | 2010-05-27 | 2013-10-08 | Microsoft Corporation | Concurrent editing of a document by multiple clients |
US9652440B2 (en) | 2010-05-27 | 2017-05-16 | Microsoft Technology Licensing, Llc | Concurrent utilization of a document by multiple threads |
US8228216B2 (en) * | 2010-09-08 | 2012-07-24 | Hewlett-Packard Development Company, L.P. | Systems and methods for data compression |
WO2012033498A1 (en) * | 2010-09-10 | 2012-03-15 | Hewlett-Packard Development Company, L.P. | Systems and methods for data compression |
US8316034B2 (en) | 2010-10-20 | 2012-11-20 | International Business Machines Corporaion | Analyzing binary data streams to identify embedded record structures |
US20120131432A1 (en) * | 2010-11-24 | 2012-05-24 | Edward Wayne Goddard | Systems and methods for delta encoding, transmission and decoding of html forms |
US8666997B2 (en) | 2010-12-08 | 2014-03-04 | Microsoft Corporation | Placeholders returned for data representation items |
US8983907B2 (en) * | 2010-12-08 | 2015-03-17 | Microsoft Technology Licensing, Llc | Change notifications from an updated data representation |
US9069829B2 (en) | 2011-01-21 | 2015-06-30 | Microsoft Technology Licensing, Llc | Data items manager |
US8838533B2 (en) | 2011-05-20 | 2014-09-16 | Microsoft Corporation | Optimistic application of data edits |
US8589363B2 (en) * | 2011-07-19 | 2013-11-19 | Exagrid Systems, Inc. | Systems and methods for managing delta version chains |
CN102356394B (zh) * | 2011-08-23 | 2013-09-11 | 华为技术有限公司 | 文档更新方法和装置 |
CN102955816B (zh) * | 2011-08-30 | 2016-04-20 | 国际商业机器公司 | 利用串匹配进行数据同步的方法和系统 |
JP5696018B2 (ja) * | 2011-09-28 | 2015-04-08 | クラリオン株式会社 | 対象データの配置方法、対象データ配置システム、および、それらのサーバ装置、クライアント装置、プログラム |
US10191925B1 (en) * | 2011-10-27 | 2019-01-29 | Valve Corporation | Delivery of digital information to a remote device |
US9075693B2 (en) * | 2012-06-27 | 2015-07-07 | Google Inc. | Methods for updating applications |
US9275368B1 (en) * | 2012-09-25 | 2016-03-01 | Amazon Technologies, Inc. | Annotation mapping |
CN103051723B (zh) * | 2012-12-27 | 2016-08-31 | 广州市动景计算机科技有限公司 | 一种增量升级方法及服务器、终端 |
US20140208306A1 (en) * | 2013-01-23 | 2014-07-24 | Caterpillar Inc. | Control system having automatic component software management |
US9239874B1 (en) * | 2013-03-15 | 2016-01-19 | Emc Corporation | Integrated search for shared storage using index throttling to maintain quality of service |
US9256416B1 (en) * | 2013-03-28 | 2016-02-09 | Juniper Networks, Inc. | Methods and apparatus for automatic session validation for distributed access points |
TWI581629B (zh) * | 2014-08-07 | 2017-05-01 | A Method and System for Message Transmission without Marked Identification | |
US9785429B2 (en) | 2015-02-27 | 2017-10-10 | Lenovo (Singapore) Pte. Ltd. | Efficient deployment of thin client applications to end user |
US10860310B2 (en) | 2015-09-30 | 2020-12-08 | Apple Inc. | Software updating |
CN105589838B (zh) * | 2015-12-24 | 2018-06-12 | 中国电子科技集团公司第三十三研究所 | 一种基于文件比较的电子公文痕迹保留方法 |
US9430363B1 (en) * | 2015-12-28 | 2016-08-30 | International Business Machines Corporation | Creating expected test results using previous test results |
JP2018018240A (ja) * | 2016-07-27 | 2018-02-01 | 富士ゼロックス株式会社 | データ処理装置およびプログラム |
US10474446B2 (en) * | 2016-09-16 | 2019-11-12 | Bank Of America Corporation | Installation tool for adhering to enterprise requirements |
US20190163461A1 (en) * | 2017-11-29 | 2019-05-30 | Nutanix, Inc. | Upgrade managers for differential upgrade of distributed computing systems |
US10585664B2 (en) | 2017-12-21 | 2020-03-10 | International Business Machines Corporation | Span limited lexical analysis |
CN110244973B (zh) * | 2018-03-09 | 2022-09-16 | 阿里巴巴(中国)有限公司 | 数据更新包的生成方法、装置及数据更新方法、装置 |
CN108536657B (zh) * | 2018-04-10 | 2021-09-21 | 百融云创科技股份有限公司 | 人为填写的地址文本相似度处理方法和系统 |
US11556326B2 (en) * | 2018-09-06 | 2023-01-17 | Arm Limited | Methods for performing a rollback-capable software update at a device |
US10454497B1 (en) * | 2018-10-22 | 2019-10-22 | Dell Products L. P. | Reducing a size of multiple data sets |
CN109542495A (zh) * | 2018-11-12 | 2019-03-29 | 青岛海信电器股份有限公司 | 一种软件升级方法及装置 |
CN109684610B (zh) * | 2018-11-30 | 2023-06-16 | 东软集团股份有限公司 | 文本分块方法,装置,存储介质及电子设备 |
KR20200089490A (ko) | 2019-01-17 | 2020-07-27 | 삼성전자주식회사 | 펌웨어 업데이트 방법 및 이를 수행하는 장치 |
US11070618B2 (en) | 2019-01-30 | 2021-07-20 | Valve Corporation | Techniques for updating files |
US11886391B2 (en) | 2020-05-14 | 2024-01-30 | Valve Corporation | Efficient file-delivery techniques |
CN111600610B (zh) * | 2020-05-26 | 2023-04-28 | 北京思特奇信息技术股份有限公司 | 一种变长整数的通用编码方法、系统及电子设备 |
CN113805927A (zh) * | 2020-06-11 | 2021-12-17 | 中移(苏州)软件技术有限公司 | 一种代码更新方法、装置、电子设备及计算机存储介质 |
CN111782591B (zh) * | 2020-06-22 | 2023-05-16 | 北京计算机技术及应用研究所 | 一种计算文件相似哈希的方法 |
WO2022003418A1 (en) * | 2020-06-29 | 2022-01-06 | Aurora Labs Ltd. | Efficient controller data generation and extraction |
US11789708B2 (en) * | 2021-04-22 | 2023-10-17 | Silicon Laboratories Inc. | Compression of firmware updates |
US11494422B1 (en) * | 2022-06-28 | 2022-11-08 | Intuit Inc. | Field pre-fill systems and methods |
CN115291949B (zh) * | 2022-09-26 | 2022-12-20 | 中国人民解放军国防科技大学 | 一种面向计算流体力学的加速计算装置和加速计算方法 |
Family Cites Families (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4875159A (en) | 1987-12-22 | 1989-10-17 | Amdahl Corporation | Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system |
US5479654A (en) | 1990-04-26 | 1995-12-26 | Squibb Data Systems, Inc. | Apparatus and method for reconstructing a file from a difference signature and an original file |
US5444764A (en) | 1993-07-01 | 1995-08-22 | Motorola, Inc. | Method of providing a subscription lock to a radiotelephone system |
US5806078A (en) | 1994-06-09 | 1998-09-08 | Softool Corporation | Version management system |
US5742905A (en) | 1994-09-19 | 1998-04-21 | Bell Communications Research, Inc. | Personal communications internetworking |
US5574906A (en) | 1994-10-24 | 1996-11-12 | International Business Machines Corporation | System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing |
US5634052A (en) | 1994-10-24 | 1997-05-27 | International Business Machines Corporation | System for reducing storage requirements and transmission loads in a backup subsystem in client-server environment by transmitting only delta files from client to server |
US5485575A (en) * | 1994-11-21 | 1996-01-16 | International Business Machines Corporation | Automatic analysis of a computer virus structure and means of attachment to its hosts |
US5729735A (en) | 1995-02-08 | 1998-03-17 | Meyering; Samuel C. | Remote database file synchronizer |
US5729743A (en) | 1995-11-17 | 1998-03-17 | Deltatech Research, Inc. | Computer apparatus and method for merging system deltas |
US5864757A (en) | 1995-12-12 | 1999-01-26 | Bellsouth Corporation | Methods and apparatus for locking communications devices |
US5758062A (en) | 1996-04-30 | 1998-05-26 | Oracle Corporation | Method and apparatus for regression testing of application logic |
US5832520A (en) | 1996-07-03 | 1998-11-03 | Miller, Call, Plauck And Miller | Automatic file differencing and updating system |
US6308061B1 (en) | 1996-08-07 | 2001-10-23 | Telxon Corporation | Wireless software upgrades with version control |
US5850565A (en) | 1996-08-26 | 1998-12-15 | Novell, Inc. | Data compression method and apparatus |
US6374250B2 (en) * | 1997-02-03 | 2002-04-16 | International Business Machines Corporation | System and method for differential compression of data from a plurality of binary sources |
US5859565A (en) * | 1997-03-10 | 1999-01-12 | Reiffin; Martin | Cathode-follower high-fidelity power amplifier |
US5977889A (en) * | 1997-06-05 | 1999-11-02 | International Business Machines Corporation | Optimization of data representations for transmission of storage using differences from reference data |
EP1005674A4 (en) * | 1997-07-15 | 2002-03-13 | Pocket Soft Inc | SYSTEM FOR DETECTING DIFFERENCES BETWEEN TWO COMPUTER FILES AND UPDATING OF COMPUTER FILES |
WO1999012098A1 (en) | 1997-08-29 | 1999-03-11 | Hewlett-Packard Company | Data backup and recovery systems |
US6157924A (en) | 1997-11-07 | 2000-12-05 | Bell & Howell Mail Processing Systems Company | Systems, methods, and computer program products for delivering information in a preferred medium |
US6041333A (en) | 1997-11-14 | 2000-03-21 | Microsoft Corporation | Method and apparatus for automatically updating a data file from a network |
US6018747A (en) | 1997-11-26 | 2000-01-25 | International Business Machines Corporation | Method for generating and reconstructing in-place delta files |
US6076148A (en) | 1997-12-26 | 2000-06-13 | Emc Corporation | Mass storage subsystem and backup arrangement for digital data processing system which permits information to be backed up while host computer(s) continue(s) operating in connection with information stored on mass storage subsystem |
US6035423A (en) * | 1997-12-31 | 2000-03-07 | Network Associates, Inc. | Method and system for providing automated updating and upgrading of antivirus applications using a computer network |
KR100269322B1 (ko) * | 1998-01-16 | 2000-10-16 | 윤종용 | 스트레스용전압을이용하여메모리를테스팅하는기능을갖는집적회로및그의메모리테스트방법 |
US6078967A (en) | 1998-02-25 | 2000-06-20 | Hewlett-Packard Company | System for upgrading functionality of a peripheral device utilizing a removable ROM having relocatable object code |
US6052531A (en) * | 1998-03-25 | 2000-04-18 | Symantec Corporation | Multi-tiered incremental software updating |
US20010049263A1 (en) | 1998-03-26 | 2001-12-06 | Xiang Zhang | Automatic station/system configuration monitoring and error tracking system and software upgrade tool kit |
US6088694A (en) | 1998-03-31 | 2000-07-11 | International Business Machines Corporation | Continuous availability and efficient backup for externally referenced objects |
US6216175B1 (en) | 1998-06-08 | 2001-04-10 | Microsoft Corporation | Method for upgrading copies of an original file with same update data after normalizing differences between copies created during respective original installations |
US6233589B1 (en) * | 1998-07-31 | 2001-05-15 | Novell, Inc. | Method and system for reflecting differences between two files |
EP0981099A3 (en) | 1998-08-17 | 2004-04-21 | Connected Place Limited | A method of and an apparatus for merging a sequence of delta files |
US6167258A (en) | 1998-10-09 | 2000-12-26 | Cleveland Medical Devices Inc. | Programmable wireless data acquisition system |
US6145012A (en) | 1998-10-14 | 2000-11-07 | Veritas Software Corporation | Apparatus and method for efficiently updating files in computer networks |
US6226784B1 (en) | 1998-10-14 | 2001-05-01 | Mci Communications Corporation | Reliable and repeatable process for specifying developing distributing and monitoring a software system in a dynamic environment |
US6163811A (en) | 1998-10-21 | 2000-12-19 | Wildseed, Limited | Token based source file compression/decompression and its application |
US6457175B1 (en) | 1998-11-09 | 2002-09-24 | Tut Systems, Inc. | Method and apparatus for installing a software upgrade within a memory resource associated with a computer system |
US6327671B1 (en) | 1998-11-18 | 2001-12-04 | International Business Machines Corporation | Delta compressed asynchronous remote copy |
US6349311B1 (en) * | 1999-02-01 | 2002-02-19 | Symantec Corporation | Storage of reverse delta updates |
US6594822B1 (en) | 1999-02-19 | 2003-07-15 | Nortel Networks Limited | Method and apparatus for creating a software patch by comparing object files |
US6401239B1 (en) | 1999-03-22 | 2002-06-04 | B.I.S. Advanced Software Systems Ltd. | System and method for quick downloading of electronic files |
US6425125B1 (en) * | 1999-03-30 | 2002-07-23 | Microsoft Corporation | System and method for upgrading client software |
US6466999B1 (en) | 1999-03-31 | 2002-10-15 | Microsoft Corporation | Preprocessing a reference data stream for patch generation and compression |
US6574657B1 (en) | 1999-05-03 | 2003-06-03 | Symantec Corporation | Methods and apparatuses for file synchronization and updating using a signature list |
IL129947A (en) | 1999-05-13 | 2003-06-24 | Tadiran Telecom Business Syste | Method and apparatus for downloading software into an embedded system |
US6370197B1 (en) * | 1999-07-23 | 2002-04-09 | Memorylink Corporation | Video compression scheme using wavelets |
GB2354107B (en) * | 1999-09-01 | 2004-04-28 | Mitel Corp | Surface stabilization of silicon rich silica glass using increased post deposition delay |
US6629110B2 (en) | 2000-01-10 | 2003-09-30 | Connected Corporation | Administration of a differential backup system in a client-server environment |
US6694336B1 (en) | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
US6671757B1 (en) | 2000-01-26 | 2003-12-30 | Fusionone, Inc. | Data transfer and synchronization system |
CA2398838A1 (en) | 2000-03-01 | 2001-09-07 | Computer Associates Think, Inc. | Method and system for updating an archive of a computer file |
US6651190B1 (en) | 2000-03-14 | 2003-11-18 | A. Worley | Independent remote computer maintenance device |
US6662163B1 (en) | 2000-03-30 | 2003-12-09 | Voxware, Inc. | System and method for programming portable devices from a remote computer system |
US6898564B1 (en) | 2000-05-23 | 2005-05-24 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
US6535894B1 (en) * | 2000-06-01 | 2003-03-18 | Sun Microsystems, Inc. | Apparatus and method for incremental updating of archive files |
AU2001272970A1 (en) | 2000-06-22 | 2002-01-02 | Synchrologic, Inc. | A system and method for file transmission using file differentiation |
US6669564B1 (en) | 2000-06-27 | 2003-12-30 | Electronic Arts Inc. | Episodic delivery of content |
GB2369213B (en) | 2000-07-04 | 2005-02-23 | Honda Motor Co Ltd | Electronic file management system |
US6470329B1 (en) * | 2000-07-11 | 2002-10-22 | Sun Microsystems, Inc. | One-way hash functions for distributed data synchronization |
US20020120697A1 (en) | 2000-08-14 | 2002-08-29 | Curtis Generous | Multi-channel messaging system and method |
GB2381358A (en) | 2000-08-15 | 2003-04-30 | Seagate Technology Llc | Dual mode data compression for operating code |
US6754816B1 (en) | 2000-10-26 | 2004-06-22 | Dell Products L.P. | Scalable environmental data calculation method customized by system configuration |
US7058941B1 (en) | 2000-11-14 | 2006-06-06 | Microsoft Corporation | Minimum delta generator for program binaries |
KR100520058B1 (ko) | 2000-12-13 | 2005-10-11 | 삼성전자주식회사 | 디바이스드라이버 업그레이드 시스템 및 디바이스드라이버업그레이드 방법 |
US6954765B2 (en) | 2000-12-30 | 2005-10-11 | Intel Corporation | Updating a file in a fragmented file system |
US20020089436A1 (en) * | 2001-01-11 | 2002-07-11 | Shalom Yariv | Delta data compression and transport |
US20020099726A1 (en) | 2001-01-23 | 2002-07-25 | International Business Machines Corporation | Method and system for distribution of file updates |
US20020129107A1 (en) | 2001-03-12 | 2002-09-12 | Loughran Stephen A. | Method and apparatus for automatic content handling |
US6442660B1 (en) | 2001-03-21 | 2002-08-27 | Sharp Laboratories Of America, Inc. | Dynamic system relocation based on availability of system memory |
US6912591B2 (en) | 2001-05-02 | 2005-06-28 | Science Application International Corporation | System and method for patch enabled data transmissions |
EP1445888A4 (en) | 2001-10-12 | 2010-07-07 | Panasonic Corp | CONTENT PROCESSING APPARATUS AND CONTENT PROTECTION PROGRAM |
US7483970B2 (en) | 2001-12-12 | 2009-01-27 | Symantec Corporation | Method and apparatus for managing components in an IT system |
US7600021B2 (en) | 2002-04-03 | 2009-10-06 | Microsoft Corporation | Delta replication of source files and packages across networked resources |
US6904430B1 (en) * | 2002-04-26 | 2005-06-07 | Microsoft Corporation | Method and system for efficiently identifying differences between large files |
US6925467B2 (en) | 2002-05-13 | 2005-08-02 | Innopath Software, Inc. | Byte-level file differencing and updating algorithms |
US20040031027A1 (en) | 2002-08-08 | 2004-02-12 | Hiltgen Daniel K. | System for updating diverse file versions |
US6836657B2 (en) | 2002-11-12 | 2004-12-28 | Innopath Software, Inc. | Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade |
US7096311B2 (en) | 2002-09-30 | 2006-08-22 | Innopath Software, Inc. | Updating electronic files using byte-level file differencing and updating algorithms |
US20040098421A1 (en) | 2002-11-18 | 2004-05-20 | Luosheng Peng | Scheduling updates of electronic files |
US7003534B2 (en) | 2002-11-18 | 2006-02-21 | Innopath Software, Inc. | Generating difference files using module information of embedded software components |
US7007049B2 (en) | 2002-11-18 | 2006-02-28 | Innopath Software, Inc. | Device memory management during electronic file updating |
US7320010B2 (en) | 2002-11-18 | 2008-01-15 | Innopath Software, Inc. | Controlling updates of electronic files |
US20040098361A1 (en) | 2002-11-18 | 2004-05-20 | Luosheng Peng | Managing electronic file updates on client devices |
US7099884B2 (en) | 2002-12-06 | 2006-08-29 | Innopath Software | System and method for data compression and decompression |
US20040193643A1 (en) | 2003-03-27 | 2004-09-30 | O'brien John C. | Method and system for tracking contracts |
US20050010870A1 (en) | 2003-07-09 | 2005-01-13 | Jinsheng Gu | Post-processing algorithm for byte-level file differencing |
US20050010576A1 (en) | 2003-07-09 | 2005-01-13 | Liwei Ren | File differencing and updating engines |
US7379884B2 (en) | 2003-09-11 | 2008-05-27 | International Business Machines Corporation | Power on demand tiered response time pricing |
-
2002
- 2002-05-13 US US10/146,545 patent/US6925467B2/en not_active Expired - Lifetime
-
2003
- 2003-05-12 WO PCT/US2003/014903 patent/WO2003096211A1/en active Application Filing
- 2003-05-12 EP EP03731156A patent/EP1550047A4/en not_active Withdrawn
- 2003-05-12 AU AU2003241421A patent/AU2003241421A1/en not_active Abandoned
- 2003-05-12 JP JP2004504132A patent/JP4364790B2/ja not_active Expired - Fee Related
-
2005
- 2005-06-16 US US11/154,492 patent/US8156071B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1550047A1 (en) | 2005-07-06 |
US20050234997A1 (en) | 2005-10-20 |
US8156071B2 (en) | 2012-04-10 |
AU2003241421A1 (en) | 2003-11-11 |
EP1550047A4 (en) | 2009-07-15 |
US20030212712A1 (en) | 2003-11-13 |
US6925467B2 (en) | 2005-08-02 |
WO2003096211A1 (en) | 2003-11-20 |
JP2005525641A (ja) | 2005-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4364790B2 (ja) | バイト・レベルのファイル相違検出および更新アルゴリズム | |
US7539685B2 (en) | Index key normalization | |
US6233589B1 (en) | Method and system for reflecting differences between two files | |
JP5173427B2 (ja) | 圧縮リード・オンリ・メモリ・ファイル・システム(crmfs)イメージの更新 | |
CN105009067B (zh) | 管理对存储数据单元的操作 | |
US7661102B2 (en) | Method for reducing binary image update package sizes | |
US8120516B2 (en) | Data compression using a stream selector with edit-in-place capability for compressed data | |
US8117173B2 (en) | Efficient chunking algorithm | |
JP4796315B2 (ja) | 遠隔差分圧縮用の効率的アルゴリズムとプロトコル | |
US20050010870A1 (en) | Post-processing algorithm for byte-level file differencing | |
JP2005525641A5 (ja) | ||
JP2005044360A (ja) | データのパッケージ内デルタ圧縮(intra−packetdeltacompression)のためのシステムおよび方法 | |
US20130047145A1 (en) | Match analysis for encoding optimized update packages | |
US7647291B2 (en) | B-tree compression using normalized index keys | |
CN105027071A (zh) | 管理对存储数据单元的操作 | |
US7379940B1 (en) | Focal point compression method and apparatus | |
Burns et al. | In-place reconstruction of version differences | |
Shapira et al. | In place differential file compression | |
US11789708B2 (en) | Compression of firmware updates | |
US8244677B2 (en) | Focal point compression method and apparatus | |
Womack | Cigarcoil: A new algorithm for the compression of dna sequencing data | |
Shapira et al. | In-place differential file compression of nonaligned files with applications to file distribution, backups, and string similarity | |
FI115937B (fi) | Häviötön datan tiivistäminen ja purkaminen | |
CN116700739A (zh) | 差分升级方法、装置、电子设备及可读存储介质 | |
CN117170726A (zh) | 一种低资源的差分升级方法及嵌入式设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20060425 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090115 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090414 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090421 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20090713 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090806 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090819 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120828 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130828 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |