a4cf452843
packages collection as misc/bsdiff. Bsdiff and bspatch are tools for building and applying patches to binary files. By using suffix sorting (specifically, Larsson and Sadakane's qsufsort) and taking advantage of how executable files change, bsdiff routinely produces binary patches 50-80% smaller than those produced by Xdelta, and 15% smaller than those produced by .RTPatch (a $2750/seat commercial patch tool).
11 lines
669 B
Text
11 lines
669 B
Text
Bsdiff and bspatch are tools for building and applying patches to binary
|
|
files. By using suffix sorting (specifically, Larsson and Sadakane's
|
|
qsufsort) and taking advantage of how executable files change, bsdiff
|
|
routinely produces binary patches 50-80% smaller than those produced by
|
|
Xdelta, and 15% smaller than those produced by .RTPatch (a $2750/seat
|
|
commercial patch tool).
|
|
|
|
If n is the size of the old file and m is the size of the new file, bsdiff
|
|
runs in O((n+m) log n) time; on a 200MHz Pentium Pro, building a binary
|
|
patch for a 4MB file takes about 90 seconds. bspatch runs in O(n+m) time;
|
|
on the same machine, applying that patch takes about two seconds.
|