EP1754322A1 - Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil - Google Patents

Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil

Info

Publication number
EP1754322A1
EP1754322A1 EP05749346A EP05749346A EP1754322A1 EP 1754322 A1 EP1754322 A1 EP 1754322A1 EP 05749346 A EP05749346 A EP 05749346A EP 05749346 A EP05749346 A EP 05749346A EP 1754322 A1 EP1754322 A1 EP 1754322A1
Authority
EP
European Patent Office
Prior art keywords
file
delta
linker
binary file
segmented
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.)
Withdrawn
Application number
EP05749346A
Other languages
German (de)
English (en)
Other versions
EP1754322A4 (fr
Inventor
Sudhindra P. Herle
Vani Budhati
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US11/125,663 external-priority patent/US7673300B2/en
Priority claimed from US11/125,665 external-priority patent/US7529779B2/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of EP1754322A1 publication Critical patent/EP1754322A1/fr
Publication of EP1754322A4 publication Critical patent/EP1754322A4/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates

Definitions

  • the present invention relates generally to wireless communications and, more specifically, to technique for efficiently generating delta files for over-the-air upgrading of wireless mobile stations.
  • OTA over-the-air
  • PDAs wireless personal digital assistants
  • FOTA firmware over-the-air
  • OTA is a relatively new procedure that enables a mobile station user to download and install updated software containing patches, bug fixes, and newer versions of the software, including the operating system, stored in the wireless mobile station.
  • Software upgrades are usually delivered to a mobile station in the form of delta files.
  • a mobile station contains a copy of an original (or old) file and it is desired to replace the original file with an upgraded (or new) file.
  • many software programs and other files are quite large and delivering the entire upgraded file over the air is generally impractical, if not impossible.
  • OTA upgrade operations often use delta files.
  • Delta files are generated by detecting the differences between the original file and the upgraded file. The detected differences are then used to create the delta file, which contains data and instructions that can be used to convert the original file to the upgraded file.
  • the instructions in the delta file are executed and the data from the delta file is used to modify (or patch) the original file, thereby converting the original file to the upgraded file in the mobile station.
  • the advantage to this method is that the delta file is typically much smaller than either the original file or the upgraded file.
  • a popular delta generation algorithm proposed by Reichenberger, also known as the "greedy" algorithm is very good at generating delta files that are theoretically the minimum possible size.
  • the greedy algorithm is practically unusable for any file that is larger than 4 megabytes (4 Mb) in size, because of the time required to generate the delta file.
  • the greedy algorithm requires O(n 2 ) memory and runtime, where n is the combined length the old and new files. For large values of n, generating a delta file may require many hours or even days to complete.
  • Another popular delta generation algorithm is the xdelta introduced by Josh MacDonald.
  • the xdelta algorithm runs in linear time, but the delta file size is much larger than the greedy delta algorithm. This is a problem for wireless applications, because may wireless service providers impose restrictions on delta file sizes. Furthermore, the delta-apply software (i.e., the "patch client") that runs on the mobile station will have erratic Flash memory sector-write patterns. This results in increased patch-apply times. Wireless service providers generally also impose strict limits on patch-apply times (e.g., less than 10 minutes). An additional problem with erratic Flash memory sector-write operations is the resulting wear-and-tear on the physical Flash memory part. As is well known, Flash memories have limited erase-write cycles (e.g., approx 10,000).
  • xdelta instructions assume that reconstruction of the upgraded file from the original file does not happen in place.
  • the upgraded file is assumed to be separate and distinct from the old file.
  • the old file is deleted, leaving only the upgraded file.
  • a Flash memory size of twice the image file sized is needed.
  • the vcdiff algorithm proposed by Kiem Phong Vo is another linear time algorithm, similar to the xdelta algorithm.
  • the vcdiff algorithm suffers from drawbacks similar to the drawbacks affecting the xdelta algorithm.
  • the rsync algorithm introduced by Andrew Tridgell is designed to minimize the amount of traffic exchanged between the client and the server. However, it does not optimize anything else. Thus, its use in firmware over-the-air (FOTA) applications is very limited.
  • a linker takes object files and produces an executable file. More particularly, the linker takes one or more object files, libraries, and address details as input from a memory map input file and produces an output file suitable for execution.
  • the output executable is monolithic in nature. The output executable does not have a deterministic ordering of functions, variables, and the like. These details are left entirely up to the linker.
  • RW data read-write data
  • instruction sets such as the ARM microprocessor instruction set, branch instruction encoding, jump instruction encoding, and function call instruction encoding change when the address references for these instructions change.
  • branch instruction encoding branch instruction encoding
  • jump instruction encoding jump instruction encoding
  • function call instruction encoding change when the address references for these instructions change.
  • new software modules are added or deleted from a file (due to a bug fix, etc.)
  • the output executable will have changes to the jump, branch, and function call instructions.
  • These changes cascade into other modules due to intra-module references.
  • the cascading changes result in two binaries (an original binary file and an upgraded binary file) that are drastically different.
  • the present invention provides an improved algorithm for generating delta files in almost linear time from segments of the upgraded and original files.
  • the algorithm of the present invention scales very well for large input files.
  • the algorithm also exploits spatial locality of reference present in binary code (object code).
  • the present invention may be based on the greedy algorithm (or another delta algorithm) and runs in linear time and space.
  • the present invention also generates delta files that reduce the number of Flash memory write operations compared to other prior art algorithms.
  • the present invention also provides an improved linker that exploits spatial locality of reference in object code to generate better output executables.
  • the improved linker automatically reserves spaces between object code (i.e., modules, functions) in order to accommodate future software expansion.
  • the improved linker also analyzes previous output executables 9i.e., the original binary file) to preserve address assignment of functions and variables, thereby minimizing changes between two successive executable files.
  • the method comprises the steps of: 1) segmenting the original binary file into a first plurality of segments of size N; 2) segmenting the upgraded binary file into second plurality of segments of size N; 3) detecting a first set of differences between a first segment from the original binary file and a first segment from the upgraded binary file; and 4) generating a first delta file from the detected first set of differences.
  • the method further comprises the steps of: 4) detecting a second set of differences between a second segment from the original binary file and a second segment from the upgraded binary file; and 5) generating a second delta file from the detected second set of differences.
  • the method further comprises the step of combining the first delta file and the second delta file to form the composite delta file.
  • the method further comprises the step of transmitting the composite delta file to a target device containing a copy of the original file.
  • the method further comprises the steps of generating a data verification value from the first delta file and the second delta file and adding the data verification value to the composite delta file.
  • the data verification value comprises a cyclic redundancy check (CRC) value.
  • CRC cyclic redundancy check
  • the steps of generating the first delta file and generating the second delta file use the greedy algorithm for generating delta files.
  • the step of segmenting the original binary file comprises the sub-step of segmenting the original binary file based on a memory map input file associated with the target device.
  • the step of segmenting the upgraded binary file comprises the sub-step of segmenting the upgraded binary file based on the memory map input file associated with the target device.
  • the segmented linker receives as inputs a plurality of objects, the original binary file, and a memory map input file associated with a target device and wherein the segmented linker preserves in the upgraded binary file at least some of the spatial locality of reference of code in the original binary file.
  • the segmented linker further receives as an input a linker guideline file that defines the layout of objects having spatial locality of reference in the original binary file.
  • the segmented linker uses the linker guideline file to limit the propagation of cascading address references in the upgraded binary file.
  • the segmented linker uses the linker guideline file to preserve in the upgraded binary file the order of objects having spatial locality of reference in the original binary file.
  • the segmented linker uses the linker guideline file to reserve space between objects and modules in the upgraded binary file. According to a still further embodiment of the present invention, the segmented linker reserves space between objects and modules in the upgraded binary file based on the number of external functions and variables outside the address space of the modules and objects. According to a yet further embodiment of the present invention, the segmented linker reserves space between objects and modules in the upgraded binary file based on a programmer-supplied heuristic value.
  • the segmented linker uses information from the original binary file to preserve the address assignments of variables and functions in the upgraded binary file.
  • FIGURE 1 illustrates an exemplary wireless network in which a space efficient delta generation algorithm may be used to upgrade mobile stations according to the principles of the present invention
  • FIGURE 2 illustrates selected portions of an upgrade server according to the principles of the present invention
  • FIGURE 3 illustrates a composite delta file according to an exemplary embodiment of the present invention.
  • FIGURE 4 is a flow diagram illustrating the new algorithm for generating delta files according to the principles of the present invention.
  • FIGURES 1 through 4 discussed below, and the various embodiments used to describe the principles of the present invention in this patent document are by way of illustration only and should not be construed in any way to limit the scope of the invention. Those skilled in the art will understand that the principles of the present invention may be implemented in any suitably arranged wireless network.
  • FIGURE 1 illustrates exemplary wireless network 100, in which a space efficient delta generation algorithm may be used to upgrade mobile stations according to the principles of the present invention.
  • the present invention is executed in an upgrade server (not shown) coupled wireless network 100 by means of the Internet or a similar wide area IP network.
  • the upgrade server may be coupled to wireless network 100 by means of the public switched telephone network (PSTN).
  • PSTN public switched telephone network
  • Wireless network 100 comprises a plurality of cell sites 121-123, each containing one of the base stations, BS 101, BS 102, or BS 103.
  • Base stations 101-103 communicate with a plurality of mobile stations (MS) 111-114 over code division multiple access (CDMA) channels according to, for example, the IS-2000 standard (i.e., CDMA2000).
  • CDMA2000 code division multiple access
  • mobile stations 111-114 are capable of receiving data traffic and/or voice traffic on two or more CDMA channels simultaneously.
  • Mobile stations 111-114 may be any suitable wireless devices (e.g., conventional cell phones, PCS handsets, personal digital assistant (PDA) handsets, portable computers, telemetry devices) that are capable of communicating with base stations 101-103 via wireless links.
  • PDA personal digital assistant
  • the present invention is not limited to mobile devices.
  • the present invention also encompasses other types of wireless access terminals, including fixed wireless terminals.
  • fixed wireless terminals For the sake of simplicity, only mobile stations are shown and discussed hereafter. However, it should be understood that the use of the term "mobile station" in the claims and in the description below is intended to encompass both truly mobile devices (e.g., cell phones, wireless laptops) and stationary wireless terminals (e.g., a machine monitor with wireless capability).
  • Dotted lines show the approximate boundaries of cell sites 121-123 in which base stations 101-103 are located.
  • the cell sites are shown approximately circular for the purposes of illustration and explanation only. It should be clearly understood that the cell sites may have other irregular shapes, depending on the cell configuration selected and natural and man-made obstructions.
  • each of cell sites 121-123 is comprised of a plurality of sectors, where a directional antenna coupled to the base station illuminates each sector.
  • the embodiment of FIGURE 1 illustrates the base station in the center of the cell. Alternate embodiments may position the directional antennas in corners of the sectors.
  • the system of the present invention is not limited to any particular cell site configuration.
  • each of BS 101, BS 102 and BS 103 comprises a base station controller (BSC) and one or more base transceiver subsystem(s) (BTS). Base station controllers and base transceiver subsystems are well known to those skilled in the art.
  • a base station controller is a device that manages wireless communications resources, including the base transceiver subsystems, for specified cells within a wireless communications network.
  • a base transceiver subsystem comprises the RF transceivers, antennas, and other electrical equipment located in each cell site. This equipment may include air conditioning units, heating units, electrical supplies, telephone line interfaces and RF transmitters and RF receivers.
  • the base transceiver subsystems in each of cells 121, 122 and 123 and the base station controller associated with each base transceiver subsystem are collectively represented by BS 101, BS 102 and BS 103, respectively.
  • BS 101 , BS 102 and BS 103 transfer voice and data signals between each other and the public switched telephone network (PSTN) (not shown) via communication line 131 and mobile switching center (MSC) 140.
  • PSTN public switched telephone network
  • MSC mobile switching center
  • BS 101, BS 102 and BS 103 also transfer data signals, such as packet data, with the Internet (not shown) via communication line 131 and packet data server node (PDSN) 150.
  • Packet control function (PCF) unit 190 controls the flow of data packets between base stations 101-103 and PDSN 150.
  • PCF unit 190 maybe implemented as part of PDSN 150, as part of MSC 140, or as a stand-alone device that communicates with PDSN 150, as shown in FIGURE 1.
  • Line 131 also provides the connection path for control signals transmitted between MSC 140 andBS 101, BS 102 andBS 103 that establish connections for voice and data circuits between MSC 140 and BS 101, BS 102 and BS 103.
  • Communication line 131 may be any suitable connection means, including a Tl line, a T3 line, a fiber optic link, a network packet data backbone connection, or any other type of data connection.
  • Line 131 links each vocoder in the BSC with switch elements in MSC 140.
  • the connections on line 131 may transmit analog voice signals or digital voice signals in pulse code modulated (PCM) format, Internet Protocol (IP) format, asynchronous transfer mode (ATM) format, or the like.
  • PCM pulse code modulated
  • IP Internet Protocol
  • ATM asynchronous transfer mode
  • MSC 140 is a switching device that provides services and coordination between the subscribers in a wireless network and external networks, such as the PSTN or Internet. MSC 140 is well known to those skilled in the art. In some embodiments of the present invention, communications line 131 may be several different data links where each data link couples one of BS 101, BS 102, or BS 103 to MSC 140.
  • MS 111 is located in cell site 121 and is in communication with BS 101.
  • MS 113 is located in cell site 122 and is in communication with BS 102.
  • MS 114 is located in cell site 123 and is in communication with BS 103.
  • MS 112 is also located close to the edge of cell site 123 and is moving in the direction of cell site 123, as indicated by the direction arrow proximate MS 112. At some point, as MS 112 moves into cell site 123 and out of cell site 121, a hand-off will occur.
  • Mobile stations 111-114 are upgraded by means of an upgrade server (not shown) that generates delta files according to the principles of the present invention.
  • the space-efficient delta files are transferred from the upgrade server to base stations 101-103 and are then transmitted over-the-air to mobile stations 111-114.
  • FIGURE 2 illustrates selected portions of upgrade server 200 according to the principles of the present invention.
  • Upgrade server 200 comprises object files 205, linker guidelines 210, segmented linker 225, memory map input file 220, upgraded (or new) binary file 230, original (or old) binary file 235, segmented delta file generator 245, and composite delta ( ⁇ ) file 250.
  • Segmented linker 225 is an application program that takes object files 205, libraries and address details as inputs and generates an executable file, namely upgraded binary file 230.
  • segmented linker 225 may also use memory map input file 220 and linker guideline file 210 as additional inputs to produce executable upgraded binary file 230 based on spatial locality of reference in software.
  • segmented delta file generator 245 generates delta files in a time and space efficient manner by segmenting each one of upgraded binary file 230 and original upgrade file 235 into a plurality of segments. Segmented delta file generator 245 then generates a plurality of delta files from the corresponding segments from upgraded binary file 230 and original upgrade file 235. Segmented delta file generator 245 then combines the plurality of delta files thus produced into composite delta file 250 (or macro-delta file 250), which is transmitted to mobile stations 111-114. In order to accomplish the foregoing, segmented delta file generator 245 uses memory map input file 220 as an input in order to determine how to segment the delta files.
  • Memory map input file 220 is commonly used by a linker program, such as segmented linker 215, to generate an executable file from object files.
  • Memory map input file 220 defines how the memory space of a target device (in this case, a mobile station) is utilized.
  • memory map input file 220 defines the address space of Flash memory and random access memory (RAM) in mobile station 111 and defines, for example, the locations of data files, programs, boot ROM, free space, and stack boundaries.
  • RAM random access memory
  • segmented delta file generator 245 also uses memory map input file 220 to produce segmented delta files according to the principles of the present invention.
  • the segmented delta files may then be combined into a composite delta file (or macro-delta file) and a cyclic redundancy check (CRC) field may be added to verify the data contained in the composite delta file.
  • CRC cyclic redundancy check
  • segmenting the upgraded and original files and then generating segmented delta files requires much less processing time than generating a single delta file directly from the entire upgraded and original files.
  • the trade-off of the present invention is that the composite delta files produced by the present invention are somewhat larger than the minimum sized delta file produced by a conventional greedy algorithm operating on the full-sized upgraded and original files.
  • FIGURE 3 illustrates exemplary composite delta file 250 according to an exemplary embodiment of the present invention.
  • Composite delta file 250 comprises individual delta files 311-316 and CRC field 316. Each one of delta files 311-316 is produced from one segment of upgraded binary file 230 and one segment from original binary file 235. After segmented delta file generator 245 generates delta files 311-316, segmented delta file generator 245 calculates a CRC value across all of delta files 311-316 and appends the calculated CRC value to delta files 311-316 in CRC field 317. Composite delta file 250 is then transmitted to mobile stations 111-114.
  • FIGURE 4 depicts flow diagram 400, which illustrates the new algorithm for generating delta files according to the principles of the present invention.
  • segmented delta file generator 245 divides original (old) binary file 235 and upgraded (new) binary file 230 into segments of size N (process step 405).
  • segmented delta file generator 245 determines the value of N according to the Flash sector sizes of the memory in mobile stations 111-114.
  • Segmented delta file generator 245 determines the Flash sector size according to the information in memory map input file 220.
  • segmented delta file generator 245 runs a conventional delta generation algorithm, such as the greedy algorithm, to compute delta instructions and data for each segment (process step 410). Segmented delta file generator 245 removes write conflicts in the delta instructions, so that the delta file can be applied in-place on the target mobile station (process step 415). Next, segmented delta file generator 245 encodes the delta file instructions and data (process step 420). S segmented delta file generator 245 repeats process steps 410, 415 and 420 until all segments of original binary file 235 and upgraded binary file 230 are processed (process step 425).
  • a conventional delta generation algorithm such as the greedy algorithm
  • the present invention exploit spatial coherence in original binary file 235 and upgraded binary file 230, since blocks of code often are mostly identical at the same offsets in two related binary files. In other words, two comparable versions of the same software normally exhibit a high degree of similarity at similar offsets in code.
  • the present invention may calculate deltas by applying the well-known "greedy algorithm” (by Reichenberger). Other well-known algorithms may be used.
  • the present invention provides improvements over the greedy algorithm while still retaining much of the theoretically optimal delta file size benefits. By doing COPY and ADD delta instructions together at the end of each segment, the number of flash write operations is minimized. Conventional delta patch algorithms require a two-pass approach to handle COPY and ADD instructions separately. Since the present invention has almost linear resource requirements (memory and time), large binaries (i.e., >4MB) run in a deterministic amount of time.
  • segmented delta file generator 245 The quality of the delta files produce by segmented delta file generator 245 is further improved by the use of a segmented linker (or a smart linker) according to the principles of the present invention.
  • the present invention adds additional intelligence to segmented link 215 to preserve spatial locality of reference between original binary file 235 and upgraded binary file 230. This is done primarily to limit the propagation of cascading address references.
  • segmented linker 215 also receives linker guideline file 210 as an additional input.
  • linker guideline file 210 comprises a script describing the layout of objects that have spatial locality of reference. Segmented linker 215 uses the linker guideline file 210 to preserve the order specified by the software programmer.
  • segmented linker 215 uses linker guideline file 210 to reserve spaces between objects and modules (including functions). These reserved spaces may be referred to as "holes". Segmented linker 215 calculates the reserved space based on the amount of non-local symbol references, namely the number of external functions and variables that are outside the module (or object code). Only segmented linker 215 has knowledge of the number and type of non-local references. Thus, segmented linker 215 exploits this information to produce a better output executable file (i.e., upgraded binary file 230). The amount of reserved space (or holes) can also be modified by a programmer-supplied heuristic that accommodates future changes to those functions/object files.
  • Segmented linker 215 also examines the previous output executable (i.e., original binary file 235) in order to preserve the same address assignments to variables and functions. This further reduces cascading changes.
  • segmented linker 215 produces a binary output file (i.e., upgraded binary file 230) that is ideally suited for FOTA applications, because differences between two successive executables, such as upgraded binary file 230 and original binary file 235, will tend to be relatively small.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Procédé de génération d'un fichier delta composite en fonction des différences entre un fichier original et un fichier mis à niveau. Le procédé consiste à : 1) segmenter le fichier binaire original en segments de taille N ; 2) segmenter le fichier binaire mis a niveau en segments de taille N ; 3) détecter un premier ensemble de différences entre un premier segment du fichier binaire original et un premier segment du fichier binaire mis à niveau ; et 4) générer un premier fichier delta à partir du premier ensemble de différences. Le procédé consiste également à : 4) détecter un second ensemble de différences entre un second segment du fichier binaire original et un second segment du fichier binaire mis à niveau; et 5) générer un second fichier delta à partir du second ensemble de différences détecté. Les premier et second fichiers delta sont combinés pour former le fichier delta combiné.
EP05749346A 2004-06-10 2005-06-10 Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil Withdrawn EP1754322A4 (fr)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US57868504P 2004-06-10 2004-06-10
US57868404P 2004-06-10 2004-06-10
US11/125,663 US7673300B2 (en) 2004-06-10 2005-05-10 Segmented linker using spatial locality of reference for over-the-air software updates
US11/125,665 US7529779B2 (en) 2004-06-10 2005-05-10 Apparatus and method for efficient generation of delta files for over-the-air upgrades in a wireless network
PCT/KR2005/001760 WO2005122439A1 (fr) 2004-06-10 2005-06-10 Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil

Publications (2)

Publication Number Publication Date
EP1754322A1 true EP1754322A1 (fr) 2007-02-21
EP1754322A4 EP1754322A4 (fr) 2012-03-07

Family

ID=35503449

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05749346A Withdrawn EP1754322A4 (fr) 2004-06-10 2005-06-10 Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil

Country Status (2)

Country Link
EP (1) EP1754322A4 (fr)
WO (1) WO2005122439A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019021064A1 (fr) 2017-07-25 2019-01-31 Aurora Labs Ltd Construction de mises à jour delta de logiciel pour un logiciel ecu de véhicule et détection d'anomalie basée sur une chaîne d'outils
GB2602842B (en) * 2021-01-19 2023-10-18 Arm Cloud Tech Inc Method of encoding a software image for a delta update of executable code

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP0981090A1 (fr) * 1998-08-17 2000-02-23 Connected Place Limited Méthode pour créer un point de contrôle pour la description d'un fichier de base et méthode pour créer un fichier de différence entre un fichier mis à jour et un fichier de base
US20020010702A1 (en) * 1997-02-03 2002-01-24 Miklos Ajtai System and method for differential compression of data from a plurality of binary sources
WO2003052622A2 (fr) * 2001-12-17 2003-06-26 Workshare Technology, Ltd. Procede et systeme de gestion conjointe de documents
WO2003096211A1 (fr) * 2002-05-13 2003-11-20 Innopath Software, Inc. Algorithmes de differenciation et d'actualisation de fichiers au niveau octet

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001098951A1 (fr) * 2000-06-22 2001-12-27 Synchrologic, Inc. Systeme et procede de transmission de fichiers bases sur la differenciation des fichiers
US7149508B2 (en) * 2003-02-05 2006-12-12 Samsung Electronics Co., Ltd. System and method for delta-based over-the-air software upgrades for a wireless mobile station

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US20020010702A1 (en) * 1997-02-03 2002-01-24 Miklos Ajtai System and method for differential compression of data from a plurality of binary sources
EP0981090A1 (fr) * 1998-08-17 2000-02-23 Connected Place Limited Méthode pour créer un point de contrôle pour la description d'un fichier de base et méthode pour créer un fichier de différence entre un fichier mis à jour et un fichier de base
WO2003052622A2 (fr) * 2001-12-17 2003-06-26 Workshare Technology, Ltd. Procede et systeme de gestion conjointe de documents
WO2003096211A1 (fr) * 2002-05-13 2003-11-20 Innopath Software, Inc. Algorithmes de differenciation et d'actualisation de fichiers au niveau octet

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
See also references of WO2005122439A1 *
SHAPIRA D ET AL: "In-place differential file compression of non-aligned files with applications to file distribution, backups, and string similarity", DATA COMPRESSION CONFERENCE, 2004. PROCEEDINGS. DCC 2004 SNOWBIRD, UT, USA MARCH 23-25, 2004, PISCATAWAY, NJ, USA,IEEE, 23 March 2004 (2004-03-23), pages 82-91, XP010692178, DOI: 10.1109/DCC.2004.1281453 ISBN: 978-0-7695-2082-7 *

Also Published As

Publication number Publication date
WO2005122439A1 (fr) 2005-12-22
EP1754322A4 (fr) 2012-03-07

Similar Documents

Publication Publication Date Title
US7529779B2 (en) Apparatus and method for efficient generation of delta files for over-the-air upgrades in a wireless network
US7673300B2 (en) Segmented linker using spatial locality of reference for over-the-air software updates
US8255892B2 (en) Flash memory programming
US8572597B2 (en) Apparatus and method for performing an over-the-air software update in a dual processor mobile station
KR100663538B1 (ko) 무선 단말에 있어서 델타 파일에 따른 무선(ota)소프트웨어 업그레이드 시스템 및 방법
KR100566224B1 (ko) 무선 이동 단말기의 소프트웨어를 업그레이드하기 위한장치 및 방법
US7007049B2 (en) Device memory management during electronic file updating
US7096311B2 (en) Updating electronic files using byte-level file differencing and updating algorithms
US7150012B2 (en) Method and apparatus for accelerating program execution in platform-independent virtual machines
CN105100191A (zh) 一种云编译实现Java应用安装的方法、装置及系统
KR20040053781A (ko) 무선 단말기의 소프트웨어 콤포넌트 다운로드 관리장치와그 동작 방법
Panta et al. Efficient incremental code update for sensor networks
CN101026826B (zh) 用于提供在无线装置中使用的整体映像的系统和方法
EP1956482B1 (fr) Génération de mises à jour delta pour dispositif de traitement
CN101002406A (zh) 高效生成用于无线网络中的空中下载升级的增量文件的装置和方法
EP1755039B1 (fr) Generateur de liens avec feedback pour produire de meilleurs deltas
KR20150005164A (ko) Fota 시스템 및 그 실행 방법
US20060184924A1 (en) Intelligent platform management interface firmware architecture and method of building the same
KR100849301B1 (ko) 무선 네트워크에서의 오버-더-에어 업그레이드용 델타파일의 효율적 생성 장치 및 방법
CN111158751A (zh) 一种Windows环境部署方法、电子设备及存储介质
EP1754322A1 (fr) Appareil et procede de generation efficace de fichiers delta pour mises a niveau par voie aerienne dans un reseau sans fil
CN113157329A (zh) 启动应用的方法、系统、服务器和存储介质
US20100142480A1 (en) Method of seamless vertical handover for sdr terminal and sca based sdr terminal for the same
Kiyohara et al. Study on binary code synchronization in consumer devices
CN117806689A (zh) 嵌入式设备的系统升级方法、系统、存储介质及电子设备

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20061129

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB

DAX Request for extension of the european patent (deleted)
RBV Designated contracting states (corrected)

Designated state(s): DE FR GB

A4 Supplementary search report drawn up and despatched

Effective date: 20120208

RIC1 Information provided on ipc code assigned before grant

Ipc: H04W 24/02 20090101AFI20120203BHEP

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: SAMSUNG ELECTRONICS CO., LTD.

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20120509