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.
bsdiff bsdiff compares ⟨oldfile⟩ to ⟨newfile⟩ and writes to ⟨patchfile⟩ a binary patch suitable for use by bspatch(1). When ⟨oldfile⟩ and ⟨newfile⟩ are two versions of... bspatch bspatch generates ⟨newfile⟩ from ⟨oldfile⟩ and ⟨patchfile⟩ where ⟨patchfile⟩ is a binary patch built by bsdiff(1). bspatch uses memory equal to the size of...