Minimum delta generator for program binaries

   
   

Implementations of this invention provide a technology for generating a minimum delta between at least two program binaries. An implementation of this invention is given a source program (S) in a binary format and a target program (T) in a binary form. It constructs control flow graphs (CFGs) of each. It matches common blocks of the S's CFGs and T's CFGs. The blocks are matched based upon their content and their local neighborhoods. In addition, the register renaming problems is solved so that blocks can be fairly compared. This implementation of this invention produces an intermediate output, which is the content of unmatched blocks. It generates a set of edge edit operations for merging the unmatched blocks into S. The combination of the unmatched blocks and the edit operations is the delta. To patch S to produce a reconstructed copy of T, the delta is merged with S. This abstract itself is not intended to limit the scope of this patent. The scope of the present invention is pointed out in the appending claims.

Implementierungen dieser Erfindung stellen eine Technologie für das Erzeugen eines minimalen Dreiecks zwischen mindestens zwei Programm binaries zur Verfügung. Eine Implementierung dieser Erfindung wird ein Quellenprogramm (S) in einem binären Format und ein Zielprogramm (T) in einer binären Form gegeben. Sie konstruiert Steuerflußdiagramme (CFGs) aus jedem. Sie bringt allgemeine Blöcke des CFGs des s und des CFGs t zusammen. Die Blöcke werden gründeten nach ihrem Inhalt und ihren lokalen Nachbarschaften zusammengebracht. Zusätzlich wird das Register, das Probleme umbenennt, gelöst, damit Blöcke ziemlich verglichen werden können. Diese Implementierung dieser Erfindung produziert einen Zwischenausgang, der der Inhalt der nicht angepaßten Blöcke ist. Sie erzeugt einen Satz des Randes redigiert Betriebe für das Mischen der nicht angepaßten Blöcke in S. Die Kombination der nicht angepaßten Blöcke und der redigierenbetriebe ist das Dreieck. Um S auszubessern um eine wieder aufgebaute Kopie von T zu produzieren, wird das Dreieck mit S vermischt. Dieser Auszug selbst soll nicht den Bereich dieses Patents begrenzen. Der Bereich der anwesenden Erfindung wird in den hinzufügenden Ansprüchen unterstrichen.

 
Web www.patentalert.com

< Use of attribution to describe management information

< Systems and methods for using synthetic instructions in a virtual machine

> Associating runtime objects with a set and controlling access to resources as a function thereof

> Method and system for accessing operating system resources

~ 00143