[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: was passiert beim Patchen?



Hallo Peter

> Aber was haben
> die Patchprogramme eigentlich mit der .exe angestellt? Die Laenge aendert
> sich nicht - nichts dazugekommen, nichts weggenommen, aber doch irgendwie
Der Inhalt aendert sich.

> erlaeutern, dass es ein Nichtprogrammierer verstehen kann, ohne dass die
> simple Darstellung den technischen Sachverhalt verfaelscht?

In einer Exe-Datei befinden sich Anweisungen an den Computer. Die
Anweisungen sind in Maschinensprache geschrieben. Fuer uns Menschen sind
diese Zeichen unlesbar, die Maschine jedoch kann diese Anweisungen
verstehen. Die Maschine arbeitet die Anweisungen an sie der Reihe nach
ab. Die Folge fuer uns Anwender ist, dass sich die Maschine dann so
verhaelt, wie wir es von diesem Programm erwarten. Ist die Exe-Datei
beispielsweise ein Editor, haben wir eine Schreibmaschine, und ist die
Exe-Datei xp.exe, so erhalten wir die vertraute Xp-Oberflaeche.

Nun verhalten sich manche Maschinenbefehle auf unterschiedlichen
Prozessoren leider manchmal etwas unterschiedlich. Manche Befehle fuehren
auf besonders Schnellen Rechnern zu Problemen. Sie tun nicht exakt das,
was sie tun sollen. Die Gruende hierfuer sind technisch bedingt. Sie haben
etwas mit Compilern und der Prozessor-Architektur zu tun. Wir muessen
diese Gruende an dieser Stelle auch nicht verstehen. Es reicht zu wissen,
dass einige Maschinenbefehle sich auf einem 286er eben etwas anders
verhalten als auf einem superschnellen Pentium II.

Beim Patchen werden die fehlerhaften Befehle in der Exe-Datei durch
geringfuegig andere Befehle ersetzt, die auf dieser Maschine korrekt
arbeiten. Mit einem sogenannten Hex- oder Diskeditor koennte man diese
Aenderungen auch von Hand in der Exe-Datei vornehmen. Da das aber recht
muesam und extrem fehlertraechtig ist, schreibt man ein kleines Programm,
was das Bereinigen der Exe-Datei zuverlaessig ausfuehrt.

viele Gruesse