MZ (формат)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
MZ
Расширение

.exe .dll

Сигнатура

MZ или ZM

Разработчик

Microsoft

Тип формата

исполнимый модуль

Расширен из

.COM

Развит в

New Executable
Linear Executable
Portable Executable

MZ — стандартный формат 16-битных исполнимых файлов с расширением .EXE для DOS. Назван так по сигнатуре — ASCII-символам MZ (4D 5A) в первых двух байтах. Эта сигнатура — инициалы Марка Збиковски, одного из создателей MS-DOS.[1]

Формат был разработан как замена устаревшему формату .COM. Исполнимые файлы MZ включают метаданные, могут иметь размер больше 64 кбайт и использовать несколько сегментов памяти различного типа (кода, данных и стека), точка входа в программу также может быть в любом месте (в .COM — по фиксированному смещению 0x100). Метод загрузки исполнимого файла определяется по сигнатуре: при ее наличии обрабатывается MZ-заголовок, при отсутствии файл запускается как .COM — независимо от расширения файла (например, в последних версиях MS-DOS интерпретатор командной строки COMMAND.COM на самом деле является .EXE-файлом).

Исполняемые файлы более поздних форматов для Windows начинаются с MZ-заглушки. Обычно заглушка, добавляемая компиляторами, выводит сообщение наподобие «This program cannot be run in DOS mode» («Эту программу невозможно запустить в режиме DOS»).

В старых компоновщиках для DOS могла применяться сигнатура ZM, которая также распознается MS-DOS и рядом совместимых ОС.[2]

Примечания[править | править вики-текст]

  1. Natt Pietrek. An In-Depth Look into the Win32 Portable Executable File Format (англ.). MSDN Magazine (февраль 2002). Проверено 11 декабря 2009. Архивировано из первоисточника 25 марта 2012.
  2. Table 1593 - Values for the executable types understood by various environments. Ralf Brown’s Interrupt List (версия 61 от 17.07.2000). Проверено 16 декабря 2012.

Ссылки[править | править вики-текст]