aspose.info
RU

Что такое исполняемый EXE-файл?

Обновлено

.EXE вариант №

Слово EXE является сокращением от исполняемый. Файл .exe — это программа, которую можно запустить в операционной системе Microsoft Windows. Разработчики приложений чаще всего публикуют свои программы для ОС Windows в исполняемом формате в виде исполняемых файлов. Это стандартный формат файла для запуска приложений в Windows. Setup.exe, Install.exe и cmd.exe — это некоторые распространенные и хорошо знакомые имена EXE-файлов.

Формат EXE-файла

Компиляторы MS-DOS были представлены с моделями памяти, имеющими ограничение памяти 64 КБ. Общая концепция состоит в том, чтобы установить разные сегментные регистры в ЦП x86 (CS, DS, ES, SS) так, чтобы они указывали на разные или одни и те же сегменты, тем самым обеспечивая различные степени доступа к памяти. Некоторые конкретные модели памяти были:

  • Tiny: все обращения к памяти являются 16-битными (сегментные регистры не изменились). Создает файл .COM вместо файла .EXE.
  • Small: все обращения к памяти являются 16-битными (сегментные регистры не изменились).
  • Compact: адреса данных включают как сегмент, так и смещение, перезагружая регистры DS или ES при доступе и допуская до 1М данных. Доступ к коду не изменяет регистр CS, что позволяет использовать 64 КБ кода.
  • Средний: кодовые адреса включают адрес сегмента, перезагружают CS при доступе и позволяют использовать до 1 М кода. При доступе к данным регистры DS и ES не изменяются, что позволяет хранить 64 КБ данных.
  • Большой: адреса кода и данных являются парами (сегмент, смещение), всегда перезагружая адреса сегментов. Весь объем памяти объемом 1 Мбайт доступен как для кода, так и для данных.
  • Огромный: То же, что и большая модель, но компилятор генерирует дополнительные арифметические операции, позволяющие получить доступ к массивам размером более 64 КБ.

Разработчики должны решить, какую модель следует выбрать при создании exe-файла.

Переносимый формат файла EXE

Формат переносимого исполняемого файла (PE) содержит ряд информационных заголовков, ниже приведен список заголовков:

  • Заголовок DOS: заголовок MS-DOS обеспечивает либо обратную совместимость, либо корректное отклонение новых типов файлов.
  • Заголовок PE: по смещению 60 (0x3C) от начала заголовка DOS находится указатель на заголовок PE-файла.
  • Заголовок COFF: Заголовок COFF содержит некоторую информацию, полезную для исполняемого файла, и некоторую информацию, более полезную для объектного файла.
  • Необязательный заголовок PE: Необязательный заголовок PE находится непосредственно после заголовка COFF, а в некоторых источниках даже показано, что два заголовка являются частью одной и той же структуры.
  • Таблица разделов: Сразу после дополнительного заголовка PE мы находим таблицу разделов. Таблица разделов состоит из массива структур IMAGE_SECTION_HEADER.
  • Mappable Sections: можно сэкономить место в памяти, сопоставив код библиотеки с несколькими процессами.

Можете ли вы запустить EXE-файл на Mac?

Exe-файлы не используются в качестве исполняемых файлов в Mac OS. Однако, если вы хотите запустить исполняемый файл в Mac OS, можно использовать следующие методы.

  1. Wine. Wine — идеальное решение для тех, кто хочет использовать свои приложения для ПК в системах Mac. Это аббревиатура, расшифровывающаяся как «Wine Is Not A Emulator». Wine создает ту же среду каталогов, что и Microsoft, поэтому вы можете запускать приложения Windows, используя его.
  2. Виртуальные машины. Создайте виртуальную машину Windows с помощью Parallel Desktop или VM Virtual Box и запустите свое приложение внутри виртуальной машины.
  3. Boot Camp. Установка и настройка Windows Boot Camp в Mac OS позволяет запускать ОС Windows на компьютере Mac.

использованная литература

См. также