×

Software patch generator using compression techniques

  • US 6,952,823 B2
  • Filed: 08/27/2001
  • Issued: 10/04/2005
  • Est. Priority Date: 09/01/1998
  • Status: Expired due to Term
First Claim
Patent Images

1. A method of generating a patch file from an old version of data consisting of a series of elements and a new version of data consisting of a series of elements where both the old and new versions of data are stored in a memory and accessible by a data processor, the method comprising the steps of:

  • establishing an alphabet comprising a plurality of letters for processing the old and new versions of data wherein a word consists of a series of elements represented by one or more letters of the alphabet;

    sorting the old version of data with the data processor alphabetically according to the established alphabet to create a first sorted list of words and maintaining a pointer for each element of the first sorted list of words indicating the element'"'"'s original location in the old version of data;

    sorting the new version of data with the data processor alphabetically according to the established alphabet to create a second sorted list of words and maintaining a pointer for each element of the second sorted list of words indicating the element'"'"'s original location in the new version of data;

    recursively comparing the first and second sorted lists of words one word at a time for a match of the words;

    upon finding a match of the words, searching the first and second sorted lists of words again to find the largest sequence of coinciding elements preceding and succeeding the match of words;

    storing the largest sequence of coinciding elements in a coincidences list;

    processing the coincidences list to remove duplicative coincidences, creating a refined list of coincidences;

    sorting the refined list of coincidences by pointer in the new version data, creating a sorted list of coincidences;

    adding the pointer of each coincidence in the new version data to the largest sequence of coinciding elements, creating an end block list;

    creating a patch file from the sorted coincidences list and the end block list; and

    compressing the patch file into a secure, portable compressed archive for distribution.

View all claims
  • 5 Assignments
Timeline View
Assignment View
    ×
    ×