Portable Executable beschreibt ein Binärformat ausführbarer Programme, sogenannte PE-Dateien. Es ist das Dateiformat, das bei Win32- und Win64-Systemen für ausführbare Dateien verwendet wird. Außerdem ist es das Format für ausführbare Dateien in EFI-Umgebungen. Es basiert auf dem COFF-Binärformat.[1]
Mögliche Dateiendungen sind zum Beispiel:
Außer der Erweiterung .exe, die eine Datei als eigenständiges Programm identifiziert, ist das PE-Format nicht an eine Erweiterung gebunden. Programmiertechnisch kann das System dazu gebracht werden, Code in jeder im PE-Format vorliegenden Datei auszuführen. DLL-Dateien können beispielsweise Funktionen exportieren, die von anderen Programmen aufgerufen werden. Bei DRV- und SYS-Dateien handelt es sich in der Regel um Gerätetreiber, welche von Windows verwendet werden, um die Hardware anzusteuern.
Neben Windows verwendet auch ReactOS das PE-Dateiformat und ermöglicht so (zurzeit nur sehr beschränkt) die Ausführung von Windows-Programmen. Frühe Versionen von BeOS sowie SkyOS verwendeten ebenfalls das PE-Dateiformat für ihre ausführbaren Programme. Da sie aber eine andere Binärschnittstelle (ABI) verwendeten, waren sie nicht binärkompatibel zu Windows und beabsichtigten dies auch gar nicht. SkyOS verwendet inzwischen das verbreitete ELF-Format, welches zuvor mit dem Betriebssystem Linux populär wurde, da es dort das Standardformat für Binärprogramme ist.
Windows-Dateien im PE-Format lassen sich unter Linux mit Hilfe von WINE und unter DOS teilweise mit Hilfe des HX DOS Extenders ausführen.