JP2006506747A - 電子ファイル更新中におけるデバイス・メモリ管理 - Google Patents
電子ファイル更新中におけるデバイス・メモリ管理 Download PDFInfo
- Publication number
- JP2006506747A JP2006506747A JP2004553945A JP2004553945A JP2006506747A JP 2006506747 A JP2006506747 A JP 2006506747A JP 2004553945 A JP2004553945 A JP 2004553945A JP 2004553945 A JP2004553945 A JP 2004553945A JP 2006506747 A JP2006506747 A JP 2006506747A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- component
- electronic file
- file
- size
- 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.)
- Granted
Links
- 230000015654 memory Effects 0.000 title claims abstract description 506
- 230000006870 function Effects 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 claims description 72
- 238000007726 management method Methods 0.000 claims description 44
- 238000004891 communication Methods 0.000 claims description 26
- 230000004069 differentiation Effects 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 21
- 230000008878 coupling Effects 0.000 claims description 17
- 238000010168 coupling process Methods 0.000 claims description 17
- 238000005859 coupling reaction Methods 0.000 claims description 17
- 230000001413 cellular effect Effects 0.000 claims description 13
- 238000011156 evaluation Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 41
- 230000003068 static effect Effects 0.000 description 31
- 230000008569 process Effects 0.000 description 25
- 230000008859 change Effects 0.000 description 10
- 238000003860 storage Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012856 packing Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 229920000547 conjugated polymer Polymers 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000011982 device technology Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- 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
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99934—Query formulation, input preparation, or translation
-
- 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
-
- 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/99956—File allocation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
Description
本願は、以下の米国特許出願に関連がある。2002年5月13日に出願された出願番号第10/146,545号、2002年9月30日に出願された特許出願第10/261,153号、2002年11月12日に出願された特許出願第10/292,245号、2002年11月18日に出願された出願番号10/298,393号、2002年11月18日に出願された出願番号10/298,863号、2002年11月18日に出願された出願番号10/298,862号、および2002年11月18日に出願された出願番号第10/298,896号。これらの全ては、現在係属中である。
一実施形態のシステムの第1デバイスは、第2デバイス上に常駐するソフトウェアの少なくとも1つのプロバイダによってアクセス可能な、プロセッサに基づくデバイスを含む。
前述のホスト・デバイスにおけるデバイス・メモリ管理方法は、更に、ホスト・デバイスの主プログラムからの関数コールを受け、この関数コールが対応する電子ファイルの識別情報を含み、対応する電子ファイルの開始アドレスをベクトル・テーブルから読み出し、開始アドレスおよび識別情報を用いて、対応する電子ファイルに対するコールを発生することによって、ホスト・デバイスの電子ファイルによって与えられる機能にアクセスするステップを含む。
前述の電子ファイルの更新中におけるデバイス・メモリ管理のためのシステムおよび関連する方法は、新電子ファイルの少なくとも1つの新コンポーネントを受信する手段であって、新電子ファイルは、元の電子ファイルの更新バージョンである、手段と、第1および第2メモリ・エリアの順次探索を行うことによって、受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約する手段であって、未使用メモリ・ブロックを排除するように第1メモリ・エリアを書き換え、サイズが第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、第1および第2メモリ・エリアを再分配する、手段と、新コンポーネントを予約したメモリ・ブロックに書き込むことによって、元の電子ファイルを更新する手段と、新コンポーネントを、元の電子ファイルの対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込む場合、ベクトル・テーブルを更新する手段とを備えている装置を含む。
一実施形態の装置は、更に、デバイスの主プログラムから関数コールを受け取る手段であって、関数コールは、対応する電子ファイルの識別情報を含む、手段と、ベクトル・テーブルから対応する電子ファイルの開始アドレスを読み取る手段と、開始アドレスおよび識別情報を用いて、対応する電子ファイルに対するコールを発生する手段とを備えている。
前述の電子ファイルの更新中におけるデバイス・メモリ管理のためのシステムおよび関連する方法は、実行可能な命令を含むコンピュータ読み取り可能媒体を含み、処理システムにおいて実行すると、新電子ファイルの少なくとも1つの受信コンポーネントの識別情報を受信し、新電子ファイルは、元の電子ファイルの更新バージョンであり、識別情報は受信したコンポーネントのサイズを含み、第1および第2メモリ・エリアの順次探索を行うことによって、受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約し、未使用メモリ・ブロックを排除するように第1メモリ・エリアを書き換え、サイズが第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、第1および第2メモリ・エリアを再分配し、予約したメモリ・ブロックのアドレスを与え、受信したコンポーネントを予約メモリ・ブロックに書き込むことによって、元の電子ファイルを更新することによって電子ファイルおよびファイル・コンポーネントを更新する。
Claims (30)
- 電子ファイルの更新システムであって、
デルタ・ファイルを生成する、ファイル差別化および更新システムの第1コンポーネントを含む第1デバイスと、
前記第1デバイスから前記第1デルタ・ファイルを少なくとも1つの結合部を介して受け取る第2デバイスであって、前記ファイル差別化および更新システムの第2コンポーネントを含む第2デバイスと、
を備えており、前記システムは、
前記デルタ・ファイルから新電子ファイルの少なくとも1つの新コンポーネントを読み出し、前記新電子ファイルが、元の電子ファイルの更新バージョンであり、
第1および第2メモリ・エリアの順次探索を行うことにより、前記新コンポーネントを収容するのに十分大きいメモリ・ブロックを識別し予約し、未使用メモリ・ブロックを排除するために前記第1メモリ・エリアを書き換え、前記新コンポーネントのサイズが前記第1および第2メモリ・エリアの使用可能なメモリ・ブロックのサイズを超過するとき、前記第1および第2メモリ・エリアを再分配し、
前記新コンポーネントを予約したメモリ・ブロックに書き込み、
前記新コンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込んだときに、ベクトル・テーブルを更新する、
ことによって前記第2デバイスの電子ファイルを更新するように構成されており、
更に、前記システムは、
前記デバイスの主プログラムからの関数コールを受け、前記関数コールは対応する電子ファイルの識別情報を含み、
前記ベクトル・テーブルから前記対応する電子ファイルの開始アドレスを読み取り、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを生成することによって、
前記デバイスの電子ファイルにアクセスするように構成されている、システム。 - 請求項1記載のシステムにおいて、前記第2デバイスは、更に、電子ファイルを更新する際に用いるための第1および第2アプリケーション・プログラミング・インターフェース(API)を含む、システム。
- 請求項1記載のシステムにおいて、前記第2デバイスは、更に、電子ファイルにアクセスする際に用いるための第3アプリケーション・プログラミング・インターフェース(API)を含む、システム。
- 請求項1記載のシステムにおいて、前記第1デバイスは、前記第2デバイス上に常駐するソフトウェアの少なくとも1つのプロバイダによってアクセス可能な、プロセッサに基づくデバイスを含む、システム。
- 請求項1記載のシステムにおいて、前記第2デバイスは、パーソナル・コンピュータ、携帯用計算機、セルラ電話機、携帯用通信デバイス、およびパーソナル・ディジタル・アシスタントの中から選択した、少なくとも1つのプロセッサに基づくデバイスを含む、システム。
- 請求項1記載のシステムにおいて、前記少なくとも1つの結合部は、ワイヤレス結合部、ワイヤード結合部、混合ワイヤレス/ワイヤード結合部、およびローカル・エリア・ネットワーク(LAN)、都市区域ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、企業固有のネットワーク、バックエンド・ネットワーク、インターネットを含む少なくとも1つのネットワークとの結合部、ならびにフロッピ・ディスク、ハード・ディスク・ドライブ、およびCD−ROMディスクを含む着脱可能固定媒体、更に電話回線、バス、および電子メール・メッセージの中から選択する、システム。
- 請求項1記載のシステムにおいて、前記元のファイルおよび新ファイルは、ダイナミック・リンク・ライブラリ・ファイル、共有オブジェクト・ファイル、埋め込みソフトウェア・コンポーネント(EBSC)、ファームウェア・ファイル、実行可能ファイル、16進データ・ファイルを含むデータ・ファイル、システム・コンフィギュレーション・ファイル、および個人的使用データを含むファイルを含むソフトウェア・ファイルを含む、システム。
- ホスト・デバイスにおけるデバイス・メモリ管理方法であって、
新電子ファイルの少なくとも1つの受信コンポーネントの識別情報を受信するステップであって、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、前記識別情報は前記受信したコンポーネントのサイズを含む、ステップと、
第1および第2メモリ・エリアの順次探索を行うことによって、前記受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約するステップであって、未使用メモリ・ブロックを排除するように前記第1メモリ・エリアを書き換え、前記サイズが前記第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、前記第1および第2メモリ・エリアを再分配する、ステップと、
前記予約したメモリ・ブロックのアドレスを与えるステップと、
前記受信したコンポーネントを前記予約メモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新するステップと、
を備えた方法。 - 請求項8記載の方法であって、前記受信したコンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む前記第1メモリ・エリア内の元のメモリ・ブロック以外のメモリ・ブロックに書き込む場合、第1テーブルを更新するステップを含み、前記第1テーブルは、前記ホスト・デバイスの電子ファイルのコンポーネントのコンポーネント情報を含み、該コンポーネント情報は、コンポーネント識別、リード・オンリ・メモリ(ROM)番号、開始アドレス、およびサイズを含む、方法。
- 請求項8記載の方法において、識別および予約するステップは、前記元の電子ファイルの対応するコンポーネントのサイズよりも前記サイズが小さい場合、前記第1メモリ・エリアの元のメモリ・ブロックを予約することを含み、前記元のメモリ・ブロックは、前記元の電子ファイルの対応するコンポーネントを含む、方法。
- 請求項10記載の方法において、識別および予約するステップは、前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズを超過する場合、前記第2メモリ・エリアと前記第1メモリ・エリアの未使用部分との少なくとも一方を探索して、前記受信したコンポーネントを格納できる十分大きなメモリ・ブロックを求めることを含む、方法。
- 請求項8記載の方法において、前記第1メモリ・エリアの書き換えおよび前記第2メモリ・エリアの再分配のステップは、更に、
前記第1エリアの未使用メモリ・ブロックに対応する少なくとも1つのエントリを含む第2テーブルを読み取り、
前記第1メモリ・エリアのコンポーネントを順次パックし、前記未使用メモリ・ブロックを統合するために、前記第1メモリ・エリアのコンポーネントを書き換え、
前記第2メモリ・エリアの各コンポーネントのサイズを順次評価し、前記第2メモリ・エリアのコンポーネントを、前記第2メモリ・エリアの前記コンポーネントのサイズおよび前記統合した未使用メモリ・ブロックのサイズが許す、前記第1メモリ・エリアに再書き込みし、
前記順次評価および再書き込みに続いて、前記統合した未使用メモリ・ブロックの残りのブロックを識別し、
前記統合した未使用メモリ・ブロックの残りのブロックを、前記第2メモリ・エリアの一部として指定することによって、前記第2メモリ・エリアを再分配し、
前記再分配した第2メモリ・エリアの使用可能なメモリの開始アドレスを維持するために、前記第2メモリ・エリアのポインタを設定することを含む、方法。 - 請求項12記載の方法において、前記第2テーブルのエントリは、リード・オンリ・メモリ(ROM)番号、開始アドレス、およびサイズを含む前記未使用メモリ・ブロックの情報を含む、方法。
- 請求項8記載の方法であって、更に、
前記ホスト・デバイスの主プログラムからの関数コールを受け、該関数コールが対応する電子ファイルの識別情報を含み、
前記対応する電子ファイルの開始アドレスをベクトル・テーブルから読み出し、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを発生することによって、
前記ホスト・デバイスの電子ファイルによって与えられる機能にアクセスするステップを含む、方法。 - ファイル更新中におけるデバイス・メモリ管理方法であって、
受信コンポーネントの識別情報を用いて、新たな電子ファイルの少なくとも1つの受信コンポーネントのサイズを判定するステップであって、前記新たな電子ファイルが、元の電子ファイルの更新バージョンである、ステップと、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下である場合、前記受信コンポーネントを書き込む、第1メモリ・エリアの元のメモリ・ブロックを割り当て、前記元のメモリ・ブロックが前記元の電子ファイルの対応するコンポーネントを含む、ステップと、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズを超過する場合、第2メモリ・エリアと前記第1メモリ・エリアの未使用部分とを探索して、前記受信コンポーネントを格納できる十分に大きなメモリ・ブロックを求めるステップと、
前記サイズが前記第1および第2メモリ・エリアの使用可能なメモリ・ブロックのサイズを超過する場合、未使用部分を除去するように前記第1メモリ・エリアを書き換え、前記第1および第2メモリ・エリアを再分配し、前記受信コンポーネントを書き込む、前記第2メモリ・エリアのメモリ・ブロックを割り当てるステップと、
を備えた方法。 - 請求項15記載の方法において、前記第1メモリ・エリアの書き換えは、更に、
前記第1メモリ・エリアの未使用部分に対応する少なくとも1つのエントリを含むテーブルを読み込み、
前記第1メモリ・エリアのコンポーネントを順次パックし、前記未使用メモリ・ブロックを統合するために、前記第1メモリ・エリアのコンポーネントを書き直すことを含む、方法。 - 請求項15記載の方法において、前記第1および第2メモリ・エリアを再分配するステップは、更に、
前記第2メモリ・エリアの各コンポーネントのサイズを順次評価し、前記第2メモリ・エリアの前記コンポーネントのサイズおよび前記書き換えた第2メモリ・エリアの統合した未使用メモリ・ブロックのサイズが許すとき、前記第2メモリ・エリアのコンポーネントを前記書き換えた第1メモリ・エリアに書き込み、
前記順次評価および書き込みに続いて、前記統合した未使用メモリ・ブロックの残りのブロックを特定し、
前記統合した未使用メモリ・ブロックの残りのブロックを前記第2メモリ・エリアの一部として指定することにより、前記第1および第2メモリ・エリアを再分配し、
前記再分配した第2メモリ・エリアの使用可能なメモリの開始アドレスを維持するために、前記第2メモリ・エリアのポインタを設定し、
前記テーブルを評価すること、
を含む、方法。 - 電子デバイスのメモリを管理する方法であって、
新電子ファイルの少なくとも1つの新コンポーネントを受信し、該新電子ファイルは、元の電子ファイルの更新バージョンであり、
第1および第2メモリ・エリアの順次探索を行うことによって、前記受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約し、未使用メモリ・ブロックを排除するように前記第1メモリ・エリアを書き換え、前記サイズが前記第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、前記第1および第2メモリ・エリアを再分配し、
前記新コンポーネントを予約したメモリ・ブロックに書き込み、
前記新コンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込んだときに、ベクトル・テーブルを更新することによって、
前記デバイスの電子ファイルを更新するステップと、
前記デバイスの主プログラムからの関数コールを受け、前記関数コールは対応する電子ファイルの識別情報を含み、
前記ベクトル・テーブルから前記対応する電子ファイルの開始アドレスを読み取り、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを生成することによって、
前記デバイスの電子ファイルにアクセスするステップと、
を備えた方法。 - 請求項18記載の方法において、前記識別情報は、関数識別、および該関数に対する引数を含む、方法。
- 新電子ファイルの少なくとも1つの新コンポーネントを受信する手段であって、該新電子ファイルは、元の電子ファイルの更新バージョンである、手段と、
第1および第2メモリ・エリアの順次探索を行うことによって、前記受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約する手段であって、未使用メモリ・ブロックを排除するように前記第1メモリ・エリアを書き換え、前記サイズが前記第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、前記第1および第2メモリ・エリアを再分配する、手段と、
前記新コンポーネントを前記予約したメモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新する手段と、
前記新コンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・ブロック以外のメモリ・ブロックに書き込む場合、ベクトル・テーブルを更新する手段と、
を備えている装置。 - 請求項20記載の装置において、該装置は、パーソナル・コンピュータ、携帯用計算機、セルラ電話機、携帯用通信デバイス、およびパーソナル・ディジタル・アシスタントの中から選択した、少なくとも1つのプロセッサに基づくデバイスを含む、装置。
- 請求項20記載の装置において、前記メモリ・ブロックを識別し予約する手段は、第1アプリケーション・プログラミング・インターフェース(API)である、装置。
- 請求項20記載の装置であって、更に、
前記デバイスの主プログラムから関数コールを受け取る手段であって、該関数コールは、対応する電子ファイルの識別情報を含む、手段と、
前記ベクトル・テーブルから前記対応する電子ファイルの開始アドレスを読み取る手段と、
前記開始アドレスおよび前記識別情報を用いて、前記対応する電子ファイルに対するコールを発生する手段と、
を含む、装置。 - 請求項23記載の装置において、関数コールを受け取る前記手段は、第2アプリケーション・プログラミング・インターフェース(API)である、装置。
- 実行可能な命令を含むコンピュータ読み取り可能媒体であって、処理システムにおいて実行すると、
新電子ファイルの少なくとも1つの受信コンポーネントの識別情報を受信し、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、前記識別情報は前記受信したコンポーネントのサイズを含み、
第1および第2メモリ・エリアの順次探索を行うことによって、前記受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約し、未使用メモリ・ブロックを排除するように前記第1メモリ・エリアを書き換え、前記サイズが前記第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、前記第1および第2メモリ・エリアを再分配し、
前記予約したメモリ・ブロックのアドレスを与え、
前記受信したコンポーネントを前記予約メモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新する、
ことによって電子ファイルおよびファイル・コンポーネントを更新する、コンピュータ読み取り可能媒体。 - 実行可能な命令を含む電磁媒体であって、処理システムにおいて実行すると、
新電子ファイルの少なくとも1つの受信コンポーネントの識別情報を受信し、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、前記識別情報は前記受信したコンポーネントのサイズを含み、
第1および第2メモリ・エリアの順次探索を行うことによって、前記受信したコンポーネントを収容することができる十分大きなメモリ・ブロックを識別し予約し、未使用メモリ・ブロックを排除するように前記第1メモリ・エリアを書き換え、前記サイズが前記第1および第2メモリ・エリアの使用可能メモリ・ブロックのサイズを超過する場合、前記第1および第2メモリ・エリアを再分配し、
前記予約したメモリ・ブロックのアドレスを与え、
前記受信したコンポーネントを前記予約メモリ・ブロックに書き込むことによって、前記元の電子ファイルを更新する、
ことによって電子ファイルおよびファイル・コンポーネントを更新する、電磁媒体。 - 電子ファイルの更新システムであって、
デルタ・ファイルを生成する、ファイル差別化および更新システムの第1コンポーネントを含む第1デバイスと、
前記第1デバイスから前記第1デルタ・ファイルを少なくとも1つの結合部を介して受け取る第2デバイスであって、前記ファイル差別化および更新システムの第2コンポーネントを含む第2デバイスと、
を備えており、
前記デルタ・ファイルを通じて新電子ファイルの少なくとも1つのコンポーネントを受信し、前記新電子ファイルは、元の電子ファイルの更新バージョンであり、
前記受信したコンポーネントのサイズを判定し、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下である場合、前記受信したコンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・エリアに書き込み、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズを超過する場合、前記受信したコンポーネントを、前記元のメモリ・エリアと関連付けられた予約メモリ・エリアに書き込む、
ことにより前記第2デバイスの電子ファイルを更新するように構成されている、システム。 - 電子ファイルの更新方法であって、
新電子ファイルの少なくとも1つのコンポーネントを受信するステップであって、前記新電子ファイルは、元の電子ファイルの更新バージョンである、ステップと、
前記受信したコンポーネントのサイズを判定するステップと、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下である場合、前記受信したコンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・エリアに書き込むステップと、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズを超過する場合、前記受信したコンポーネントを、前記元のメモリ・エリアと関連付けられた予約メモリ・エリアに書き込むステップと、
を備えた方法。 - 請求項28記載の方法において、前記少なくとも1つの成分は、コンポーネントのグループを含む、方法。
- 新電子ファイルの少なくとも1つのコンポーネントを受信する手段であって、前記新電子ファイルは、元の電子ファイルの更新バージョンである、手段と、
前記受信したコンポーネントのサイズを判定する手段と、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズ以下である場合、前記受信したコンポーネントを、前記元の電子ファイルの対応するコンポーネントを含む元のメモリ・エリアに書き込む手段と、
前記サイズが前記元の電子ファイルの対応するコンポーネントのサイズを超過する場合、前記受信したコンポーネントを、前記元のメモリ・エリアと関連付けられた予約メモリ・エリアに書き込む手段と、
を備えている、装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/298,458 US7007049B2 (en) | 2002-11-18 | 2002-11-18 | Device memory management during electronic file updating |
PCT/US2003/037001 WO2004046910A1 (en) | 2002-11-18 | 2003-11-18 | Device memory management during electronic file updating |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2006506747A true JP2006506747A (ja) | 2006-02-23 |
JP2006506747A5 JP2006506747A5 (ja) | 2009-10-22 |
JP4409438B2 JP4409438B2 (ja) | 2010-02-03 |
Family
ID=32297458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004553945A Expired - Fee Related JP4409438B2 (ja) | 2002-11-18 | 2003-11-18 | 電子ファイル更新中におけるデバイス・メモリ管理 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7007049B2 (ja) |
EP (1) | EP1570340A4 (ja) |
JP (1) | JP4409438B2 (ja) |
KR (1) | KR20050086687A (ja) |
CN (1) | CN1781075B (ja) |
AU (1) | AU2003295668A1 (ja) |
WO (1) | WO2004046910A1 (ja) |
Families Citing this family (109)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US8479189B2 (en) | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
CN1650256B (zh) * | 2002-04-01 | 2010-04-28 | 株式会社Ntt都科摩 | 通信终端的软件更新方法、通信终端以及软件更新系统 |
US6925467B2 (en) * | 2002-05-13 | 2005-08-02 | Innopath Software, Inc. | Byte-level file differencing and updating algorithms |
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 |
US7003534B2 (en) * | 2002-11-18 | 2006-02-21 | Innopath Software, Inc. | Generating difference files using module information of embedded software components |
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 |
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 |
US7206910B2 (en) * | 2002-12-17 | 2007-04-17 | Oracle International Corporation | Delta object replication system and method for clustered system |
US7257873B2 (en) * | 2003-01-31 | 2007-08-21 | Laivins Kenneth T | Method for manufacturing hand guards |
US7320009B1 (en) * | 2003-03-28 | 2008-01-15 | Novell, Inc. | Methods and systems for file replication utilizing differences between versions of files |
JP4100241B2 (ja) * | 2003-04-24 | 2008-06-11 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
US7349929B2 (en) * | 2003-04-25 | 2008-03-25 | Sap Ag | Accessing data based on user identity |
US7757261B2 (en) * | 2003-06-20 | 2010-07-13 | N2 Broadband, Inc. | Systems and methods for providing flexible provisioning architectures for a host in a cable system |
US20040261092A1 (en) * | 2003-06-20 | 2004-12-23 | N2 Broadband, Inc. | Systems and methods for selling a consumer electronics host device and enhanced services associated with a cable system |
US7627868B2 (en) * | 2003-06-20 | 2009-12-01 | N2 Broadband, Inc. | Systems and methods for distributing software for a host device in a cable system |
US7089270B2 (en) * | 2003-06-20 | 2006-08-08 | Innopath Software | Processing software images for use in generating difference files |
US7958505B2 (en) * | 2003-06-20 | 2011-06-07 | Ericsson Television, Inc | Systems and methods for distributing software for a host device in a cable system |
US7194756B2 (en) * | 2003-06-20 | 2007-03-20 | N2 Broadband, Inc. | Systems and methods for provisioning a host device for enhanced services in a cable system |
GB2403303B (en) * | 2003-06-23 | 2005-08-17 | Matsushita Electric Ind Co Ltd | Embedded device with software registry |
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 |
US8555273B1 (en) | 2003-09-17 | 2013-10-08 | Palm. Inc. | Network for updating electronic devices |
KR100871778B1 (ko) * | 2003-10-23 | 2008-12-05 | 이노패스 소프트웨어, 아이엔시. | 중앙집중형 동적 어드레싱 매니저를 이용한 동적 어드레싱방법 및 장치 |
EP1530139A1 (en) * | 2003-11-05 | 2005-05-11 | Sap Ag | Method and computer system for workflow management |
US20050132357A1 (en) * | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Ensuring that a software update may be installed or run only on a specific device or class of devices |
US7614051B2 (en) * | 2003-12-16 | 2009-11-03 | Microsoft Corporation | Creating file systems within a file in a storage technology-abstracted manner |
US7568195B2 (en) * | 2003-12-16 | 2009-07-28 | Microsoft Corporation | Determining a maximal set of dependent software updates valid for installation |
US7549042B2 (en) * | 2003-12-16 | 2009-06-16 | Microsoft Corporation | Applying custom software image updates to non-volatile storage in a failsafe manner |
JP4408692B2 (ja) * | 2003-12-19 | 2010-02-03 | 富士通株式会社 | 通信装置管理プログラム |
US8838754B1 (en) * | 2004-01-26 | 2014-09-16 | Qualcomm Incorporated | Mobile device with a management forest in a device management network |
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 |
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 |
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 |
US7689982B1 (en) * | 2004-05-07 | 2010-03-30 | Hewlett-Packard Development Company, L.P. | Transparent linker profiler tool with profile database |
JP4176043B2 (ja) * | 2004-05-18 | 2008-11-05 | 三洋電機株式会社 | データ記録方法およびデータ記録装置 |
WO2005124530A2 (en) | 2004-06-21 | 2005-12-29 | Kabushiki Kaisha Toshiba | Method for controlling memory card and method for controlling nonvolatile semiconductor memory |
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 |
WO2006052946A2 (en) * | 2004-11-08 | 2006-05-18 | Innopath Software, Inc. | Static file system differencing and updating |
KR100653179B1 (ko) * | 2004-12-17 | 2006-12-04 | 한국전자통신연구원 | 플랫폼 동적 업그레이드 기능을 가지는 무선통신단말기 및그 방법 |
US7200390B1 (en) * | 2004-12-30 | 2007-04-03 | Cellco Partnership | Device software update transport and download |
US7483929B2 (en) * | 2005-02-08 | 2009-01-27 | Pro Softnet Corporation | Systems and methods for storing, backing up and recovering computer data files |
US8561049B2 (en) * | 2005-08-23 | 2013-10-15 | Red Bend Ltd. | Method and system for updating content stored in a storage device |
US20070078907A1 (en) * | 2005-10-05 | 2007-04-05 | Ming-Tsung Chiang | Method for updating function of handheld apparatus through plug-and play (PnP) storage device |
US8056072B2 (en) * | 2005-10-31 | 2011-11-08 | Microsoft Corporation | Rebootless display driver upgrades |
US8554748B1 (en) * | 2005-11-30 | 2013-10-08 | Netapp, Inc. | Method and apparatus for differential file based update for embedded systems |
KR100750169B1 (ko) * | 2006-03-08 | 2007-08-21 | 삼성전자주식회사 | 델타 파일 생성 방법 및 이를 이용한 소프트웨어 업데이트방법 |
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 |
KR101426710B1 (ko) * | 2006-07-14 | 2014-09-23 | 삼성전자주식회사 | 휴대단말기의 버전정보 갱신 장치 및 방법 |
US7788259B2 (en) * | 2006-07-21 | 2010-08-31 | Microsoft Corporation | Locating, viewing and interacting with information sources |
US8752044B2 (en) | 2006-07-27 | 2014-06-10 | Qualcomm Incorporated | User experience and dependency management in a mobile device |
WO2008025017A2 (en) | 2006-08-24 | 2008-02-28 | Chumby Industries, Inc. | Configurable personal audiovisual device for use in networked application-sharing system |
KR101273914B1 (ko) * | 2006-10-31 | 2013-06-12 | 에스케이플래닛 주식회사 | 플랫폼 라이브러리 다이나믹 링킹기능이구비된 단말장비 및 그 제어방법 |
US7769976B2 (en) * | 2006-12-12 | 2010-08-03 | International Business Machines Corporation | Identifying code that wastes virtual memory |
US7958331B2 (en) * | 2006-12-13 | 2011-06-07 | Seagate Technology Llc | Storage device with opportunistic address space |
US20080154986A1 (en) * | 2006-12-22 | 2008-06-26 | Storage Technology Corporation | System and Method for Compression of Data Objects in a Data Storage System |
KR100860753B1 (ko) * | 2007-01-03 | 2008-09-29 | 삼성전자주식회사 | 펌웨어 업그레이드를 위한 장치 및 방법 |
US9449047B2 (en) | 2007-06-19 | 2016-09-20 | Sybase, Inc. | Dynamic modification of schemas in streaming databases |
FR2918191B1 (fr) * | 2007-06-28 | 2010-02-26 | Wavecom | Procede de programmation in situ d'au moins un moyen de stockage non volatile d'un dispositif de communication sans fil, equipement de programmation et paquet a telecharger correspondants. |
EP2015561A1 (fr) * | 2007-07-10 | 2009-01-14 | Nagracard S.A. | Procédé d'envoi d'un code exécutable à un dispositif de réception et procédé d'exécution de ce code |
TWI344288B (en) * | 2007-07-23 | 2011-06-21 | Arcadyan Technology Corp | Embedded system with web-based user interface, firmware structure thereof, and method for providing information thereof |
US8745012B2 (en) * | 2007-08-10 | 2014-06-03 | Sybase, Inc. | Log-structured store for streaming data |
US8255899B2 (en) * | 2007-10-24 | 2012-08-28 | Oracle International Corporation | Techniques for upgrade dependency management |
JP2009271848A (ja) * | 2008-05-09 | 2009-11-19 | Fujitsu Microelectronics Ltd | ファイルシステム及びデータ管理方法 |
US20110161931A1 (en) * | 2009-12-31 | 2011-06-30 | International Business Machines Corporation | Automated stream-based change flows within a software configuration management system |
CN102129375B (zh) * | 2010-01-12 | 2014-07-02 | 中国移动通信集团公司 | 一种移动终端系统升级的方法和设备 |
US9176744B2 (en) * | 2011-05-20 | 2015-11-03 | Citrix Systems, Inc. | Quickly provisioning a virtual machine by identifying a path to a differential file during pre-boot |
CN102231671B (zh) * | 2011-06-01 | 2014-12-31 | 上海聚力传媒技术有限公司 | 用于对待升级对象进行升级的方法、装置、设备和系统 |
US9026718B2 (en) * | 2012-06-11 | 2015-05-05 | Samsung Electronics Co., Ltd. | Method and apparatus for fault tolerant FOTA update with single backup block write |
US8813061B2 (en) * | 2012-10-17 | 2014-08-19 | Movimento Group | Module updating device |
US9128798B2 (en) | 2012-10-17 | 2015-09-08 | Movimento Group | Module updating device |
US8949556B2 (en) | 2012-12-10 | 2015-02-03 | International Business Machines Corporation | Cloud management of device memory based on geographical location |
US20150215374A1 (en) * | 2013-03-13 | 2015-07-30 | Google Inc. | Delivering an update for a web application |
GB2516435A (en) * | 2013-04-05 | 2015-01-28 | Continental Automotive Systems | Embedded memory management scheme for real-time applications |
CN105378709A (zh) | 2013-04-18 | 2016-03-02 | 鲁斯兰·阿尔伯特维奇·施格布特蒂诺夫 | 由移动计算设备进行文件管理的系统和方法 |
CN103336703B (zh) * | 2013-07-08 | 2018-09-18 | 惠州Tcl移动通信有限公司 | 生成升级包的方法、服务器、软件升级方法、移动终端 |
US9639548B2 (en) * | 2013-10-28 | 2017-05-02 | Pivotal Software, Inc. | Selecting files for compaction |
US9639544B1 (en) * | 2013-10-28 | 2017-05-02 | Pivotal Software, Inc. | Table data persistence |
US10163179B2 (en) | 2015-03-27 | 2018-12-25 | Intel Corporation | Method and apparatus for intelligent cloud-based graphics updates |
CN104935469A (zh) * | 2015-06-30 | 2015-09-23 | 浪潮(北京)电子信息产业有限公司 | 一种日志信息分布式存储方法及系统 |
CN106708548A (zh) * | 2015-11-13 | 2017-05-24 | 阿里巴巴集团控股有限公司 | 程序升级方法和终端设备 |
CN105278998A (zh) * | 2015-11-17 | 2016-01-27 | 北京联合众为科技发展有限公司 | 一种单片机固件升级方法 |
JP6609199B2 (ja) * | 2016-03-01 | 2019-11-20 | ルネサスエレクトロニクス株式会社 | 組込み機器 |
US10309792B2 (en) | 2016-06-14 | 2019-06-04 | nuTonomy Inc. | Route planning for an autonomous vehicle |
US11092446B2 (en) | 2016-06-14 | 2021-08-17 | Motional Ad Llc | Route planning for an autonomous vehicle |
US10126136B2 (en) | 2016-06-14 | 2018-11-13 | nuTonomy Inc. | Route planning for an autonomous vehicle |
US10829116B2 (en) | 2016-07-01 | 2020-11-10 | nuTonomy Inc. | Affecting functions of a vehicle based on function-related information about its environment |
CN106250188B (zh) * | 2016-07-29 | 2019-08-23 | 捷开通讯(深圳)有限公司 | 一种系统固件映像文件的生成方法及系统 |
US10857994B2 (en) | 2016-10-20 | 2020-12-08 | Motional Ad Llc | Identifying a stopping place for an autonomous vehicle |
US10473470B2 (en) | 2016-10-20 | 2019-11-12 | nuTonomy Inc. | Identifying a stopping place for an autonomous vehicle |
US10331129B2 (en) | 2016-10-20 | 2019-06-25 | nuTonomy Inc. | Identifying a stopping place for an autonomous vehicle |
US10681513B2 (en) | 2016-10-20 | 2020-06-09 | nuTonomy Inc. | Identifying a stopping place for an autonomous vehicle |
CN111373367A (zh) * | 2017-09-07 | 2020-07-03 | 惠普发展公司,有限责任合伙企业 | 操作系统更新 |
CN110083381B (zh) * | 2018-01-26 | 2023-04-28 | 启碁科技股份有限公司 | 增量升级的方法及装置 |
CN111124465B (zh) * | 2019-11-28 | 2023-06-20 | 武汉虹信技术服务有限责任公司 | 一种跨网络c/s程序远程升级方法及系统 |
CN111045714B (zh) * | 2019-12-19 | 2022-03-01 | 歌尔股份有限公司 | 一种固件更新方法、装置、耳机及计算机可读存储介质 |
KR102337703B1 (ko) * | 2020-02-11 | 2021-12-13 | 한국조선해양 주식회사 | 용접기용 네트워크 카드를 포함한 디지털 용접기 |
CN111885412B (zh) * | 2020-07-06 | 2022-08-09 | 深圳市宝泽科技有限公司 | Hdmi信号传屏方法及无线传屏器 |
KR102448453B1 (ko) * | 2020-11-11 | 2022-09-28 | 주식회사 엘지유플러스 | 전자 디바이스 및 펌웨어 업데이트 방법 |
US11693643B2 (en) * | 2021-08-05 | 2023-07-04 | Accenture Global Solutions Limited | Network-based solution module deployment platform |
CN113867818B (zh) * | 2021-09-28 | 2024-04-16 | 潍柴动力股份有限公司 | 一种ini文件的生成方法、装置、计算机设备及介质 |
CN115878140A (zh) * | 2021-09-29 | 2023-03-31 | 华为技术有限公司 | 应用升级方法、装置、网卡和设备 |
Family Cites Families (85)
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 |
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 |
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 |
US5729735A (en) * | 1995-02-08 | 1998-03-17 | Meyering; Samuel C. | Remote database file synchronizer |
US5778426A (en) * | 1995-10-23 | 1998-07-07 | Symbios, Inc. | Methods and structure to maintain a two level cache in a RAID controller and thereby selecting a preferred posting method |
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 |
AU8397298A (en) | 1997-07-15 | 1999-02-10 | Pocket Soft, Inc. | System for finding differences between two computer files and updating the computer files |
EP1008048B1 (en) | 1997-08-29 | 2001-10-31 | 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 |
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 |
US6226728B1 (en) * | 1998-04-21 | 2001-05-01 | Intel Corporation | Dynamic allocation for efficient management of variable sized data within a nonvolatile memory |
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 |
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 |
US6145012A (en) * | 1998-10-14 | 2000-11-07 | Veritas Software Corporation | Apparatus and method for efficiently updating files in computer networks |
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 |
US6466999B1 (en) * | 1999-03-31 | 2002-10-15 | Microsoft Corporation | Preprocessing a reference data stream for patch generation and compression |
US6654746B1 (en) * | 1999-05-03 | 2003-11-25 | Symantec Corporation | Methods and apparatuses for single-connection file synchronization workgroup file update |
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 |
AU2001229332A1 (en) * | 2000-01-10 | 2001-07-24 | Connected Corporation | Administration of a differential backup system in a client-server environment |
US6671757B1 (en) | 2000-01-26 | 2003-12-30 | Fusionone, Inc. | Data transfer and synchronization system |
US6694336B1 (en) * | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
JP2003525495A (ja) | 2000-03-01 | 2003-08-26 | コンピュータ アソシエイツ シンク,インコーポレイテッド | コンピュータ・ファイルのアーカイブを更新する方法及びシステム |
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 |
US6775423B2 (en) | 2000-05-03 | 2004-08-10 | Microsoft Corporation | Systems and methods for incrementally updating an image in flash memory |
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 |
US6795834B2 (en) * | 2000-06-26 | 2004-09-21 | Fujitsu Limited | Apparatus, method, and storage medium for file management |
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 |
KR100602394B1 (ko) | 2000-08-15 | 2006-07-20 | 시게이트 테크놀로지 엘엘씨 | 동작 코드용 듀얼 모드 데이터 압축 방법 |
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 |
US20020099726A1 (en) * | 2001-01-23 | 2002-07-25 | International Business Machines Corporation | Method and system for distribution of file updates |
US6928456B2 (en) * | 2001-03-06 | 2005-08-09 | Intel Corporation | Method of tracking objects for application modifications |
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 |
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 |
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 |
US7320010B2 (en) * | 2002-11-18 | 2008-01-15 | Innopath Software, Inc. | Controlling updates of electronic files |
US20040098421A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Scheduling updates of electronic files |
US20040098361A1 (en) * | 2002-11-18 | 2004-05-20 | Luosheng Peng | Managing electronic file updates on client devices |
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 |
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-11-18 US US10/298,458 patent/US7007049B2/en not_active Expired - Lifetime
-
2003
- 2003-11-18 KR KR1020057008813A patent/KR20050086687A/ko not_active Application Discontinuation
- 2003-11-18 EP EP03786867A patent/EP1570340A4/en not_active Withdrawn
- 2003-11-18 AU AU2003295668A patent/AU2003295668A1/en not_active Abandoned
- 2003-11-18 JP JP2004553945A patent/JP4409438B2/ja not_active Expired - Fee Related
- 2003-11-18 WO PCT/US2003/037001 patent/WO2004046910A1/en active Application Filing
- 2003-11-18 CN CN2003801034768A patent/CN1781075B/zh not_active Expired - Fee Related
-
2005
- 2005-07-22 US US11/187,363 patent/US7779055B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1781075A (zh) | 2006-05-31 |
US7007049B2 (en) | 2006-02-28 |
WO2004046910A1 (en) | 2004-06-03 |
US7779055B2 (en) | 2010-08-17 |
EP1570340A1 (en) | 2005-09-07 |
US20040098427A1 (en) | 2004-05-20 |
AU2003295668A1 (en) | 2004-06-15 |
US20050257023A1 (en) | 2005-11-17 |
CN1781075B (zh) | 2010-09-01 |
JP4409438B2 (ja) | 2010-02-03 |
KR20050086687A (ko) | 2005-08-30 |
EP1570340A4 (en) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4409438B2 (ja) | 電子ファイル更新中におけるデバイス・メモリ管理 | |
US7096311B2 (en) | Updating electronic files using byte-level file differencing and updating algorithms | |
US7313577B2 (en) | Generating difference files using module information of embedded software components | |
KR100871778B1 (ko) | 중앙집중형 동적 어드레싱 매니저를 이용한 동적 어드레싱방법 및 장치 | |
US9092293B2 (en) | Method and system for selecting a program for download | |
US7844734B2 (en) | Dynamic addressing (DA) using a centralized DA manager | |
EP1669866A2 (en) | Management method for managing software module and information processor | |
KR20050089072A (ko) | 모바일 장치들 상의 라이브러리들을 공유하기 위한 방법 및장치 | |
KR101856486B1 (ko) | 컴퓨팅 디바이스에서 수행되는 오픈 시스템과 메인프레임 시스템 사이의 양방향 호출 방법 | |
US9392051B2 (en) | Application distribution supplying a dedicated application to a terminal from an application deposited by the developer | |
KR101432989B1 (ko) | 분리 실행 기반의 컨텐츠용 코드 블록 제공 시스템, 그 방법 및 그 방법이 기록된 컴퓨터로 판독 가능한 기록매체 | |
CN107797818A (zh) | 应用程序升级方法及装置 | |
CN106569880A (zh) | 一种Android应用间动态共享资源的方法及系统 | |
CN101411165B (zh) | 利用代理服务器控制嵌入式设备与外部的通信的方法和设备 | |
CN101382898B (zh) | Pre-os应用程序升级和许可控制 | |
WO2005074621A2 (en) | Dynamic addressing (da) using a centralized da manager | |
CN112379867B (zh) | 一种基于模块化开发的嵌入式操作系统、方法及存储介质 | |
CN116661844A (zh) | 配置文件处理方法、应用程序更新方法、装置、服务器 | |
KR20180116743A (ko) | 컴퓨팅 디바이스에서 수행되는 오픈 시스템과 메인프레임 시스템 사이의 양방향 호출 방법 | |
CN112445651A (zh) | 一种文件复制方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060523 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20060811 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090306 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090605 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090612 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090703 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090710 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090805 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090812 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20090907 |
|
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: 20091013 |
|
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: 20091111 |
|
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: 20121120 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131120 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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |