PE Header DLL Merkmale

December 29

Das Dateiformat Portable Executable oder PE, Windows ausführbare Dateien und dynamic Link Librarys oder DLLs verwendet. Jede PE-Datei enthält eine Kopfzeile mit Merkmale über die Kompatibilitätseinstellungen Datei- und Hardware. Der PE-Header hat mehrere Eigenschaften, die ihn als portable Dateiformat zu unterscheiden.

Layout

PE-Dateiheader enthält Anweisungen, die das Betriebssystem wie man Teile der Datei in den Arbeitsspeicher laden zu informieren. Dies geschieht durch den Einsatz der dynamischen Linker, wodurch wichtige Entscheidungen darüber, wo welche Art von Speicher. Beispielsweise ist Programmcode Read Only Memory abschnittsweise gesetzt, während Programmdaten in Lese-/ Schreibzugriff Speicherabschnitte gesetzt ist.

Anpassung

Es gibt eine Reihe von Flags, die in den PE-Header festgelegt werden können, die eine Datei auf einen bestimmten Typ von Hardware laufen anpassen können. Beispielsweise können Sie die "Endianess" der Daten festlegen. Dies bezieht sich, wozu eine Daten Byte die meisten signifikante Bit hält, und welches Ende hält das niederwertigste Bit. Im wesentlichen teilt es dem Computer, ob zum Lesen der Daten von rechts-nach-links oder umgekehrt. Diese Hardware-spezifische Details können PE-Dateien angepasst werden, um auf eine Reihe von verschiedenen Rechnerarchitekturen ausführen.

NET-Erweiterungen

Das Microsoft NET Framework erweitert das PE-Format um die NET Common Language Runtime unterstützen. Die NET Common Language Runtime, CLR, ist eine Umgebung, die NET-Anwendungen ausgeführt werden. Wenn vom Betriebssystem eine PE-Datei mit net Extensions gelesen wird, übergibt es dem Rest der Ausführung an der CLR. Die Datei wird dann in der CLR-Umgebung anstatt der traditionellen Betriebssystemumgebung ausgeführt.

Kompatibel mit mehreren Betriebssystemen

Das PE-Header-Format ist mit verschiedenen Betriebssystemen kompatibel. Auf dem Linux-Betriebssystem kann das Programm Wein lesen und Ausführen von PE-Header-Dateien. Auch die Open Source Version von NET Framework Mono, die auf anderen Betriebssystemen als Windows ausgeführt werden kann, verwendet die gleichen PE-Dateien unter Windows und ist damit kompatibel.