Введение

Расширение имени файла

Для Microsoft Windows, OS/2 и DOS, расширение имени файла `exe` указывает на то, что файл является исполняемым – то есть компьютерной программой, содержащей точку входа. Помимо того, что такой файл является исполняемым (прилагательное), он часто называется исполняемым файлом (существительное), которое иногда сокращается как EXE.

Форматы файлов

Формат файла EXE зависит от версии операционной системы. Операционная система не может использовать файл EXE, если он не отформатирован для данной системы. Следует отметить, что некоторые форматы поддерживают несколько операционных систем.

DOS

16-битный DOS MZ исполняемый файл (MZ) — оригинальный формат исполняемых файлов DOS. Эти форматы можно идентифицировать по символам "MZ" в начале файла, закодированным в ASCII. Более поздние форматы могут содержать MZ DOS-заголовок. 16-битный новый исполняемый файл (NE) — представлен с многозадачной MS DOS 4.0 и также использовался в 16-битных OS/2 и Windows, NE можно идентифицировать по символам "NE", закодированным в ASCII.

OS/2

32-битные линейные исполняемые файлы (LX) Появились с OS/2 2.0 и идентифицируются по метке "LX" в кодировке ASCII. Они могут быть запущены только в OS/2 версии 2.0 и выше. Смешанные 16/32-битные линейные исполняемые файлы (LE) Появились с OS/2 2.0 и идентифицируются по метке "LE" в кодировке ASCII. Драйверы VxD в Windows 3.x, OS/2 и Windows 9x также используют формат LE.

Окна

32-битные исполняемые файлы портативного формата (PE) были представлены с Windows NT. Это "жирные" бинарные файлы, состоящие из части, предназначенной для DOS, и части, предназначенной для Windows. Часть, предназначенная для DOS (так называемый DOS stub), является легитимной 16-битной программой DOS. Линкер Microsoft C++ по умолчанию использует минимальный DOS stub, который выводит следующее сообщение: "Эта программа не может быть запущена в режиме DOS".