MATCH ANALYSIS FOR ENCODING OPTIMIZED UPDATE PACKAGES
First Claim
Patent Images
1. A machine-readable storage medium encoded with instructions executable by a processor of a computing device, the machine-readable storage medium comprising:
- instructions for receiving an updated executable file and a previous executable file;
instructions for determining a plurality of matches, each match representing a set of commands used to generate a portion of the updated executable file using the previous executable file;
instructions for comparing a matching with mismatches technique with a matching without mismatches technique for each of the plurality of matches;
instructions for selecting an optimal technique that provides a minimal cost for each respective match of the plurality of matches, wherein the optimal technique is either the matching with mismatches technique or the matching without mismatches technique;
instructions for encoding an optimized update package, the optimized update package applying the optimal technique selected for each respective match.
6 Assignments
0 Petitions
Accused Products
Abstract
Various embodiments relate to optimization of an update package by performing analysis of matches. In some embodiments, a mechanism is provided to receive an updated executable file and a previous executable file. In addition, a mechanism is provided to determine a plurality of matches, each match representing a set of commands used to generate a portion of the updated executable file using the previous executable file. Furthermore, a mechanism is provided to analyze the matches and, based on the analysis, encode an optimized update package.
-
Citations
15 Claims
-
1. A machine-readable storage medium encoded with instructions executable by a processor of a computing device, the machine-readable storage medium comprising:
-
instructions for receiving an updated executable file and a previous executable file; instructions for determining a plurality of matches, each match representing a set of commands used to generate a portion of the updated executable file using the previous executable file; instructions for comparing a matching with mismatches technique with a matching without mismatches technique for each of the plurality of matches; instructions for selecting an optimal technique that provides a minimal cost for each respective match of the plurality of matches, wherein the optimal technique is either the matching with mismatches technique or the matching without mismatches technique; instructions for encoding an optimized update package, the optimized update package applying the optimal technique selected for each respective match. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computing device comprising:
-
a processor; and a machine-readable storage medium encoded with instructions executable by the processor, the machine-readable storage medium comprising; instructions for receiving an updated executable file and a previous executable file, instructions for determining a plurality of matches, each match representing a set of commands used to generate a portion of the updated executable file using the previous executable file, wherein each match represents a combination of copy and set pointer commands, instructions for analyzing each match to determine an optimal number of set pointer commands that minimizes a cost of encoding the match, wherein the optimal number of set pointer commands is between zero and a number of set pointer commands included in the match, and instructions for encoding an optimized update package, the optimized update package including the optimal number of set pointer commands in each match. - View Dependent Claims (10, 11)
-
-
12. A method for minimizing a size of an update package, the method comprising:
-
determining a plurality of matches between an updated executable file and a previous executable file, each match representing a set of commands used to generate a portion of the updated executable file using the previous executable file, wherein the set of commands includes a copy command and zero or more set pointer commands; analyzing each match to determine a cost increment imposed by each set pointer commands in the match and a cost decrement obtained by avoiding duplication of bytes contained in the previous executable file; comparing the cost increment and the cost decrement for each match to determine whether to use the matching with mismatches technique or a matching without mismatches technique for the match; and encoding an optimized update package, the optimized update package using the determined technique for each match. - View Dependent Claims (13, 14, 15)
-
Specification