MZ: Difference between revisions

624 bytes added ,  4 months ago
[unchecked revision][unchecked revision]
(Removed the section. I need to work on this more.)
 
(2 intermediate revisions by the same user not shown)
Line 1:
{{File formats}}
 
The MS-DOS EXE format, also known as MZ after its signature (the initials of Microsoft engineer Mark ZbykowskiZbikowski), was introduced with MSPC-DOS 21.0 (pre-release version 1.0.90 only sported the simple [[COM]] format; note in DOS 1.x the DOS kernel doesn't support EXEs and the EXE loader is in COMMAND.COM; in DOS 2.x and later it was moved into the DOS kernel). It is designed as a relocatable executable running under real mode. As such, only DOS and Windows 9x/Me can use this format natively, but there are several free DOS emulators (e.g., [http://www.dosbox.com/ DOSBox]) that support it and that run under various operating systems (e.g., Linux, Amiga, Windows NT, etc.). Although they can exist on their own, MZ executables are embedded in all [[NE]], [[LE]], and [[PE]] executables, usually as stubs so that when they are ran under DOS, they display:
 
This program cannot be run in MS-DOS mode.
Line 154:
 
With the advent of the [[PE]] executable, Microsoft added items to the MZ header, as defined in WinNT.h
 
(Actually, that's incorrect – this extension was originally added in the New Executable format, which was first released as part of Windows 1.0 in 1985, and the multitasking MS-DOS 4.0 in 1986. The "PE header start" is called "e_lfanew" in Microsoft's headers, since it was originally the pointer to the NE header, although later was also used for LE, LX and PE; in principle it can be used for *any* executable format which is defined as an extension of MZ.)
 
{| {{wikitable}}
Anonymous user