development/bsdiff: Fix README.

Signed-off-by: B. Watson <yalhcru@gmail.com>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2020-10-12 20:56:25 -04:00 committed by Willy Sudiarto Raharjo
parent 8d6e77d287
commit 3294fac462
No known key found for this signature in database
GPG key ID: 3F617144D7238786

View file

@ -1,24 +1,27 @@
bsdiff (binary diff/patch utility)
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).
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).
These programs were originally named bdiff and bpatch, but the large number of
other programs using those names lead to confusion; I'm not sure if the "bs"
in refers to "binary software" (because bsdiff produces exceptionally small
patches for executable files) or "bytewise subtraction" (which is the key to
how well it performs). Feel free to offer other suggestions.
These programs were originally named bdiff and bpatch, but
the large number of other programs using those names lead to
confusion; I'm not sure if the "bs" in refers to "binary software"
(because bsdiff produces exceptionally small patches for executable
files) or "bytewise subtraction" (which is the key to how well it
performs). Feel free to offer other suggestions.
bsdiff is quite memory-hungry. It requires max(17*n,9*n+m)+O(1) bytes of
memory, where n is the size of the old file and m is the size of the new
file. bspatch requires n+m+O(1) bytes.
bsdiff is quite memory-hungry. It requires max(17*n,9*n+m)+O(1) bytes
of memory, where n is the size of the old file and m is the size of
the new file. bspatch requires n+m+O(1) bytes.
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.
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.
Providing that off_t is defined properly, bsdiff and bspatch support files of
up to 2^61-1 = 2Ei-1 bytes.
Providing that off_t is defined properly, bsdiff and bspatch support
files of up to 2^61-1 = 2Ei-1 bytes.